Appwrite vs Firebase for Flutter: the honest comparison (features, costs, ops)

Appwrite vs Firebase for Flutter: the honest comparison (features, costs, ops)

At the start of 2026, I was at Flutter Lille, where I saw a talk by Jean-Baptiste Dujardin on Appwrite as a backend for a Flutter app. It made me want to address the topic properly: Is Appwrite a credible alternative to Firebase in 2026? Spoiler: yes… but not for the same reasons.

The goal here is not to "sell" a technology. It's to help you choose based on your product, your team, and your stance on self-hosting.

Comparison "feature by feature"

The idea: separate the core backend (what both provide) from the product pack (where Firebase has a clear lead).

1) Core backend (Auth / DB / Storage / Realtime / Functions / Messaging)

FeatureFirebaseAppwriteNotes for production
AuthEmail/password, phone, anonymous, "ready" providers (Google, Facebook, Apple, Twitter/X, GitHub, etc.) (Firebase)Email/password, SMS, Magic URL, Email OTP, OAuth2 (30+), anonymous, JWT, custom token, MFA (appwrite.io)Enterprise SSO (SAML/OIDC) on the Firebase side requires upgrading to "Identity Platform". (Firebase)
DBCloud Firestore (NoSQL, realtime, offline) (Firebase)Appwrite Databases (collections/documents + permissions) (appwrite.io)The data model is not identical: think "queries + indexes + rules" before migrating. (Google Cloud Documentation)
RealtimeListeners Firestore / sync (Firebase)Realtime via WebSocket (channels/events) (appwrite.io)Appwrite: subscription changes can recreate the connection → to be handled on the state management side. (appwrite.io)
StorageCloud Storage for Firebase (appwrite.io)Storage + previews/transformations images (Reddit)On the self-host side: storage backend + backups = your responsibility. (appwrite.io)
FunctionsCloud Functions (managed infra) (Stack Overflow)Functions with deployments + activation/rollback (appwrite.io)Be aware of the differences between Appwrite Cloud and self-host (runtimes/quotas). (appwrite.io)
MessagingFCM (push) (Firebase)Push + Email + SMS unified (appwrite.io)Firebase covers push very well; Appwrite aims at the "communication suite". (Firebase)

2) Product feature / growth

Feature "product"FirebaseAppwrite
AnalyticsGoogle Analytics for Firebase (Firebase)Needs third-party tool
Crash reportingCrashlytics (Firebase)Needs third-party tool
Feature flags / rolloutsRemote Config (feature flags + rollouts) (Firebase)Needs third-party tool
A/B TestingFirebase A/B Testing (Firebase)Needs third-party tool
HostingFirebase Hosting (CDN, SSL, pairing Functions/Cloud Run) (Firebase)Appwrite Sites (web hosting) (appwrite.io)

If your app is B2C and you live at the pace of experiments / rollouts / crash fixes, Firebase remains a very hard-to-beat "product monolith".

Auth

Firebase Auth: fast, integrated, and… very "Google friendly"

Firebase Auth offers the classics: email/password, phone (SMS), anonymous, custom auth, and federated providers.

On the providers side, the Firebase docs list flows/entries for Google, Apple, Facebook, Twitter/X, GitHub, and others depending on platforms (e.g., Play Games on Android).

Important point if you do B2B / enterprise: SAML and OIDC exist, but via Firebase Authentication with Identity Platform (upgrade).

Appwrite Auth: more "platform" oriented, more passwordless options

Appwrite highlights: Magic URL, Email OTP, OAuth2 (30+ providers), MFA, JWT, custom token, etc.

If you want to allow a user to sign in via multiple methods (Google + email/password, for example), Appwrite handles "linking" via the concept of Identities.

My take :

  • Firebase is excellent for shipping fast, especially if your auth is "standard mobile".
  • Appwrite becomes very attractive if you want to push passwordless and keep a platform logic (identities + permissions) without reinventing the wheel.

Data

Firestore has a very concrete strength: offline persistence (cache + sync + last write wins). On the FlutterFire side, you can even configure cache behavior (size, garbage collection).

Appwrite can be realtime, but the "offline-first" approach is generally more "to be built" on the client side (depending on your use-case and sync strategy).

If your app must work in the subway, on a construction site, or in a dead zone: put this point at the top of your checklist.

DX & workflow : local, CI/CD, environments

Firebase : the Emulator Suite is a weapon

The Firebase Local Emulator Suite allows you to test Firestore/Auth/Storage/Functions/etc locally, with a dedicated UI and possible CI integration.

Appwrite : "infra in Docker" + CLI to version the platform

Appwrite is designed to run anywhere Docker runs. And on the workflow side, the CLI allows pull/push of resources (e.g., DB schemas/tables) to sync dev → preprod → prod.

In short: Firebase gives you a great local sandbox. Appwrite gives you a platform that is more naturally "versionable".

Security : Rules vs Permissions (and common pitfalls)

Firebase : Security Rules (powerful, but earned)

Firebase Security Rules secure Firestore/Realtime DB/Storage, with an expressive syntax and conditions. The trap: it's easy to make a rule too permissive, or a rule that is "just enough" and breaks in production at the first edge case.

Appwrite : "whitelist" permissions at the resource level

Appwrite works with a very direct permissions system: you authorize user / team / role to read/write/delete a resource. It's often easier to reason about… but you can still shoot yourself in the foot with a misplaced any.

Costs

Firebase : pay-as-you-go, so "watch the bill"

Firebase provides a Blaze calculator to estimate costs. And importantly: budget alerts do not stop billing, they alert (important nuance).

Appwrite : Cloud "by plan" + self-host "by infra + ops"

Appwrite Cloud displays its plans and explains the overage logic (additional charges, budget cap). They have also evolved pricing (e.g., moving to a "per project" model, bandwidth adjustments).

Simple rule:

  • Firebase charges you finely for usage (and it can rise quickly if you don't manage it).
  • Appwrite self-host makes you pay in "ops": VPS, storage, backups, monitoring… and your time.

Self-host Appwrite

If you self-host Appwrite, you regain control… and responsibility.

  • Installation: Appwrite targets a Docker install, with fairly standard prerequisites (2 CPU / 4GB RAM / Docker Compose).
  • Updates: there is an "updates & migrations" doc and a migration tool.
  • Backups: that's your job (with RPO/RTO recommendations + restore tests).

The talk insisted that "it is maintainable" (Docker + migrations). I mostly agree… as long as you take backup/restore seriously from day one.

Migration Firebase → Appwrite

Before migrating, I recommend a simple checklist:

  1. Auth: providers used, anonymous account, linking, SMS, possible SSO.
  2. Data: structure, indexes, critical queries, expected "offline behavior".
  3. Security: Firebase rules vs Appwrite permissions (different mental model).
  4. Functions: triggers, secrets, rollback, deployment workflow.
  5. Product pack: analytics, crash reporting, feature flags, A/B tests: what will you replace them with?

Decision matrix

I would choose Firebase if…

  • I want a complete product pack (analytics/crash/flags/AB/push/hosting) without assembling 6 services.
  • I prioritize time-to-market and infra peace of mind.
  • offline-first is central (Firestore does it very well).

I would consider Appwrite if…

  • I want open-source + self-host (or Cloud) for control/sovereignty/cost reasons.
  • I want an "all-in-one" backend platform for core features, without heavy lock-in.
  • I am ready to take backups + upgrades + monitoring seriously.

Conclusion

Firebase and Appwrite are not exactly playing the same match.

  • Firebase wins when you want to ship + measure + iterate with a very mature product tooling.
  • Appwrite wins when you want to regain control over your backend, without falling back to "I build my own BaaS".

Tags

  • flutter

  • iOS

  • android

  • appwrite

  • firebase

  • backend

  • BaaS

  • comparison

This article was posted on

Comments

Loading...

Appwrite vs Firebase for Flutter: the honest comparison (features, costs, ops) | DEMILY Clément