Skip to content
inetGeek

Amazon RDS vs Amazon Aurora

A comparison of Amazon RDS and Amazon Aurora built from values read directly from each provider's own documentation, with the source recorded against every figure.

Updated 12 criteria comparedSources last checked

The short answer

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.
Pick Amazon Aurora if
Teams on AWS who want a Postgres or MySQL cluster that can throw off a copy-on-write clone of production in minutes, keep up to fifteen readers behind it, and pause to nothing between bursts in serverless mode.

3 sourced criteria separate them:

Engine
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.
Amazon Aurora: MySQL- and PostgreSQL-compatible. Aurora is AWS's own engine rather than a hosted build of either, so compatibility is the claim being made — existing code, tools and applications are stated to work, which is not the same as being the upstream database.
Point-in-time recovery
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.
Amazon Aurora: Any point inside the backup retention period, so up to 35 days. Aurora's backups are continuous and incremental against the cluster volume rather than periodic snapshots plus log replay, which is why AWS states no performance impact while they are taken.
Backup retention
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.
Amazon Aurora: 1 to 35 days. Unlike an RDS DB instance it cannot be set to 0 — Aurora backs the cluster volume up continuously and there is no way to turn that off.

No affiliate links, sponsored placements or paid rankings appear on this site. Ordering follows the sourced data and the stated criteria.

01.

At a glance.

CriterionAmazon RDSAmazon Aurora
Data
EnginePostgreSQL, 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.MySQL- and PostgreSQL-compatible. Aurora is AWS's own engine rather than a hosted build of either, so compatibility is the claim being made — existing code, tools and applications are stated to work, which is not the same as being the upstream database.
Point-in-time recovery
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.
Any point inside the backup retention period, so up to 35 days. Aurora's backups are continuous and incremental against the cluster volume rather than periodic snapshots plus log replay, which is why AWS states no performance impact while they are taken.
Read replicasSupported — 15 per primary, raisable on requestSupported — 15 per cluster, a quota AWS will not raise
Backup retentionBetween 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.1 to 35 days. Unlike an RDS DB instance it cannot be set to 0 — Aurora backs the cluster volume up continuously and there is no way to turn that off.

Only criteria both providers publish appear here; a tinted cell marks a real difference. Criteria only one of them documents are listed below, and an absence there means we found no source — not that the feature is missing. How we source this.

The small bar above a value is inetGeek's own lean toward that side — computed from the same facts shown, never a number the provider published. See the picker below "The short answer" to weigh only the criteria you care about.

02.

Where they differ.

Engine

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.
Amazon Aurora
MySQL- and PostgreSQL-compatible. Aurora is AWS's own engine rather than a hosted build of either, so compatibility is the claim being made — existing code, tools and applications are stated to work, which is not the same as being the upstream database.
Sources (2) →
  • Amazon RDS for PostgreSQL — Amazon Relational Database Service User Guide ↗

    “Amazon RDS supports DB instances running several versions of PostgreSQL. [...] DB instances running PostgreSQL support Multi-AZ deployments, read replicas, Provisioned IOPS, and can be created inside a virtual private cloud (VPC).”

    Read 2026-09-09 · official docs

  • What is Amazon Aurora? — Amazon Aurora User Guide ↗

    “Amazon Aurora (Aurora) is a fully managed relational database engine that's compatible with MySQL and PostgreSQL. [...] The code, tools, and applications you use today with your existing MySQL and PostgreSQL databases can be used with Aurora.”

    Read 2026-09-09 · official docs

Point-in-time recovery

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.

Amazon Aurora

Any point inside the backup retention period, so up to 35 days. Aurora's backups are continuous and incremental against the cluster volume rather than periodic snapshots plus log replay, which is why AWS states no performance impact while they are taken.

Sources (2) →

Backup retention

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.
Amazon Aurora
1 to 35 days. Unlike an RDS DB instance it cannot be set to 0 — Aurora backs the cluster volume up continuously and there is no way to turn that off.
Sources (2) →
  • Backup retention period — Amazon Relational Database Service User Guide ↗

    “If you create a DB instance using the Amazon RDS API or the AWS CLI and if you don't set the backup retention period, the default backup retention period is one day. If you create a DB instance using the console, the default backup retention period is seven days. [...] You can set the backup retention period of a DB instance to between 0 and 35 days. Setting the backup retention period to 0 disables automated backups. For a Multi-AZ DB cluster, you can set the backup retention period to between 1 and 35 days.”

    Read 2026-09-09 · official docs

  • Backing up and restoring an Aurora DB cluster — Amazon Aurora User Guide ↗

    “Aurora backs up your cluster volume automatically and retains restore data for the length of the backup retention period. [...] You can specify a backup retention period from 1–35 days when you create or modify a DB cluster.”

    Read 2026-09-09 · official docs

When these numbers change, hear about it. Sources are re-checked monthly; a repricing goes out as a short note.

Confirm by email; unsubscribe from any issue. Your address goes to Kit and nowhere else — what we do with it.

03.

Which should you choose?

Choose 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.

Editorial · Palash Bagchi · approved

Choose Amazon Aurora if…

Teams on AWS who want a Postgres or MySQL cluster that can throw off a copy-on-write clone of production in minutes, keep up to fifteen readers behind it, and pause to nothing between bursts in serverless mode.

Editorial · Palash Bagchi · approved

Consider something else if…

  • 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.
  • Amazon Aurora: You want the upstream database rather than a compatible one, or a branch workflow rather than a clone. AWS documents cloning as a way to build a test environment, not as something you do per pull request.
04.

Documented by only one.

These criteria are published by one provider and not the other. An absence here means we have not found a source, not that the feature is missing.

Free tierAmazon Aurora: Yes — capped Free plan plus time-limited credits
Pricing modelAmazon Aurora: Pay per use with no plan fee: instances plus storage plus I/O, or ACU-hours in serverless mode. AWS's own worked example prices serverless compute at $0.12 per ACU-hour on Aurora Standard and $0.156 on Aurora I/O-Optimized in US East (N. Virginia) — the difference being whether I/O is metered separately or folded into a higher compute and storage rate. Provisioned instances also offer Reserved Instance pricing, and usage may qualify for Database Savings Plans against a committed hourly spend.
Managed connection poolingAmazon RDS: Supported
Scales to zeroAmazon Aurora: Supported — serverless capacity mode only
RegionsAmazon Aurora: 34 AWS regions, the same list for the MySQL- and PostgreSQL-compatible editions. Counted from the two availability tables in Aurora's own docs, which publish the regions and no total.
Connection limitAmazon 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.
Database branchingAmazon Aurora: Limited — clones, not a branch workflow
Rewind in placeAmazon Aurora: Limited — Aurora MySQL edition only
05.

Questions this comparison answers.

Should I choose Amazon RDS or Amazon Aurora?

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.

Pick Amazon Aurora if Teams on AWS who want a Postgres or MySQL cluster that can throw off a copy-on-write clone of production in minutes, keep up to fifteen readers behind it, and pause to nothing between bursts in serverless mode.

Every page here is sourced and dated.