What is Convex?
Convex is a hosted backend for TypeScript or JavaScript apps that combines a document database with serverless functions and reactive queries. You write logic as queries (reads), mutations (writes), and actions (long-running/external I/O). Convex recomputes query results on data changes and pushes updates to clients.
Differences & Similarities
Performance
SpacetimeDB is fast, extremely fast. SpacetimeDB can achieve more than 100,000 transactions per second in scenarios where Convex can reach only around 100. This extreme speed is due to SpacetimeDB's architecture. SpacetimeDB stores all tables in memory in the same process as your executing module code. The data in your tables is kept hot in L1 cache on the same core as your executing module, providing nano-second scale access to your database data.
SpacetimeDB's hyper focus on performance comes from its background as a game engine for the MMORPG BitCraft Online, which uses SpacetimeDB to process all backend data, including the movement of all players in characters in the game. SpacetimeDB simply could not afford to be slow.
Language Flexibility
SpacetimeDB supports multiple languages and frameworks allowing it to be used in more scenarios and for more apps. SpacetimeDB supports the following module languages:
- TypeScript/JavaScript
- C#
- Rust
- C++
By constrast, Convex is a web first framework primarily focused on the TypeScript and JavaScript ecosystem. Convex backends must be written in either JavaScript or TypeScript.
Logic & Latency
SpacetimeDB runs developer-defined reducers inside its unified engine. Each reducer executes in its own transaction and commits atomically on success. State, logic, and sync share one runtime so work runs next to the data.
- Subscribers receive commit-ordered changes that match the exact sequence of successful commits.
- Conflicting reducers retry at the engine boundary, so atomic updates do not require custom compare-and-swap code.
- Round trips stay predictable because there is no extra hop to a separate function tier and no cold starts.
In Convex, functions run in a separate runtime via queries, mutations, and actions that talk to the database. Convex recomputes reactive query results and pushes updates to clients, which adds a network hop and shifts consistency and contention handling into the function tier.
Realtime Synchronization
SpacetimeDB streams changes to clients automatically. Relevant rows replicate to the client and local caches stay in sync without polling or external messaging.
- Updates arrive in the exact order that transactions commit.
- Clients apply minimal deltas to cached result sets with no re-fetch.
- No polling layers or separate pub/sub are required.
- Streams reflect the results of committed reducers.
Convex uses reactive queries. When data changes, query functions re-run and Convex pushes updated results to subscribed clients.
Ecosystem & Hosting
SpacetimeDB offers a cloud-first deployment model with SpacetimeDB Maincloud as well as a self-hosting option, called SpacetimeDB Standalone, that uses the same [internal core engine] as SpacetimeDB Cloud. SpacetimeDB offers SDKs for TypeScript, JavaScript, several web frameworks, NodeJS, Bun, Deno, Rust, C#, Unity, Unreal and more.
Convex offers a cloud-first deployment model with Convex Cloud as well as a self-hosting option that uses the same backend code. The ecosystem targets JS/TS, and common web framework integrations, with an official React client and Next.js guides.
| Feature | SpacetimeDB | Convex |
|---|---|---|
| ACID relational storage | ✓ | ✓ |
| Auto-updating subscriptions | ✓ | ✓ |
| Self-hosting available | ✓ | ✓ |
| Unified runtime (state + logic + sync) | ✓ | ✗ |
| In-engine transactional functions (reducers) | ✓ | ✗ |
| Client cache mirroring | ✓ | ✗ |
| 100,000+ transactions per second | ✓ | ✗ |
Pricing
SpacetimeDB Maincloud offers Free, Pro, and Team plans. Usage is metered with an energy credit system. The Free plan provides enough energy to run more than 3 million reducer calls per month. The Pro plan which costs $25 per month provides enough energy to run more than 120 million reducer calls per month before any pay-as-you-go charges. The Team plan for $250, provides advanced features for managing large teams while providing enough energy to run 300 million reducer calls per month before any pay-as-you-go charges. The energy-based metering in electronvolts (eV), measures table storage, bytes scanned/written, index operations, CPU instructions, and egress bandwidth to allow you to carefully optimize your applications. You can also self-host the same engine for free. See the pricing plus the self-hosting guide.
Convex Cloud plans are seat-based (concurrency, storage, bandwidth, vector features). The Free tier offers 1 million function calls per month and costs $2.20 per million function calls thereafter. The Free tier allows you to add 5 collaborators to your team. The Pro tier costs $25 per month per user and offers 25 million function calls per month and costs $2.00 per million function calls thereafter. For details, see Convex Pricing. Convex also supports self-hosting the open-source backend if you want to run it yourself.
Key takeaways
- SpacetimeDB's performance is unparalleled.
- SpacetimeDB unifies database, logic, and realtime sync in one engine (reducers, subscription queries).
- Convex uses serverless functions and reactive queries for JS/TS teams.
- SpacetimeDB reduces moving parts, runs logic in-engine, and keeps latency predictable for collaborative applications.


