Firebase Pros and Cons

This lesson is also available as a written article on my site:

Firebase Alternatives for Flutter Development

Fireship has a great YouTube video about 5 Firebase alternatives:

These alternatives are:

In addition, these options are becoming very popular for Flutter app development. 👇


Serverpod is becoming one of the most prominent solutions for server-side Dart.

Its features include:

  • Code generation: automatically generate your protocol and client-side code by analyzing your server. Calling a remote endpoint is as easy as making a local method call.
  • World-class logging, making it easier to pinpoint exceptions with an easy-to-use interface.
  • Built-in caching that helps you cut down on your database costs using a high-performance distributed cache.
  • Revolutionary ORM, making it easy to use native Dart types and null-safety when writing queries.

For all the details, check the official site:

Dart Frog

Dart Frog is a minimalistic backend framework for Dart, developed by Very Good Ventures.


  • Built for Speed: create new endpoints in just a few lines and iterate blazingly fast with hot reload.
  • Lightweight: minimize ramp-up time with our simple core and small API surface.
  • Powered by Dart: tap into the powerful Dart ecosystem with Shelf, DevTools, testing, and more.

Official site:

Note about offline mode

By default, Cloud Firestore caches all data on the client, and this is great for offline mode.

The maximum cache size is configurable (default is 40 MB).

But if you exceed the maximum cache size, the data will be garbage-collected.

More details here:

Bottom-line: Cloud Firestore supports offline mode but is not offline-first. For a truly offline-first solution, consider local data persistence packages like Isar, Sembast, Realm, ObjectBox, Drift, etc.

More info here:

Questions? Let's chat