Skip to main content

Firebase

Firebase app backend development: sign-in, Firestore database and push notifications for mobile and web apps, plus when to choose something else.

Where we use it

Firebase is Google's set of backend services for mobile and web apps: user sign-in, a real-time document database (Firestore), file storage, push notifications, analytics and serverless functions. It lets a small team ship a working app quickly without building and hosting its own backend. We typically use it for push notifications and sign-in in mobile apps, and as the full backend for MVPs and apps with simple data needs.

Strengths

  • All-in-one platform for backend services.
  • Real-time database capabilities with Firestore.
  • Easy to use authentication services.
  • Scalable hosting and serverless functions.

Trade-offs

  • Vendor lock-in with Google Cloud Platform.
  • Firestore queries can be less flexible than SQL.
  • Pricing can become complex as usage scales.
  • Poorly suited to reporting-heavy or accounting data.

Questions

For an MVP, a consumer app with simple data, or as a component such as notifications, sign-in or analytics inside a larger system, yes. For systems with complex relationships, financial records or heavy reporting, such as ERP, inventory or accounting, a relational database like PostgreSQL behind your own API is a better foundation.

Firestore data lives in the Google Cloud location chosen when the database is created, and that location cannot be changed afterwards. Check Google's current list of locations. If your data must stay in the UAE and no suitable location is offered, keep that data in a UAE-hosted database and use Firebase only for non-sensitive services such as push notifications.

Firebase is faster to start and needs no server management. A custom backend, for example Node.js with PostgreSQL, gives you full control over data structure, reporting, hosting location and cost at scale. A common middle path is a custom backend with Firebase used only for notifications and analytics.

There is a no-cost tier with usage limits and a pay-as-you-go plan. Costs follow reads, writes, storage and function calls, so a poorly designed data model can become expensive as usage grows. We design queries with cost in mind and set budget alerts.

Yes, but it takes work. Firestore's document model and security rules do not map directly to a relational database, so migrating means restructuring data and rewriting access logic. If you expect to outgrow it, starting with a portable backend can be cheaper overall.

Firestore is the newer, more scalable database with richer querying, while the Realtime Database is a simpler, JSON-based store optimised for real-time synchronisation. Firestore is the usual choice for new projects.

When we choose Firebase

Firebase earns its place in three situations: push notifications and analytics in almost any mobile app; sign-in for apps that need social or phone-number login without building it from scratch; and the complete backend for an MVP or a simple app where speed to market matters more than complex reporting.

When we don't

Financial and inventory records
Ledgers, invoices and stock need transactions, strict relationships and flexible reporting, which a relational database handles far better.
Strict data residency
If data must stay in the UAE and Firebase cannot offer a suitable location, that data belongs in a UAE-hosted database.
Heavy reporting and BI
Management reports across many records are awkward and can be costly in Firestore; a SQL database connects directly to Power BI and similar tools.

What it costs to run

Small apps often stay within the no-cost tier for a long time. As usage grows, cost depends heavily on how the data is structured: a screen that reads hundreds of documents every time it opens is far more expensive than one that reads a summary. Designing the data model around how the app is used, and monitoring usage after launch, keeps the bill predictable.

How Firebase fits a Zellarc build

Most often Firebase sits alongside our own backend: a Flutter app uses Firebase Cloud Messaging for notifications, while orders, customers and finances live in PostgreSQL behind a Node.js or Laravel API. For MVPs we may use Firebase for everything and plan the move to a custom backend once the product proves itself.

Let’s scope your project.

Tell us what you are building. We reply within one business day.