# Aiven vs Amazon RDS

Canonical: https://inetgeek.com/compare/aiven-vs-amazon-rds/

Every value below is read from Aiven's and Amazon RDS's own documentation. See https://inetgeek.com/methodology/ for how.

## At a glance

| Criterion | Aiven | Amazon RDS |
| --- | --- | --- |
| Managed connection pooling | Supported — not on the Free or Developer tiers | Supported |
| Engine | PostgreSQL, alongside MySQL, ClickHouse, OpenSearch, Valkey, Kafka, Flink and Grafana. Aiven runs the upstream projects rather than a compatible reimplementation, which is why its own docs point at postgresql.org for per-release detail. | PostgreSQL, alongside MySQL, MariaDB, Oracle, SQL Server and Db2. Each engine is a separate RDS product with its own version list and its own feature support, so a capability documented for one is not a capability of RDS as a whole. |
| Connection limit | Set per plan, not by a formula: 100 on the entry paid plan (Startup-4), rising to 200, 400, 800 and 1000 as the plan grows, with 25 on Hobbyist, 20 on Free and 15 on Developer. Aiven states plainly that it does not apply a per-GiB formula, and that some of the allowance is used by Aiven itself to manage the service. | Not a fixed number: RDS for PostgreSQL sets max_connections by formula from the instance's memory — LEAST({DBInstanceClassMemory/9531392}, 5000) — so a bigger instance class gets more connections and the ceiling is 5,000 however large it is. The parameter can be set by hand anywhere from 6 to 262,143, which is a limit on what you may configure rather than what an instance will serve. Other engines use different divisors: MySQL is memory/12582880 with no cap. |
| Point-in-time recovery | Bounded by the plan's backup history, so 2 days on the entry paid plan and 30 at the top. Granularity is fine within that: full backups daily with write-ahead logs copied every 5 minutes or per new file, whichever comes first. | Any point inside the configured backup retention period, so up to 35 days. Transaction logs are uploaded to S3 every five minutes, which is what bounds how close to now the latest restorable time can be. |
| Read replicas | Supported | Supported — 15 per primary, raisable on request |
| Backup retention | By plan: none on Hobbyist, 2 days on Startup, 14 on Business, 30 on Premium. The magnitude is Startup's 2 days, the entry paid plan. Aiven's high-availability page states 2 days for Hobbyist where the backups page states none — the backups page is the more specific of the two and is what is recorded here. | Between 0 and 35 days, set per DB instance; 0 disables automated backups entirely. The default depends on how the instance was created — one day via the API or CLI, seven days via the console — so there is no single default to quote. Multi-AZ DB clusters cannot be set below 1 day. |

## Where they differ

### Engine

- Aiven: PostgreSQL, alongside MySQL, ClickHouse, OpenSearch, Valkey, Kafka, Flink and Grafana. Aiven runs the upstream projects rather than a compatible reimplementation, which is why its own docs point at postgresql.org for per-release detail. ([source](https://aiven.io/docs/products/postgresql))
- Amazon RDS: PostgreSQL, alongside MySQL, MariaDB, Oracle, SQL Server and Db2. Each engine is a separate RDS product with its own version list and its own feature support, so a capability documented for one is not a capability of RDS as a whole. ([source](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html))

### Connection limit

- Aiven: Set per plan, not by a formula: 100 on the entry paid plan (Startup-4), rising to 200, 400, 800 and 1000 as the plan grows, with 25 on Hobbyist, 20 on Free and 15 on Developer. Aiven states plainly that it does not apply a per-GiB formula, and that some of the allowance is used by Aiven itself to manage the service. ([source](https://aiven.io/docs/products/postgresql/reference/pg-connection-limits))
- Amazon RDS: Not a fixed number: RDS for PostgreSQL sets max_connections by formula from the instance's memory — LEAST({DBInstanceClassMemory/9531392}, 5000) — so a bigger instance class gets more connections and the ceiling is 5,000 however large it is. The parameter can be set by hand anywhere from 6 to 262,143, which is a limit on what you may configure rather than what an instance will serve. Other engines use different divisors: MySQL is memory/12582880 with no cap. ([source](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html))

### Point-in-time recovery

- Aiven: Bounded by the plan's backup history, so 2 days on the entry paid plan and 30 at the top. Granularity is fine within that: full backups daily with write-ahead logs copied every 5 minutes or per new file, whichever comes first. ([source](https://aiven.io/docs/products/postgresql/concepts/pg-backups))
- Amazon RDS: Any point inside the configured backup retention period, so up to 35 days. Transaction logs are uploaded to S3 every five minutes, which is what bounds how close to now the latest restorable time can be. ([source](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIT.html))

### Backup retention

- Aiven: By plan: none on Hobbyist, 2 days on Startup, 14 on Business, 30 on Premium. The magnitude is Startup's 2 days, the entry paid plan. Aiven's high-availability page states 2 days for Hobbyist where the backups page states none — the backups page is the more specific of the two and is what is recorded here. ([source](https://aiven.io/docs/products/postgresql/concepts/pg-backups))
- Amazon RDS: Between 0 and 35 days, set per DB instance; 0 disables automated backups entirely. The default depends on how the instance was created — one day via the API or CLI, seven days via the console — so there is no single default to quote. Multi-AZ DB clusters cannot be set below 1 day. ([source](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.BackupRetention.html))

## Which should you choose?

Pick Aiven if Teams who want more than one open-source data service from one vendor and one bill — Postgres beside Kafka, ClickHouse or OpenSearch — with the availability tier chosen per service rather than fixed.

Pick Amazon RDS if Teams already inside AWS, where the database sitting in the same VPC as everything else is worth more than any single feature on this page. Six engines, up to 35 days of point-in-time recovery, and read replicas you create and delete yourself.

Consider something else: Aiven — You want long recovery history on a cheap plan. Backup history is what the plan tiers buy here: two days on the entry paid plan against thirty at the top.

Consider something else: Amazon RDS — You want a database per pull request. RDS documents no branching, and replicas are manual — AWS states outright that it does not autoscale them.

## Documented by only one

- Free tier: Aiven: Yes — indefinite, but idle services are powered off
- Entry paid plan: Aiven: $5 a month for Developer — one VM, 1 CPU, 1 GB RAM, 8 GB storage, with no choice of cloud or region and no connection pooling. The first plan that behaves like a production service is Startup at $75 a month or $0.10 an hour, which is where the uptime SLA and multi-CPU sizing begin; Hobbyist sits between them at $12.
- Pricing model: Aiven: Fixed plans quoted both monthly and hourly, with the plan setting CPU, RAM and storage together rather than metering them separately. Aiven describes the pricing as all-inclusive: backups, monitoring and support come with the plan instead of appearing as line items. Higher tiers buy node count and backup history — Business adds a standby node, Premium a second.
- Startup credit program: Aiven: Aiven for Startups: $12,000–$100,000 in Aiven credits over 12 months. Requires founded ≤7 years ago and external funding from pre-seed to Series B.
- Regions: Aiven: 153 regions across six clouds — AWS 25, Google 42, Azure 39, OVH 22, UpCloud 16, DigitalOcean 9 — counted from Aiven's own reference list, which publishes the regions and no total. No magnitude is recorded, because Aiven states on that same page that the list differs per project and that not all service types are available in every cloud and region: the number is the platform's reach, not PostgreSQL's, and a bar drawn from it would be compared against providers whose counts are engine-specific.
- Database branching: Aiven: Limited — a full copy from the latest backup, not copy-on-write
- SOC 2: Amazon RDS: Listed as SOC-compliant on AWS's own compliance scope page.
- ISO 27001: Amazon RDS: Covered under AWS's account-wide ISO/IEC 27001:2022 certification — not scoped per-service the way SOC, HIPAA and PCI DSS are on AWS's own site.
- HIPAA: Amazon RDS: Listed as a HIPAA-eligible service on AWS's own reference page.
- GDPR / data residency: Amazon RDS: AWS customers can process personal data on all AWS services in compliance with GDPR, and choose the storage type and geographic region for their data.
- PCI DSS: Amazon RDS: Listed as PCI DSS-compliant on AWS's own compliance scope page.

## Questions this comparison answers

**Should I choose Aiven or Amazon RDS?**

Pick Aiven if Teams who want more than one open-source data service from one vendor and one bill — Postgres beside Kafka, ClickHouse or OpenSearch — with the availability tier chosen per service rather than fixed.
Pick Amazon RDS if Teams already inside AWS, where the database sitting in the same VPC as everything else is worth more than any single feature on this page. Six engines, up to 35 days of point-in-time recovery, and read replicas you create and delete yourself.
