Method: Official documentation and pricing checked September 28, 2026. No benchmarks were run. Recommendations are based on documented features and billing, not hands-on results.
Choose Convex when reactive TypeScript queries fit your application model; choose Supabase when PostgreSQL and its surrounding services are the starting point. Neither choice establishes a latency or development-time advantage without a workload-specific evaluation.
The architectural decision
Convex’s overview describes server-side TypeScript query and mutation functions. Queries subscribe to data dependencies and update clients when their results change. General-purpose actions handle external operations such as network requests. Your application is built around these functions, so evaluate that model before treating it as a drop-in database replacement.
Supabase Realtime separates Broadcast messages, Presence state and Postgres Changes subscriptions. This gives a PostgreSQL application documented ways to deliver updates, but you still need to choose the appropriate event and authorization model. “Realtime” does not mean the two products expose the same API or consistency behavior.
Current entry costs
| Service | Free allowance or starting plan | Paid starting point |
|---|---|---|
| Convex | Free has built-in resources; Starter adds usage billing beyond those allowances | Professional $25/developer/month, with resource meters |
| Supabase | Two active Free projects; 500 MB database, 1 GB file storage, 5 GB egress; pauses after one inactive week | Pro from $25/month, with $10 compute credit covering one Micro instance |
Sources: Convex pricing, Supabase pricing. These are different billing units. Three Convex Professional developers produce a $75 base subscription before usage; Supabase’s base subscription is not multiplied by that same developer count. Compute size and additional projects can still increase its bill.
The Supabase free allowances do not include automatic backups. A free evaluation database is therefore not an adequate recovery plan by itself. Convex’s paid plan also has separate function, storage and network meters: the subscription is not an unlimited fixed bill.
Which fits a small React app?
Start with Convex if automatic query subscriptions are central to the interface and you are prepared to write backend logic using its function model. Start with Supabase if relational data, PostgreSQL access and the associated ecosystem are priorities. Those are architecture recommendations, not measured winners.
Before committing, implement one authenticated write and one live subscription. Verify that a user cannot read another user’s records. Include a reconnect, an authorization change and a failed external call. Assess the code and operational steps required for your app; this article reports no results from those checks.
Budget the next stage
Count developers, active projects, retained data, egress and the paid features required for recovery. Price that configuration after the free allowance is exhausted. Avoid promising a universal cost per active user: neither pricing page establishes how much work each user causes in your application.
Sources, checked September 28, 2026: Convex overview, Convex pricing, Supabase pricing, Supabase Realtime.