AWLabs

Supabase vs Firebase for Australian apps: hosting, cost and lock in

Last updated Published by AWLabs How we write

The short answer

Supabase is a managed PostgreSQL platform; Firebase is built around Firestore, a document database. Both can store your main data in Sydney, but they differ on what else stays onshore: Supabase hosts the database, Auth and Storage in the project's region, while Firebase Authentication runs only from US data centres. Choose Supabase for relational business data, SQL reporting and an easy exit. Choose Firebase for mobile apps that need strong offline sync and Google's wider app tooling.

Key takeaways

  • The real difference is the data model: Supabase is relational Postgres, Firestore stores JSON documents. Most business apps with customers, orders and invoices fit relational better.
  • Supabase offers Sydney (ap-southeast-2) as a specific region. Firestore offers Sydney (australia-southeast1) and Melbourne (australia-southeast2).
  • Firebase Authentication processes data only in the United States, according to Google's Firebase privacy page. Supabase Auth runs in your project's region.
  • Firebase charges per document read and write; Supabase charges mostly for plan, compute size and active users. At high user counts, auth is the biggest line item on both.
  • Leaving Supabase means moving a standard Postgres database. Leaving Firestore usually means reshaping data and rewriting queries and security rules.

Relational or document: what is the core difference?

Supabase gives you a PostgreSQL database with tables, joins and SQL; Firebase gives you Firestore, which stores JSON documents in collections. Almost every other difference, from pricing to reporting to how hard it is to leave, follows from that.

In Postgres, a customer row links to many order rows, and an invoice links to both. You ask questions with SQL, and the database enforces that an order can’t point at a customer who doesn’t exist. In Firestore, you usually copy the data each screen needs into the document that screen reads. That makes simple reads very fast and cheap to write code for, but it moves the job of keeping copies consistent into your app.

A rough rule we use: if the product’s core is records that relate to each other (bookings, jobs, quotes, stock, invoices) and someone will want reports across them, relational wins. If the core is a stream of user content, chat or device state read mostly one document at a time, Firestore is a comfortable fit.

SupabaseFirebase
Main databasePostgreSQL (relational, SQL)Firestore (document, NoSQL); SQL Connect adds Cloud SQL for PostgreSQL
QueriesFull SQL, joins, views, functionsDocument and collection queries; joins done in the app
Access controlPostgres row level security policiesFirebase security rules
RealtimeRealtime subscriptions on table changesRealtime listeners are central to the SDKs
Offline on mobileNot built in; needs an added sync layerOffline persistence on by default for Android and Apple
FunctionsEdge Functions (Deno)Cloud Functions for Firebase
Open sourceYes, can be self hostedNo

Where does each platform host data in Australia?

At the time of writing, Supabase offers Sydney (ap-southeast-2) as a specific region, and Firestore offers both Sydney (australia-southeast1) and Melbourne (australia-southeast2). Both let you pick the location when you create the database, and neither lets you change it afterwards without a migration.

Two details matter. First, Supabase’s general regions (Americas, Europe, APAC) place your project in whichever AWS region in that area has capacity, and the APAC grouping points to Singapore. If your data must stay in Australia, pick Sydney explicitly. Second, Firebase has no default location for Firestore or Storage, so someone has to choose, but Cloud Functions for Firebase fall back to us-central1 in Iowa if no region is set. We see that default slip into production more often than any other residency mistake.

Latency follows location. A Sydney database serves users in Sydney and Melbourne quickly; one in Singapore or Iowa adds a noticeable delay to every request, which compounds on screens that make several calls.

Does everything stay onshore?

No, and the gaps are different on each platform. Choosing an Australian database region is necessary, but it doesn’t cover every service that touches personal information.

ServiceSupabase (Sydney project)Firebase (Australian locations chosen)
Main databaseSydneySydney or Melbourne
AuthenticationIn the project’s region, per Supabase’s security pageUnited States only, per Firebase’s privacy page
File storageIn the project’s regionBucket location you choose
FunctionsRun in the region closest to the caller unless you set Sydney with the x-region header or client optionThe region you set per function; us-central1 if unset
BackupsDaily on paid plans: 7 days on Pro, 14 on TeamBackup schedules and point in time recovery are not automatic; you create them per database
AI featuresDepends on the model provider you callFirebase AI Logic with the Gemini Developer API is always global

Google’s Firebase privacy page states that Firebase Authentication runs only from US data centres and processes data exclusively in the United States. That covers email addresses, phone numbers, password data, user agents and IP addresses. For many apps that’s acceptable once disclosed in the privacy policy. For health, financial or government work where personal information has to stay onshore, it can rule out Firebase Auth, which pushes you to an alternative identity provider.

On Supabase, Edge Functions run near the user by default. That suits Australian users anyway, but a function invoked by an overseas user or webhook could run offshore unless you pin it to ap-southeast-2. Logs and metrics on either platform are operated by the vendor; check where they sit before promising a customer that nothing leaves Australia. Our guide to data residency vs data sovereignty explains why onshore storage alone doesn’t settle the legal question.

What does each cost at 1,000, 50,000 and 500,000 users?

At small scale both cost little; at large scale authentication and database load dominate, and the platforms bill them differently. Prices below come from each vendor’s pricing page at the time of writing and are in USD, ex GST.

The assumptions: each user is active monthly, reads about 1,000 documents or rows a month and makes 50 writes. Firestore is priced at the Sydney rates of US$0.038 per 100,000 reads and US$0.115 per 100,000 writes, after the daily free quota. Supabase is on the Pro plan (US$25 a month, including US$10 of compute credit), with compute sized up as load grows.

Monthly active usersSupabase Pro (Sydney)Firebase Blaze (Sydney)
1,000About US$25: plan with Micro compute covered by the creditAbout US$0: inside free quotas for auth and Firestore
50,000About US$75: plan plus Medium compute (US$60 less the US$10 credit)About US$21: auth free up to 50,000 MAU; roughly 48.5 million billable reads and 1.9 million writes
500,000About US$1,425: plan, Large compute (US$110 less credit) and 400,000 MAU above the included 100,000 at US$0.00325About US$2,330: US$2,115 for Identity Platform MAU tiers plus about US$217 for Firestore operations

Treat these as illustrations, not quotes. Storage, file egress, phone SMS verification, functions and support plans are left out, and real read patterns vary by a factor of ten between apps. The useful lessons are structural. Firebase’s bill moves with how often your screens read data, so a badly designed feed can multiply it. Supabase’s bill moves with database size and active users, and a slow query shows up as needing a bigger server rather than a bigger invoice line. Supabase’s Free plan pauses projects after a week of inactivity, so it isn’t for production.

How do the security models compare?

Supabase uses Postgres row level security; Firebase uses its own security rules language. Both work, and both fail the same way: rules left open.

With Supabase, the browser or app talks to the database through an API, so every exposed table needs a row level security policy saying who can read and change which rows. The upside is that the rules live in the database and apply to every client, including reports and admin tools. With Firebase, rules sit in front of Firestore and Storage, written in Google’s rules syntax, and are tested with the Firebase emulator.

On vendor assurance, Supabase states it holds ISO 27001 certification and lists SOC 2 on its Team plan, with a HIPAA business associate agreement as a paid add on. Firebase services inherit Google Cloud’s security programme. Neither attestation makes your app secure; the rules you write do. This is the single most common problem we see when reviewing apps generated with AI coding tools, covered in making an AI built app production ready.

Which handles mobile and offline better?

Firebase, clearly. Firestore’s Android and Apple SDKs cache the data the app is using and sync changes when the device reconnects, with offline persistence on by default. Conflicts resolve as last write wins.

Supabase has mobile client libraries, including Flutter and Swift, but no built in offline sync. Field apps on Supabase usually add a local database and a sync engine. That is a sound pattern and gives you more control over conflicts, but it is extra work. If your users work in sheds, basements or regional areas without signal, read our guide to offline first field apps before choosing.

How hard is it to leave each one?

Leaving Supabase is a database migration; leaving Firebase is usually a partial rebuild.

A Supabase project is a Postgres database underneath, so you can dump it and restore it on Amazon RDS, Azure Database for PostgreSQL or Google Cloud SQL with standard tools. Supabase is also open source and can be self hosted, though Supabase notes that self hosting drops managed backups, point in time recovery, branching and some platform features. Auth, storage paths and Edge Functions need rework wherever you move.

Firestore has no standard equivalent elsewhere. Moving off it means designing tables from documents, rewriting every query, translating rules and migrating users. That isn’t a reason to avoid Firebase, only a cost to weigh if the product could grow into something with heavy reporting.

Which should you pick for your product?

Match the platform to the shape of your data and your residency needs.

  1. Business system, portal or SaaS with relational data and reporting: Supabase in Sydney.
  2. Consumer mobile app, chat or social feed with offline use and push messaging: Firebase, with Firestore in Sydney or Melbourne and every function region set.
  3. Personal information that must stay onshore, including sign in data: Supabase in Sydney, or Firebase data with a different identity provider.
  4. Government, defence or highly regulated work: consider neither as the core; a managed Postgres in your own AWS, Azure or Google Cloud account gives you the controls and assessments those buyers ask about.
  5. A quick prototype to test demand: either; pick the one your developer knows and set the region on day one.

How AWLabs approaches this

We build on both, and on plain Postgres in the client’s own cloud account, so the recommendation comes from the product, not a preference. We use Australian regions where data needs to stay onshore, as agreed in the Schedule of Work, and we write down which services sit outside that boundary, such as authentication or logs. Senior engineers lead every build, including the security rules and policy tests. See backend development, our startup MVP approach, or how to choose a tech stack for the wider decision.

Frequently asked questions

Is Supabase cheaper than Firebase?

It depends on how your app reads data. Firebase bills every document read and write, so chatty apps with large feeds can grow costly. Supabase bills mostly for its plan, compute size and active users above the included amount, so cost tracks the size of the database server rather than the number of queries. At 500,000 monthly active users, our worked example puts auth alone at about US$1,300 a month on Supabase and US$2,115 on Firebase with Identity Platform.

Can I host Supabase in Australia?

Yes. At the time of writing, Supabase lists Oceania (Sydney) ap-southeast-2 as a specific region. Choose the specific region, not a general region grouping, because general regions place your project in any available AWS region within a broad area. Supabase lists no Melbourne region.

Does Firebase keep data in Australia?

Partly. You can place Firestore in Sydney or Melbourne, and set Cloud Storage buckets and Cloud Functions to Australian regions. Firebase Authentication, however, runs only from US data centres, so user email addresses, phone numbers and IP addresses used for sign in are processed in the United States.

Is Supabase as secure as Firebase?

Both are secure when configured properly and both are easy to misconfigure. Supabase relies on Postgres row level security policies on every exposed table. Firebase relies on security rules for Firestore and Storage. The most common failure on either is shipping with rules or policies left open, which is why we test them before launch.

Can I move from Firebase to Supabase later?

Yes, but plan for real work. Documents need to be mapped into tables, queries rewritten in SQL, security rules translated into row level security policies, and users migrated with their password hashes. A small app can move in weeks; a large one needs a staged migration.

Should I use Supabase or Firebase for an MVP?

Either will get an MVP live quickly. Pick Supabase if the product is mostly structured business data or you expect reporting needs, and Firebase if it is a mobile first app where offline use and push messaging matter most. The bigger risk for an MVP is skipping security rules and backups, not the platform.

Sources

  1. Available regions, Supabase
  2. Security at Supabase (data residency, backups, HIPAA, ISO 27001), Supabase
  3. Supabase pricing, Supabase
  4. Regional Invocations (Edge Functions), Supabase
  5. Self-Hosting, Supabase
  6. Privacy and Security in Firebase, Google Firebase
  7. Select locations for your project, Google Firebase
  8. Firebase pricing, Google Firebase
  9. Firestore pricing (pricing by location), Google Cloud
  10. Identity Platform pricing, Google Cloud
  11. Backups and point in time recovery (Firestore), Google Firebase
  12. Access data offline (Firestore), Google Firebase
Start with a conversation

Tell us what you need built.
We'll tell you straight if we're the right fit.

Book a call, and we'll show you how we would approach it.

Start with a short Development Consult
Audit fee credited to your build
Response within 1 business day
Mutual NDA sent before you share your idea