Where data lives
Backend platforms
A backend platform gives you the server side of an app ready-made: a database, sign-in, file storage, live updates and a place to run server code, all reached through one SDK. Instead of building and running those pieces yourself, you configure them in a dashboard and pay more as the app grows.
Supabase, Firebase, Appwrite and PocketBase bundle everything. Hosted databases such as Neon, Turso, PlanetScale, MongoDB Atlas and Upstash run just the database for you and leave the rest of the backend to your own code. Either way the trade is speed now against some lock-in and a monthly bill later.
12 terms · 3 comparisons · prices checked September 2026
12 terms, click any to open
The idea
Backend as a service (BaaS)
ConceptA hosted, ready-made backend: database, sign-in, file storage and server functions that an app uses through an SDK instead of a server you build yourself.
With a BaaS the app talks to the platform directly: the SDK signs the user in, reads and writes data and uploads files, and the platform enforces who may do what through security rules or database policies. Logic that must stay secret, such as charging a card with a private key, runs in the platform's serverless functions.
Firebase popularised the idea for mobile apps; Supabase, Appwrite and PocketBase are open-source alternatives. The appeal is speed and no servers to maintain. The costs are lock-in to the platform's APIs, bills that follow usage, and security that depends entirely on writing the rules correctly, because every client holds a public key.
Related
Also called: BaaS, MBaaS, backend platform
All-in-one platforms
Supabase
PlatformFree tierAn open-source backend platform built on PostgreSQL that bundles a database, sign-in, file storage, live updates and server functions, with an API generated from your tables.
Each Supabase project is a full PostgreSQL database with services around it: Auth for sign-in, Storage for files, Realtime for live updates, Edge Functions for server code, and an automatic REST API through PostgREST (plus GraphQL). Client libraries for JavaScript, Flutter, Swift, Kotlin and Python call these directly, and a dashboard, a CLI and a local stack handle migrations and development.
Because apps query tables with a public key, row level security policies are what keep data private: a table without them is open to anyone. Being plain Postgres brings SQL, extensions such as pgvector and pg_cron, and a realistic exit, since the database can be dumped and moved anywhere. The whole stack can be self-hosted, although most teams use the hosted service.
Pros
- A real relational database with SQL, joins and transactions
- Auth, storage, realtime and functions in one place
- Open source and standard Postgres, so leaving is realistic
- Free plan for small projects, then a flat monthly plan plus usage
- Extensions such as pgvector for AI search
Cons
- Security depends on writing correct row level security policies
- Free projects pause after a week without activity
- No offline sync built into the client libraries
- Self-hosting the full stack takes real effort
Pick it when
- Web and mobile apps with users, orders or other relational data
- Small teams that want a backend without running servers
- You want SQL and an exit path rather than a proprietary database
Skip it when
- Offline-first mobile apps that need built-in sync, where Firestore fits better
- You need full control over every server setting
What it costs · Free tier
Free plan for small projects (two active projects, 500 MB database, pauses after a week idle); Pro from $25 a month (about ₹2,100) plus usage.
Supabase pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Supabase Cloud, supabase-js
Firebase
PlatformFree tierGoogle's app development platform that bundles a realtime database, sign-in, file storage, hosting, server functions and push notifications, used most for mobile apps.
Firebase started as a realtime database startup and was bought by Google in 2014. Today it combines Cloud Firestore and the older Realtime Database, Authentication, Cloud Storage, Cloud Functions (Node.js or Python), Hosting and App Hosting, Cloud Messaging for push notifications, plus Crashlytics, Analytics, Remote Config and App Check. SQL Connect (formerly Data Connect) adds a managed PostgreSQL option.
Apps use the Firebase SDKs directly, and security rules decide who may read or write each document or file. Its strengths are mobile SDKs with offline support and instant updates. The costs are proprietary APIs that are hard to leave, per-operation billing that grows with reads, and some services (Cloud Functions, Cloud Storage) that need the pay-as-you-go Blaze plan.
Pros
- Mature mobile SDKs with offline support and realtime sync
- Many services under one console, including free push notifications
- Scales automatically with no servers to manage
- Local Emulator Suite for development and testing
Cons
- Proprietary, so moving away means rewriting data access
- Per-read billing can grow quickly with traffic
- Firestore queries are limited: no joins and restricted filters
- Functions and Cloud Storage require a billing account
Pick it when
- Mobile apps that need offline support, push and live updates
- Prototypes and small teams already using Google Cloud
Skip it when
- Relational data and reporting, where SQL fits better
- You want to be able to self-host or switch providers easily
What it costs · Free tier
Spark plan is free with daily quotas (for example 50,000 Firestore reads a day). Blaze is pay as you go, keeps those free quotas, and is required for Cloud Functions and Cloud Storage.
Firebase pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Google Firebase, Firebase SDK
Appwrite
PlatformFree tierAn open-source backend platform with a database, sign-in, file storage, functions, messaging and web hosting, which you can use as a cloud service or run on your own server.
Appwrite puts the usual backend pieces behind one API, with SDKs for web, Flutter, Android, Apple platforms and React Native: Auth (email, phone, magic links, OAuth and teams), Databases with permissions on tables and rows, Storage with image resizing, Functions in many languages (Node.js, Python, PHP, Dart, Go and more), Messaging for email, SMS and push, Realtime subscriptions, and Sites for hosting frontends.
The self-hosted version runs as a set of Docker containers on any server, and Appwrite Cloud is the managed service from the same company, which has added native PostgreSQL and MySQL databases. Unlike Supabase, its default database sits behind Appwrite's own API rather than open SQL, which is simpler for beginners and less flexible for complex queries.
Pros
- Open source, with the same features self-hosted or in the cloud
- Broad feature set, including messaging and hosting
- SDKs for most platforms and functions in many languages
- Simple permission model that is easy to reason about
Cons
- The default database is not queried with SQL, which limits complex queries
- Self-hosting means running and upgrading many containers
- Smaller community and ecosystem than Firebase or Supabase
Pick it when
- You want a Firebase-style backend that you can also run yourself
- Flutter and mobile apps that want auth, storage and push in one place
Skip it when
- The data needs heavy SQL reporting or joins
What it costs · Free tier
Free to self-host. Appwrite Cloud has a free plan (two projects, paused after a week of inactivity) and Pro from about $25 a month plus usage.
Appwrite pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Appwrite Cloud
PocketBase
PlatformOpen sourceAn open-source backend in a single file: one small program gives you a database, sign-in, file storage, live updates and an admin dashboard.
PocketBase is a single Go executable with SQLite built in. Run ./pocketbase serve and you have a REST-style API, a web dashboard for managing collections and records, user sign-in (password, one-time codes, OAuth and MFA), file uploads to disk or S3-compatible storage, and realtime subscriptions over Server-Sent Events. JavaScript and Dart SDKs talk to it.
It can be extended with JavaScript hooks or used as a Go framework, and schema changes are saved as migration files. Everything lives on one server, which keeps it cheap and simple but limits growth to the size of that machine. It has not reached version 1.0 yet, so upgrades can require manual migration steps.
Pros
- Simple to deploy: one file with no dependencies
- Admin dashboard, auth, files and realtime included
- Runs well on a small, cheap server
- Free and open source, with no vendor account
Cons
- Grows on one machine only, not across many
- Pre-1.0, so breaking changes between versions are possible
- You run backups, updates and monitoring yourself
Pick it when
- Side projects, internal tools and small apps
- Prototypes that need a real backend in minutes
- Self-hosting on a VPS with a small budget
Skip it when
- Large, fast-growing apps that need several servers or managed hosting
What it costs · Open source
Free (MIT). You pay only for the server you run it on; there is no official hosted version.
Approximate, checked September 2026.
Related
Also called: Pocket Base
Supabase pieces
Supabase Realtime
ServiceFree tierThe part of Supabase that pushes live updates to connected apps over WebSockets: chat messages, who is online, and changes to database rows.
Realtime offers three features over one WebSocket connection. Broadcast sends low-latency messages between clients, such as chat or cursor positions. Presence tracks who is online in a channel. Postgres Changes listens for inserts, updates and deletes in chosen tables and pushes them to subscribers, checking row level security for each one.
It is an Elixir server that reads database changes through Postgres logical replication. For busy apps Supabase recommends Broadcast, sent from database triggers, over Postgres Changes, because it scales better and gives finer control over who receives what. Usage counts towards each plan's quota of concurrent connections and messages.
What it costs · Free tier
Included in every plan: Free covers 200 concurrent connections and 2 million messages a month, Pro 500 connections and 5 million messages, then usage pricing.
Supabase Realtime pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Realtime, Broadcast, Presence, Postgres Changes
Open Supabase Realtime as a pageOfficial site (opens in a new tab)
Supabase Edge Functions
ServiceFree tierSmall pieces of server code, written in TypeScript and run on Deno, for work a Supabase app must not do in the browser, such as calling a payment API with a secret key.
Each function is a TypeScript file that handles an HTTP request, deployed with the Supabase CLI and run close to users on a global network. Functions run on Deno, can import npm packages, read secrets from environment variables, and receive the caller's sign-in token so they can act on the user's behalf. Common jobs are webhooks, payments, sending email and calling AI APIs.
They are meant for short tasks: each request gets up to two seconds of CPU time (waiting on the network does not count) and 256 MB of memory, and a worker lives for at most 150 seconds on the Free plan or 400 seconds on paid plans. Outgoing SMTP ports are blocked, so email goes through an HTTP API such as Resend. Long jobs belong in a queue or another service.
What it costs · Free tier
Free plan includes 500,000 invocations a month; Pro includes 2 million, then about $2 per million.
Supabase Edge Functions pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Edge Functions, Supabase functions
Open Supabase Edge Functions as a pageOfficial site (opens in a new tab)
Hosted databases
Neon
ServiceFree tierA hosted PostgreSQL service that separates storage from compute, so databases can sleep when idle, wake on demand and be copied into branches in seconds.
Neon runs standard Postgres on top of its own storage layer. Compute scales up with load and down to zero when nobody is querying, then wakes on the next query after a short delay. Because storage is copy-on-write, a branch (a full, writable copy of the database) takes seconds and little extra space, which suits preview deployments, tests and experiments.
It includes connection pooling and a serverless driver that queries over HTTP or WebSockets from edge functions. Neon joined Databricks in 2025, and its technology also powers Databricks' Lakebase. It has started adding backend pieces around the database, such as managed authentication (Better Auth) and object storage, but it is still mainly a database rather than a full BaaS.
Pros
- Standard Postgres, so every tool and ORM works
- Instant branches for previews, tests and migrations
- Scales to zero, which keeps idle projects cheap
- Serverless driver works from edge runtimes
Cons
- Cold starts add a short delay after idle periods
- Usage-based bills are harder to predict than a fixed server
- Mostly a database: auth, storage and APIs are largely up to you
Pick it when
- Serverless or edge apps that want Postgres
- Teams that give every pull request its own database branch
- Many small or occasionally used databases
Skip it when
- Steady, heavy traffic where a fixed-size server costs less
What it costs · Free tier
Free plan (0.5 GB storage and 100 compute hours a month per project). Paid plans are usage based, from about $0.11 per compute hour plus $0.35 per GB-month; typical spend is around $15 a month.
Neon pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Neon Postgres, Lakebase
Turso
ServiceFree tierA SQLite-compatible database and cloud service built for running many small databases, such as one per user or customer, locally, in the cloud or both.
Turso is a rewrite of SQLite in Rust that keeps SQLite's file format and SQL and adds concurrent writes, vector and full-text search, encryption and sync. It can run inside an app as a local file, as a remote database in Turso Cloud, or both: with Turso Sync, reads and writes hit the local copy and changes are pushed to and pulled from the cloud, which suits offline-first apps.
Because each database is little more than a file, creating thousands is cheap, which suits a separate database per customer or per AI agent. Turso Cloud adds branching, point-in-time restore and scale to zero for idle databases. The team's older libSQL client, based on its earlier fork of SQLite, still has the widest ORM support (Drizzle, Prisma), and the new engine is far younger than SQLite itself.
Pros
- SQLite compatibility, with hosting, sync and backups added
- Thousands of databases stay cheap, which suits per-tenant data
- Local copies make reads fast and let apps work offline
- Free plan covers 100 databases and 5 GB
Cons
- A much younger engine than SQLite or PostgreSQL
- Smaller ecosystem, and some ORMs still need the older libSQL client
- Queries across many tenant databases need extra work
Pick it when
- A separate database for each user, customer or AI agent
- Apps already built on SQLite that need to go online
- Offline-first or edge apps that benefit from a local copy
Skip it when
- You want the mature PostgreSQL ecosystem and its extensions
What it costs · Free tier
Free plan with 100 databases, 5 GB and 500 million rows read a month. Paid plans from about $5.99 a month (Developer) and $29 a month (Scaler).
Turso pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Turso Cloud, libSQL, Turso Sync
PlanetScale
ServicePaidA managed database service for high-traffic apps, offering MySQL through Vitess and, since 2025, PostgreSQL, with branch-based schema changes that do not lock tables.
PlanetScale began as a hosted version of Vitess, the system YouTube built to spread MySQL across many machines (sharding). Its signature workflow treats schema changes like code: branch the database, change the branch, open a deploy request, and PlanetScale applies the change in production without locking tables or taking the site down.
In 2025 it added PlanetScale Postgres, and it offers Neki for sharded Postgres and Metal clusters on fast local NVMe drives. It dropped its free plan in 2024 and is aimed at production workloads rather than hobby projects, although single-node Postgres databases now start at a few dollars a month.
Pros
- Proven at very large scale through Vitess
- Schema changes without downtime through branches and deploy requests
- Both MySQL and PostgreSQL, with query insights built in
Cons
- No free plan
- Highly available and sharded setups cost far more than small hosts
- More than a small project needs
Pick it when
- Busy production apps where downtime during migrations is not acceptable
- MySQL workloads that need to scale out across machines
Skip it when
- Hobby projects or prototypes that fit a free tier elsewhere
What it costs · Paid
No free plan. Single-node PostgreSQL from about $5 a month, highly available Vitess (MySQL) clusters from about $39 a month, Metal from about $50 a month.
PlanetScale pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Vitess, PlanetScale Postgres, Neki
Open PlanetScale as a pageOfficial site (opens in a new tab)
MongoDB Atlas
ServiceFree tierMongoDB's own cloud service, which runs and scales MongoDB databases on AWS, Google Cloud or Azure, with search and vector search built in.
Atlas handles what running MongoDB yourself involves: replica sets for failover, backups, upgrades, monitoring, and sharding when data grows. You pick a cloud and region, choose a cluster size and connect with the standard MongoDB drivers. Clusters can span several regions or even several clouds.
On top of the database it adds Atlas Search (full-text search built on Apache Lucene), Vector Search for AI features, triggers, charts and archiving to cheaper storage. Tiers run from a free 512 MB cluster for learning, through Flex clusters billed by usage, to dedicated clusters for production, which is where most of the cost sits.
Pros
- Fully managed MongoDB with backups and failover
- Full-text and vector search in the same service
- Runs on all three major clouds, in many regions
- Free cluster for learning and prototypes
Cons
- Dedicated clusters get expensive as data grows
- Free and Flex tiers have limited performance and features
- Many features are Atlas-only, which deepens lock-in
Pick it when
- You have chosen MongoDB and do not want to run it yourself
- Apps that need document data and search in one place
Skip it when
- Relational data that fits PostgreSQL better
What it costs · Free tier
Free 512 MB cluster. Flex clusters cost about $8 to $30 a month depending on use; dedicated clusters start around $0.08 an hour (roughly $60 a month).
MongoDB Atlas pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Atlas, MongoDB Cloud, Atlas Search
Open MongoDB Atlas as a pageOfficial site (opens in a new tab)
Upstash
ServiceFree tierA serverless data service offering Redis, a message queue and scheduler (QStash) and a vector database, billed per request and reachable over plain HTTP.
Upstash Redis accepts Redis commands and also answers over a REST API, so code on Cloudflare Workers, Vercel's edge runtime or other serverless platforms can use it without holding a connection open. It is commonly used for caching, sessions and rate limiting, and the @upstash/ratelimit library does the counting.
QStash delivers HTTP messages to your endpoints later or on a schedule, with retries, which gives serverless apps queues and cron without a worker server. Upstash Vector stores embeddings for AI search, and Workflow builds durable multi-step jobs on top of QStash. Pay-as-you-go pricing suits small or spiky traffic; at steady high volume, fixed plans or a self-run Redis can cost less.
Pros
- Pay per request, so small or idle projects cost little
- HTTP access works from edge and serverless runtimes
- Redis, queues, schedules and vectors from one provider
- Free tier for prototypes
Cons
- Per-request billing grows with heavy, steady traffic
- HTTP calls add some latency compared with a nearby Redis server
- Not every Redis feature or command is supported
Pick it when
- Caching and rate limiting in serverless or edge apps
- Background jobs and cron for apps with no worker server
Skip it when
- Constant high-volume traffic where a dedicated Redis server costs less
What it costs · Free tier
Redis: free up to 256 MB and 500,000 commands a month, then about $0.20 per 100,000 commands. QStash: 1,000 free messages a day, then about $1 per 100,000.
Upstash pricing (opens in a new tab)Approximate, checked September 2026.
Related
Also called: Upstash Redis, QStash, Upstash Vector
Side by side
Differences
How the options in this area compare on the questions that usually decide the choice.
Supabase vs Firebase
Open as a page: Supabase vs FirebaseThe two backend platforms most often weighed against each other. Both give you a database, sign-in, storage and functions; the difference starts with the database: PostgreSQL tables against Firestore documents.
| Compare | Supabase | Firebase |
|---|---|---|
| Database | PostgreSQL (relational tables) | Firestore (documents in collections) |
| Querying | SQL, joins and an auto-generated REST API | SDK queries, no joins |
| Access rules | Row level security policies in SQL | Security rules in their own language |
| Live updates | Broadcast, presence and table changes | Built into Firestore listeners |
| Offline support | Not built in | Built into the mobile and web SDKs |
| Server code | Edge Functions (TypeScript on Deno) | Cloud Functions (Node.js or Python) |
| Open source | Yes, and it can be self-hosted | No |
| Pricing | Free plan; Pro from $25 a month plus usage | Free quotas, then pay per operation (Blaze) |
| Lock-in | Low: standard Postgres | High: proprietary APIs and data model |
How to choose
- Pick Supabase for relational data, SQL, predictable plans and an exit path through standard Postgres.
- Pick Firebase for mobile apps that need offline sync, push notifications and Google's wider toolset.
- Both are quick to start with, so the choice mostly follows the shape of your data.
Supabase vs Appwrite vs PocketBase
Open as a page: Supabase vs Appwrite vs PocketBaseThree open-source backends that bundle a database, sign-in, storage and live updates. They differ mainly in the database underneath and in how much there is to run yourself.
| Compare | Supabase | Appwrite | PocketBase |
|---|---|---|---|
| What it is | A platform built on PostgreSQL | A multi-service backend server | A backend in one file |
| Database | PostgreSQL | Its own tables API; PostgreSQL and MySQL on Cloud | SQLite, built in |
| Self-hosting | Possible, with many services to run | Docker containers on your own server | One binary, one command |
| Hosted service | Supabase Cloud | Appwrite Cloud | None official |
| Server code | Edge Functions (TypeScript on Deno) | Functions in many languages | JavaScript hooks or Go |
| Scales to | Large production apps | Large production apps | What one server can handle |
| Cost | Free plan; Pro from $25 a month | Free plan; Pro from about $25 a month | Free; you pay for the server |
| Best for | Relational data and SQL | Firebase-style apps you may self-host | Side projects and small apps |
How to choose
- Pick Supabase when you want PostgreSQL, SQL and a managed service that can grow with the product.
- Pick Appwrite for a Firebase-style feature set, including messaging and hosting, that you can also run yourself.
- Pick PocketBase for small apps and tools where one cheap server and one file are enough.
Neon vs Turso vs PlanetScale vs MongoDB Atlas
Open as a page: Neon vs Turso vs PlanetScale vs MongoDB AtlasFour services that run a database for you rather than a whole backend. The first question is which engine you want: PostgreSQL, SQLite, MySQL or MongoDB.
| Compare | Neon | Turso | PlanetScale | MongoDB Atlas |
|---|---|---|---|---|
| Database | PostgreSQL | SQLite-compatible (Rust rewrite) | MySQL (Vitess) or PostgreSQL | MongoDB |
| Standout feature | Branching and scale to zero | Many cheap databases, local sync | Schema changes without downtime | Built-in full-text and vector search |
| Free plan | Yes, 0.5 GB per project | Yes, 5 GB across 100 databases | No | Yes, one 512 MB cluster |
| Paid from | Usage based, typically about $15 a month | About $6 a month | About $5 a month (single-node Postgres) | Flex from about $8 a month |
| Scales to | Large, with autoscaling compute | Thousands of small databases | Very large, with sharding | Very large, with sharding |
| Watch out for | Cold starts after idle periods | Young engine, fewer integrations | Cost of highly available setups | Dedicated clusters get expensive |
| Best for | Serverless Postgres apps and previews | Per-user or per-tenant data | High-traffic production workloads | Document data with search |
How to choose
- Pick Neon for serverless Postgres with a branch for every preview or test.
- Pick Turso for many small SQLite databases, such as one per customer.
- Pick PlanetScale for busy production MySQL or Postgres where migrations must not cause downtime.
- Pick MongoDB Atlas when the data is document-shaped and you want managed search beside it.
Crafted in the dark. Shipped to the world.
Tell us what you are building. You get a private project space with a proposal and a line-by-line quote within a day.