Quick verdict
Choose Cloud SQL for PostgreSQL for most applications: it is the simpler, lower-priced option per vCPU, supports PostgreSQL 9.6 to 18 (18 is the default), and its Enterprise Plus edition adds a 99.99% SLA that includes maintenance, a data cache, read pools and 35-day point-in-time recovery. Choose AlloyDB for PostgreSQL when you need storage that scales automatically and is billed on use, read pools of up to 20 nodes sharing one storage layer, the columnar engine for analytics on live data, or the option to run the same engine outside Google Cloud with AlloyDB Omni.
Cloud SQL is Google Cloud's managed service for MySQL, PostgreSQL and SQL Server. It comes in two editions, Enterprise and Enterprise Plus, which differ in availability, performance features and data protection. Each instance is a VM with its own provisioned storage (up to 64 TB), and high availability adds a standby in another zone. Cloud SQL for PostgreSQL supports major versions 9.6 through 18, with 18 as the default; instances on community end-of-life versions are enrolled in paid extended support.
AlloyDB for PostgreSQL is a PostgreSQL-compatible service built on a disaggregated design. Google's overview describes compute instances (a primary, optionally highly available with two nodes, plus read pools) over "a cloud-native, distributed storage engine that persists your data across multiple availability zones and scales automatically". It supports PostgreSQL 14, 15, 16, 17 and 18, with 17 as the default. AlloyDB Omni is a downloadable, self-managed edition of the same engine for your own data centre, other clouds, laptops or Kubernetes, and it is actively developed: AlloyDB Omni RPM 18.3.0 became generally available on 8 September 2026, and Kubernetes operator 1.8.2 was released on 5 October 2026.
Side by side
| Aspect | Cloud SQL | AlloyDB |
|---|---|---|
| Engines | PostgreSQL, MySQL and SQL Server | PostgreSQL only |
| PostgreSQL versions | 9.6 to 18 (default 18) | 14 to 18 (default 17) |
| Architecture | One VM per instance with its own provisioned disk | Compute nodes over a shared, regional storage layer |
| Storage billing | Provisioned capacity; automatic increases are permanent; up to 64 TB | Storage used only; scales up and down automatically; shared by all instances |
| Maximum compute | Enterprise: up to 96 vCPU and 624 GiB; Enterprise Plus: up to 128 vCPU and 864 GiB | Up to 288 vCPU and 2,232 GiB per node |
| Read scaling | Read replicas; read pools on Enterprise Plus | Read pool instances of up to 20 nodes on shared storage |
| SLA | Enterprise Plus 99.99% including maintenance; Enterprise 99.95% excluding maintenance | 99.99% with HA in most regions (99.95% in Mexico and Stockholm) |
| Analytics | Row store only | Columnar engine with auto-columnarization |
| Run outside Google Cloud | No | AlloyDB Omni (self-managed, licensed per vCPU) |
| Main trade-off | Simpler and cheaper per vCPU, but storage and replicas are per instance | Shared storage, larger nodes and analytics, but PostgreSQL only and higher compute rates |
Key differences
Cloud SQL Enterprise versus Enterprise Plus
Before comparing with AlloyDB, decide which Cloud SQL edition you mean. Per Google's edition comparison for PostgreSQL, Enterprise Plus adds a data cache, read pools, advanced disaster recovery, point-in-time recovery of up to 35 days (Enterprise: 7 days), 30 days of Query Insights retention (Enterprise: 7) and planned-maintenance downtime of under 1 second (Enterprise: under 30 seconds). Its SLA is 99.99% including maintenance, against 99.95% excluding maintenance for Enterprise. Enterprise Plus also offers larger machines: up to 128 vCPU and 864 GiB on N2, against up to 96 vCPU and 624 GiB on Enterprise.
Google attributes read and write performance improvements to Enterprise Plus's data cache and hardware; those are vendor claims we have not tested. In our assessment, Enterprise Plus closes much of the availability gap with AlloyDB, which is why Cloud SQL is often enough.
Architecture and storage
A Cloud SQL instance has its own disk. You choose the capacity, can increase it manually or enable automatic storage increases (which are permanent, though Google documents a manual shrink option), and you pay for the capacity provisioned, with high-availability storage billed at a higher rate because it is replicated. Read replicas are separate instances with their own storage.
AlloyDB shares one regional storage layer between all instances in a cluster. Google's pricing page states that you "only pay for the storage you use" and that storage costs do not change when you add read pools or read nodes. A highly available primary uses two nodes (an active primary and an in-region standby), and read pools can contain up to 20 nodes with load balancing across them. Cross-region replication to secondary clusters is available for disaster recovery.
Columnar engine and AI features
AlloyDB's distinctive feature is its columnar engine: an in-memory column store holding selected columns of tables and materialised views, plus a planner and executor that use it for scans, joins and aggregates. Auto-columnarization can choose columns based on your workload, or you can add columns manually; by default the engine uses 30% of instance memory. Google documents limits: frequent row updates invalidate columnar data, partitioned tables cannot be populated directly, not all data types are supported, and a query fragment benefits only if all its columns are in the column store.
AlloyDB AI bundles the vector extension, alloydb_scann approximate nearest-neighbour indexes, google_ml_integration for calling models and alloydb_ai_nl for natural-language queries. Cloud SQL for PostgreSQL has no columnar engine; for heavy analytics on Cloud SQL data, the usual pattern is to replicate to a warehouse.
Portability: AlloyDB Omni
Cloud SQL runs only on Google Cloud; its portability comes from running standard engines, so pg_dump and logical replication work to and from any PostgreSQL. AlloyDB adds a second option: AlloyDB Omni, which Google describes as "a streamlined version of AlloyDB for PostgreSQL" that you deploy and manage yourself on-premises, on any public cloud, on laptops, on VMs, on Kubernetes through an operator, or on RHEL 9 and Rocky Linux 9 through RPM packages (the RPM orchestrator option is still in Preview). Production licences are bought per vCPU through the Google Cloud console. That gives AlloyDB users a way to run the same engine, including the columnar engine, outside Google Cloud, at the cost of managing it.
Pricing and licensing
Both services bill compute per vCPU-hour and per GiB of memory per hour, plus storage, backups and network egress, and both offer 1- and 3-year committed use discounts on compute. As one example, listed on the Google Cloud pricing pages in October 2026 for Iowa (us-central1), in USD, on-demand: Cloud SQL Enterprise Plus on the N2 machine series is 0.0537 USD per vCPU-hour and 0.0091 USD per GiB-hour of memory (doubled for HA instances), while AlloyDB on the N2 and C4A series is 0.06608 USD per vCPU-hour and 0.0112 USD per GiB-hour per node (an HA primary has two nodes). Cloud SQL Enterprise on the general-purpose series is listed lower, at 0.0413 USD per vCPU-hour.
Storage is billed differently: Cloud SQL charges for provisioned SSD (or HDD or Hyperdisk) capacity, with a higher rate for HA storage, while AlloyDB charges per GiB of regional storage actually used, shared across all instances in the cluster. AlloyDB also offers 30-day free trial clusters (up to 1 TB of data, an 8 vCPU primary and an 8 vCPU single-node read pool). Prices vary by region and machine series; use the Google Cloud pricing calculator for a real estimate.
Pricing checked on the vendors' official pages on 7 October 2026. Prices change; confirm before buying.
Where each one leads
Cloud SQL strengths
- Supports PostgreSQL, MySQL and SQL Server under one service
- Widest PostgreSQL version range, with 18 as the default
- Lower listed compute rates, especially on the Enterprise edition
- Enterprise Plus: 99.99% SLA including maintenance, data cache, read pools and 35-day PITR
AlloyDB strengths
- Regional storage that scales automatically and is billed on use
- Read pools of up to 20 nodes and nodes of up to 288 vCPU
- Columnar engine for analytical queries on transactional data
- AlloyDB Omni runs the same engine on-premises or on other clouds
- Built-in AI extensions, including ScaNN vector indexes
Limitations
Cloud SQL limitations
- Storage is provisioned per instance and automatic increases are permanent
- No columnar engine or equivalent analytics acceleration
- Enterprise edition SLA excludes maintenance, and maintenance downtime is up to about 30 seconds
- Runs only on Google Cloud
AlloyDB limitations
- PostgreSQL only, and versions start at 14
- Higher listed per-vCPU and memory rates than Cloud SQL
- Columnar data is invalidated by frequent updates and does not cover partitioned tables directly
- AlloyDB-specific features (columnar engine, ScaNN, AI NL) tie you to AlloyDB or AlloyDB Omni
When to choose each
Choose Cloud SQL if
- A standard PostgreSQL application of small to medium size
- You also run MySQL or SQL Server and want one service for all of them
- You need an older PostgreSQL version (13 or below), accepting extended support charges
- Cost per vCPU matters more than shared storage or analytics
Choose AlloyDB if
- Your workload mixes transactions with reporting or analytical queries
- You need many read nodes without paying for storage per replica
- Your database is large or growing unpredictably
- You want the option to run the same engine outside Google Cloud with AlloyDB Omni
When neither is right
- You are comparing clouds rather than Google services: see AWS RDS vs Google Cloud SQL; on AWS the closest analogue to AlloyDB is Aurora, see Amazon RDS vs Amazon Aurora.
- You want serverless Postgres that scales to zero and branches with data: see Neon vs AWS RDS or Supabase vs Neon.
- Your workload is mostly analytics over large volumes: a columnar warehouse such as BigQuery fits better than either.
- You have not settled on an engine: see MySQL vs PostgreSQL.
Final recommendation
For most PostgreSQL applications on Google Cloud, Cloud SQL is enough, and Enterprise Plus covers demanding availability needs with a 99.99% SLA that includes maintenance. AlloyDB is worth its higher compute rates when storage scale, many read nodes or analytical queries on live data matter, or when you want to run the same engine on-premises with AlloyDB Omni. Price both in the calculator for your region, and test the columnar engine against your own queries before relying on it.
Frequently asked questions
Is AlloyDB just PostgreSQL?
AlloyDB is PostgreSQL-compatible and supports PostgreSQL 14 to 18, so standard PostgreSQL drivers and SQL apply; check the extensions you use against AlloyDB's supported list. Underneath, Google replaced the storage layer with a distributed regional storage engine and added a columnar engine and AI extensions.
What is the difference between Cloud SQL Enterprise and Enterprise Plus?
Enterprise Plus adds a data cache, read pools, advanced disaster recovery, up to 35 days of point-in-time recovery, sub-second planned maintenance downtime, larger machines and a 99.99% SLA that includes maintenance. Enterprise has a 99.95% SLA that excludes maintenance and costs less per vCPU.
Is AlloyDB Omni still available?
Yes. AlloyDB Omni is generally available and actively released: the RPM package reached 18.3.0 (PostgreSQL 18.3) on 8 September 2026, and the Kubernetes operator 1.8.2 was released on 5 October 2026. Production licences are purchased per vCPU through the Google Cloud console.
Can I migrate from Cloud SQL to AlloyDB?
Both are PostgreSQL, so pg_dump and restore or logical replication work. Check that your Cloud SQL version is 14 or later, because AlloyDB does not support earlier PostgreSQL versions, and review extensions against the AlloyDB list.
Does AlloyDB charge for I/O?
Google's AlloyDB pricing page lists CPU and memory, database storage, backup storage, networking and extended support, and states there are no opaque I/O charges. Storage is billed on the amount used.
Sources
- Cloud SQL for PostgreSQL: Editions overview
- Cloud SQL for PostgreSQL: Database versions
- Cloud SQL for PostgreSQL: Instance settings
- Cloud SQL pricing
- AlloyDB for PostgreSQL overview
- AlloyDB: Database version policies
- AlloyDB: About the columnar engine
- AlloyDB pricing
- AlloyDB SLA
- AlloyDB Omni overview
- AlloyDB Omni release notes
Checked October 2026.
How we research comparisons: our editorial method.