If you want a PostgreSQL-compatible distributed database under an open source licence, YugabyteDB (Apache 2.0) is the closest match. If your application speaks MySQL, TiDB (Apache 2.0) is the equivalent, with columnar replicas for analytics. If you would rather have a cloud provider run it, Google Cloud Spanner offers external consistency and multi-region configurations, and Amazon Aurora DSQL is a serverless, PostgreSQL-compatible option on AWS with active-active multi-Region clusters. If you mainly need to scale out PostgreSQL and can design around a distribution column, Citus keeps you on PostgreSQL itself.
CockroachDB is Cockroach Labs' distributed SQL database. Data is split into ranges replicated with Raft, transactions run at SERIALIZABLE isolation by default, applications use the PostgreSQL wire protocol, and multi-region features place rows near users or inside a jurisdiction. v26.4 reached GA on 26 October 2026, and CockroachDB Cloud runs on AWS, Google Cloud and Azure.
The licence change is the main reason people now compare alternatives. All releases from v24.3.0 (November 2024) are under the proprietary CockroachDB Software License, and the free CockroachDB Core edition ended. The documented consequences:
- No open source edition. Self-hosted use needs an Enterprise licence (paid, by quote), Enterprise Free or a 30-day Enterprise Trial; single-node development clusters need no key.
- Revenue cap on the free licence. Enterprise Free is only for businesses with less than USD 10M annual revenue, counting parent and affiliate revenue; government bodies do not qualify, and it comes with community support only.
- Telemetry and throttling. Free and Trial clusters must send telemetry. Clusters without a valid key, or that stop sending telemetry, are throttled to 5 concurrent open SQL transactions after a grace period.
- Cloud pricing. Organisations created on or after 15 September 2026 use Cockroach Continuum per vCPU-hour pricing with no free Cloud tier (a 30-day trial includes USD 400 of credit), and the pricing page shows conflicting Standard rates.
In our view, teams also weigh PostgreSQL compatibility: CockroachDB speaks the protocol but is not PostgreSQL, so some features and extensions are missing (editorial). Head-to-head pages: CockroachDB vs YugabyteDB (planned), CockroachDB vs PostgreSQL and CockroachDB vs MySQL.
Quick picks
Apache 2.0 core that reuses the PostgreSQL query layer, with a managed Aeon service on three clouds.
Apache 2.0, MySQL 8.0-compatible distributed SQL with TiFlash columnar replicas.
External consistency, GoogleSQL and PostgreSQL dialects, and up to 99.999% availability on Enterprise Plus.
PostgreSQL-compatible, billed per DPU, with active-active multi-Region clusters.
Open source extension that shards PostgreSQL tables or schemas across nodes.
How we chose
We considered YugabyteDB, TiDB, Google Cloud Spanner, Amazon Aurora DSQL, Citus, Vitess with PlanetScale, FoundationDB and single-node PostgreSQL. To be included, a product had to offer SQL with ACID transactions across more than one server, be actively developed or sold in November 2026, and document its licence, consistency model and deployment options on an official page.
FoundationDB is a transactional key-value store with SQL only through layers such as the Record Layer, so it is a building block rather than a replacement. Vitess shards MySQL and is covered on the ProxySQL alternatives page and in the PlanetScale profile. Plain PostgreSQL remains a valid answer when one primary is enough; see CockroachDB vs PostgreSQL.
The order is not a ranking. Open source distributed SQL engines come first, then managed cloud services, then scale-out PostgreSQL.
At a glance
| Option | Licence or model | SQL compatibility | Where it runs | Default isolation | Main trade-off |
|---|---|---|---|---|---|
| YugabyteDB | Apache 2.0 core; Aeon and Anywhere commercial | PostgreSQL (YSQL); Cassandra-style YCQL | Self-managed; Aeon on AWS, Azure, Google Cloud | Not reviewed here | Distributed latency; Anywhere by quote |
| TiDB | Apache 2.0; TiDB Cloud commercial | MySQL 8.0 | Self-managed; TiDB Cloud on AWS, Google Cloud, Azure | Not reviewed here | Several components to run |
| Google Cloud Spanner | Managed Google Cloud service | GoogleSQL and a PostgreSQL interface | Google Cloud only | Serializable | No suspend mode; Spanner-specific schema design |
| Amazon Aurora DSQL | Managed AWS service | PostgreSQL-compatible subset | AWS only | Repeatable Read (fixed) | 3,000-row transaction limit; no PL/pgSQL |
| Citus | AGPL-3.0; Azure elastic clusters | PostgreSQL itself | Self-managed; Azure Database for PostgreSQL | PostgreSQL default (Read Committed) | Data model built around a distribution column |
YugabyteDB
YugabyteDB splits tables into tablets replicated with Raft across nodes, zones or regions, and runs distributed ACID transactions. Its YSQL API reuses the PostgreSQL query layer, which is why its compatibility is high, and YCQL offers a Cassandra-style API on the same storage. The database is Apache 2.0 with no revenue or feature caps; the YugabyteDB Anywhere management code is under a separate licence and sold commercially.
YugabyteDB Aeon is the managed service: Standard from USD 125 and Professional from USD 167 per vCPU per month, Enterprise by quote, plus storage, backups and data transfer, and a free single-node Sandbox on AWS or Google Cloud. Current series are v2026.1 (STS) and v2025.2 (LTS). See CockroachDB vs YugabyteDB.
- Distributed transactions add latency compared with single-node PostgreSQL.
- STS releases get one year of maintenance, so production teams should track LTS.
- The free Sandbox is single-node and not offered on Azure.
TiDB
TiDB is PingCAP's distributed SQL database, designed to be compatible with MySQL 8.0. A stateless SQL layer sits over TiKV, a row-based distributed key-value store, and TiFlash, a columnar engine that replicates from TiKV in real time so analytical queries run on separate machines. Every piece of data has at least three replicas, and commits need a majority. It is Apache 2.0.
TiDB Cloud Starter has no base fee and a free monthly allowance per organisation (25 GiB of row storage, 25 GiB of columnar storage and 250 million Request Units across up to five instances), Dedicated starts from USD 1,376 a month on AWS, and a PostgreSQL-compatible Starter option is in Public Preview. It is the natural choice where CockroachDB was chosen to escape MySQL sharding (editorial).
- MySQL compatibility rather than PostgreSQL, so CockroachDB applications need SQL and driver changes.
- A self-managed cluster has several components (TiDB, TiKV, PD, TiFlash).
- Essential, Premium and BYOC plans were in Public Preview in November 2026.
Google Cloud Spanner
Spanner is Google Cloud's managed distributed relational database. It uses TrueTime to provide external consistency, runs ACID transactions with serialisable isolation by default across splits and regions, and supports GoogleSQL and a PostgreSQL interface. Capacity is bought in processing units from 100 upwards (1,000 equal one node), and editions set the features: Standard (regional, 99.99% SLA), Enterprise, and Enterprise Plus with dual- and multi-region configurations and up to 99.999%.
It is the closest managed match for CockroachDB's multi-region survival goals (editorial). Regional Standard compute in Iowa was 0.90 USD per node-hour on 8 October 2026, and there is no suspend mode, so an idle instance still costs its full capacity. See Google Cloud Spanner explained.
- The PostgreSQL interface is not PostgreSQL: extensions, user-defined types and stored procedures are not supported.
- Schema design must avoid hotspots, for example with non-sequential primary keys.
- Google Cloud only, and multi-region needs the Enterprise Plus edition.
Amazon Aurora DSQL
Aurora DSQL is AWS's serverless distributed SQL database, generally available for single-Region and multi-Region clusters. It uses the PostgreSQL wire protocol and supports ACID transactions, secondary indexes, joins and foreign keys. Multi-Region clusters have no primary or secondary nodes and no failover to manage, and AWS states up to 99.99% availability in one Region and 99.999% multi-Region. Like CockroachDB, it uses optimistic concurrency control and returns serialization errors that applications must retry.
Billing is in Distributed Processing Units plus storage: in US East (N. Virginia) the FAQ lists USD 8 per million DPUs and USD 0.33 per GB-month, and the free tier includes 100,000 DPUs and 1 GB-month each month. The compatibility guide lists real differences: isolation fixed at Repeatable Read, one database per cluster, no temporary tables, no PL/pgSQL, and transactions limited to 3,000 modified rows and one DDL statement.
- A transaction can modify at most 3,000 rows, and DDL and DML must run in separate transactions.
- No procedural languages such as PL/pgSQL, no temporary tables, and connections time out after one hour.
- AWS only.
Citus
Citus is an open source PostgreSQL extension, developed by Microsoft, that shards distributed tables by a distribution column (or, since 12.0, by schema) across a cluster of PostgreSQL servers. Reference tables are copied to every node so joins and foreign keys work, and a distributed planner routes single-shard queries or runs multi-shard queries in parallel. Because it is PostgreSQL, tables, SQL and most extensions keep working. 14.3.0 (23 October 2026) is current.
On Azure, elastic clusters in Azure Database for PostgreSQL flexible server are the managed option; the older Azure Cosmos DB for PostgreSQL is closed to new deployments. Citus does not give CockroachDB-style automatic multi-region survival; high availability comes from Patroni or the managed service (editorial reading of its documentation).
- The data model must be designed around a distribution column or per-tenant schemas.
- AGPL-3.0, whose network-use terms some organisations review carefully before adopting (editorial).
- No built-in multi-region data placement like CockroachDB's regional tables.
When to stay with CockroachDB
Stay with CockroachDB if the licence terms fit you: a business under USD 10M revenue can use Enterprise Free with telemetry, and larger organisations may simply buy Enterprise or CockroachDB Cloud. Its regional and global tables, survival goals and same software across self-hosted and three clouds are hard to match in one product, and a migration to any distributed database is a significant project.
Switching makes most sense when you need an OSI-approved licence (YugabyteDB, TiDB, Citus), when one cloud provider should run the database (Spanner, Aurora DSQL), when your application is MySQL-based (TiDB), or when you only need to scale out PostgreSQL in one region (Citus). Plan for SQL dialect differences, transaction retry logic and a period of running both systems in parallel.
Frequently asked questions
Is CockroachDB still open source?
No. From v24.3.0 (November 2024) all releases are under the proprietary CockroachDB Software License, and the free Core edition ended. Enterprise Free is available to businesses with less than USD 10M annual revenue, with telemetry required.
What is the best open source alternative to CockroachDB?
For PostgreSQL compatibility, YugabyteDB (Apache 2.0). For MySQL compatibility, TiDB (Apache 2.0). Citus (AGPL-3.0) is open source if you want to stay on PostgreSQL itself.
What happens if a CockroachDB cluster has no licence key?
Cockroach Labs documents that clusters without a valid key are throttled to 5 concurrent open SQL transactions after 7 days, and Free and Trial clusters are throttled if they stop sending telemetry. Single-node development clusters need no key.
Is Aurora DSQL a CockroachDB alternative?
For AWS teams that want serverless, PostgreSQL-compatible distributed SQL, yes. Check its documented limits first, such as the 3,000-row transaction limit and fixed Repeatable Read isolation.
Is Spanner compatible with PostgreSQL?
Spanner offers a PostgreSQL interface with PostgreSQL syntax and many clients, but Google says it is not PostgreSQL: extensions, user-defined types and stored procedures are not supported, and existing applications usually need rework.
Sources
- CockroachDB licensing FAQs
- CockroachDB releases
- CockroachDB Cloud pricing
- YugabyteDB GitHub repository
- YugabyteDB pricing
- TiDB GitHub repository
- TiDB pricing
- Spanner editions overview
- Spanner pricing
- Amazon Aurora DSQL FAQs
- Aurora DSQL: PostgreSQL compatibility and migration
- Citus GitHub repository
Checked November 2026.
How we research these guides: our editorial method.