Skip to main content

AI & assistant-friendly summary

This section provides structured content for AI assistants and search engines. You can cite or summarize it when referencing this page.

Summary

import PricingHeroStats from '~/components/blog/PricingHeroStats. astro'; import PricingDimensionTable from '~/components/blog/PricingDimensionTable. astro'; import BillSurpriseCallout from '~/components/blog/BillSurpriseCallout

Key Facts

  • Aurora bills instance hours plus storage plus I/O — or storage at a 125% premium with I/O bundled (I/O-Optimized)
  • Serverless v2 at $0
  • 12 per ACU-hour wins on variable workloads, loses on steady traffic above 4 ACU
  • The right shape for a workload depends on traffic pattern, I/O intensity, and consistency requirements; the wrong shape can land the bill 2–5× higher than necessary
  • PricingHeroStats stats={[ { value: '$0

Entity Definitions

Lambda
Lambda is an AWS service discussed in this article.
RDS
RDS is an AWS service discussed in this article.
Aurora
Aurora is an AWS service discussed in this article.
Amazon Aurora
Amazon Aurora is an AWS service discussed in this article.
CloudWatch
CloudWatch is an AWS service discussed in this article.
serverless
serverless is a cloud computing concept discussed in this article.

Amazon Aurora Pricing: The I/O-Optimized Crossover and the Serverless v2 ACU Trap

Quick summary: Aurora bills instance hours plus storage plus I/O — or storage at a 125% premium with I/O bundled (I/O-Optimized). Serverless v2 at $0.12 per ACU-hour wins on variable workloads, loses on steady traffic above 4 ACU. Global Database doubles the price per secondary region plus replicated-write fees. Backtrack adds per-change-record cost most teams never factor in.

Key Takeaways

  • Aurora bills instance hours plus storage plus I/O — or storage at a 125% premium with I/O bundled (I/O-Optimized)
  • Serverless v2 at $0
  • 12 per ACU-hour wins on variable workloads, loses on steady traffic above 4 ACU
  • The right shape for a workload depends on traffic pattern, I/O intensity, and consistency requirements; the wrong shape can land the bill 2–5× higher than necessary
  • PricingHeroStats stats={[ { value: '$0
Amazon Aurora Pricing: The I/O-Optimized Crossover and the Serverless v2 ACU Trap
Table of Contents

Amazon Aurora is AWS’s flagship cloud-native relational database, available in MySQL and PostgreSQL flavors with several deployment shapes (provisioned, Serverless v2, Global Database, Limitless, DSQL). The pricing reflects that breadth — instance hours, two storage models, optional features each with their own line items, and replication multipliers for multi-region. The right shape for a workload depends on traffic pattern, I/O intensity, and consistency requirements; the wrong shape can land the bill 2–5× higher than necessary.

This post is the bill story. For the broader Aurora-vs-RDS architectural decision, the Aurora Serverless v2 vs provisioned comparison covers the choice within Aurora; the RDS vs Aurora comparison covers when Aurora is the right primitive vs standard RDS.

The Eight Aurora Billing Dimensions

Aurora pricing breakdown — us-east-1, June 2026

Prices in us-east-1

Instance + storage + I/O is the standard model. Serverless v2 collapses these into per-ACU billing; Global Database compounds per region.

db.r6g.large (provisioned)

$212

20% premium over standard RDS rate

Unit price
$0.29 / hour
Example workload
1 instance × 730 hours

db.r6g.xlarge (provisioned)

$423

Doubles per tier

Unit price
$0.58 / hour
Example workload
1 instance × 730 hours

Serverless v2

$175

Scales by 0.5 ACU increments

Unit price
$0.12 / ACU-hour
Example workload
2 ACU sustained

Standard storage

$50 + $10 = $60

Cheaper for low-I/O workloads

Unit price
$0.10 / GB-month + $0.20 / M I/O
Example workload
500 GB + 50M I/O / mo

I/O-Optimized storage

$112.50

Break-even at ~25% I/O share of bill

Unit price
$0.225 / GB-month, no I/O charge
Example workload
500 GB

Backup storage (above db size)

$10.50

Free up to size of source database

Unit price
$0.021 / GB-month
Example workload
500 GB backup beyond db size

Backtrack (Aurora MySQL)

$1.20

Per change-record stored

Unit price
$0.012 / M change records
Example workload
100M change records / month

Aurora Global Database

2× cluster cost + transfer

Cross-region transfer $0.02/GB

Unit price
Each region: full cluster + $0.20/M replicated writes
Example workload
2-region setup

Data API

$0

Useful for Lambda integration

Unit price
Free
Example workload
HTTP query interface

Aurora Limitless (routing + shards)

Varies with shard count

For workloads beyond single-cluster scale

Unit price
ACU-based
Example workload
Sharded Aurora PostgreSQL

Reserved Instance discounts apply to provisioned Aurora instances (40–75% off the on-demand rate depending on term). Serverless v2 has no RI mechanism.

I/O-Optimized vs Standard: The 25% Crossover

Standard Aurora storage bills $0.10/GB-month plus $0.20 per million I/O operations. I/O-Optimized bills $0.225/GB-month with no per-I/O charge — a 125% premium on storage in exchange for unlimited I/O.

The crossover: when I/O costs exceed roughly 25% of your Aurora bill, I/O-Optimized is cheaper.

Standard vs I/O-Optimized — 500 GB database, three I/O profiles

Prices in us-east-1

Same data volume, different I/O rates. The decision is per-cluster, not per-application.

Standard, 10M I/O / mo

$52

Standard wins for low-I/O

Unit price
$50 storage + $2 I/O
Example workload
Read-mostly low-volume

I/O-Optimized, same workload

$112.50

2× more expensive at low I/O

Unit price
$112.50 flat
Example workload
Low-I/O workload

Standard, 500M I/O / mo

$150

I/O catching up to storage

Unit price
$50 storage + $100 I/O
Example workload
Moderate OLTP

I/O-Optimized, same workload

$112.50

I/O-Optimized wins

Unit price
$112.50 flat
Example workload
Moderate OLTP

Standard, 2B I/O / mo

$450

I/O dominates

Unit price
$50 storage + $400 I/O
Example workload
High-throughput OLTP

I/O-Optimized, same workload

$112.50

75% cheaper

Unit price
$112.50 flat
Example workload
High-throughput OLTP

The crossover is at roughly 300M I/O / month for a 500 GB database. Beyond that, I/O-Optimized is unconditionally cheaper.

The audit pattern: check CloudWatch VolumeReadIOPs and VolumeWriteIOPs for your Aurora clusters over the last month, sum to get monthly I/O, multiply by $0.20/M to get the Standard-tier I/O bill, compare against the premium of I/O-Optimized. The decision is per-cluster.

Serverless v2 vs Provisioned: The 4-ACU Break-Even

Serverless v2 bills $0.12 per ACU-hour where 1 ACU represents approximately 2 GB of memory and corresponding CPU/network. The pricing scales linearly: 2 ACU = $0.24/hour, 4 ACU = $0.48/hour, 16 ACU = $1.92/hour.

The break-even with provisioned db.r6g.large at $0.29/hour: roughly 2.4 ACU. Above that, Serverless v2 costs more per hour than provisioned for equivalent capacity.

Serverless v2 vs provisioned — usage scenarios

Prices in us-east-1

Serverless v2 wins on variable workloads; provisioned wins on steady traffic above the break-even capacity.

Dev / test, scales to 0 nights/weekends

~$26

Scaling to zero is the killer feature

Unit price
Serverless v2 avg 0.5 ACU
Example workload
40% of hours active

Variable production, avg 2 ACU peak 8 ACU

~$263

Cheaper than always-on db.r6g.xlarge

Unit price
Serverless v2 avg ~3 ACU
Example workload
Variable web app load

Steady production, sustained 4 ACU

$350

Approaching break-even

Unit price
Serverless v2
Example workload
4 ACU × 730h

Same workload on provisioned

$212

40% cheaper for steady traffic

Unit price
db.r6g.large
Example workload
Always-on

Steady production, sustained 8 ACU

$700

Significantly more than provisioned

Unit price
Serverless v2
Example workload
8 ACU × 730h

Same workload on provisioned

$423

40% cheaper for sustained 8 ACU

Unit price
db.r6g.xlarge
Example workload
Always-on

Scaling to zero on Serverless v2 (supported for dev environments) eliminates the cost when idle — the killer feature for non-production workloads.

Global Database: Each Region Is Full Cost

Aurora Global Database replicates a primary cluster to secondary regions with sub-second replication lag. Each secondary region runs its own Aurora cluster — full instance cost, full storage cost. The primary also pays for replicated writes ($0.20 per million writes replicated) and the inter-region data transfer ($0.02/GB).

A 2-region Global Database with db.r6g.xlarge instances effectively doubles the database tier cost — from $423/month to $850+/month for the instances alone. A 3-region setup roughly triples it.

The right use cases:

  • Active-active multi-region writes: applications where users in different regions write locally and replicate globally. (For pure active-active write workloads, evaluate Aurora DSQL which is the newer primitive.)
  • Sub-second cross-region read locality: serving users in multiple regions with local-latency reads.
  • Low-RPO disaster recovery: cross-region failover with under-1-minute RPO.

The wrong use case: standard DR with relaxed RPO. A single-region cluster with cross-region automated snapshots achieves multi-hour RPO at dramatically lower cost.

Backtrack: The Quiet Per-Change-Record Line

Aurora Backtrack (MySQL only) lets you rewind the cluster to a point within the configured retention window (1–72 hours) without restoring from a backup. The cost: $0.012 per million change records stored.

For low-write databases, this is essentially free. For high-write OLTP databases generating hundreds of millions of change records per day, the line item becomes material — a database with 500M change records/day at 72-hour retention bills ~$13/day, ~$390/month for Backtrack alone.

The mitigations:

  • Match retention to operational need. 24-hour retention covers “rewind that bad deploy from this morning”; 72-hour retention is rarely operationally useful.
  • Evaluate vs PITR. Point-in-Time Recovery from automated backups is free but slower (full restore from snapshot + log replay). For low-frequency rewind use cases, PITR may suffice.

When to Use Each Aurora Shape

Provisioned for steady production; Serverless v2 for variable / dev; Global Database for multi-region requirements; Limitless for beyond-single-cluster scale.

Use when

  • Provisioned Aurora: steady production traffic above ~4 ACU equivalent; predictable load
  • Provisioned + Reserved Instances: predictable production for 1+ year of usage — substantial discount
  • Serverless v2: variable production traffic with high peak-to-average ratio; dev/test with scale-to-zero
  • I/O-Optimized storage: workloads with sustained I/O above ~25% of the bill
  • Global Database: multi-region active-active writes, sub-second cross-region read locality, low-RPO DR
  • Aurora Limitless: workloads that exceed single-cluster scale and need automatic sharding
  • Aurora DSQL: serverless distributed SQL with multi-region active-active for greenfield workloads

Avoid when

  • Serverless v2 for steady high-utilization workloads — provisioned is cheaper
  • Standard storage on high-I/O workloads — I/O-Optimized saves money
  • Global Database for pure read replication — DAX, app-side cache, or read replica is cheaper
  • Backtrack on high-write databases without retention discipline — silent line item
  • Aurora when standard RDS would suffice — Aurora carries a ~20% instance premium

Aurora is rarely the wrong primitive at the architecture level. The bill problems come from storage class selection, deployment shape, and multi-region overcommit.

A 30-Day Aurora Bill Cleanup Plan

Week 1 — I/O-Optimized evaluation. For each Aurora cluster, calculate the actual I/O volume (CloudWatch VolumeReadIOPs + VolumeWriteIOPs × 30 days). Compare the Standard vs I/O-Optimized cost. Migrate clusters where I/O-Optimized saves money.

Week 2 — Serverless v2 fit audit. Identify clusters on Serverless v2 with sustained ACU consumption above the break-even. Migrate to provisioned. Identify clusters on provisioned with low average utilization — evaluate migration to Serverless v2.

Week 3 — Global Database scope. Review Global Database setups against actual cross-region usage. Where the secondary region is purely DR with relaxed RPO, evaluate replacement with cross-region snapshots.

Week 4 — Backtrack and dev-environment scale-to-zero. Audit Backtrack retention on high-write databases. Configure scale-to-zero on Serverless v2 dev environments to eliminate idle-time cost.

What This Post Doesn’t Cover

  • Aurora DSQL pricing in depth — newer serverless distributed SQL primitive with its own pricing model; covered in our database modernization content.
  • Aurora performance tuning — relevant to bill (reducing I/O reduces Standard tier cost) but covered in our database operations content.
  • Migration from RDS to Aurora — operational migration patterns covered in database migration content.
  • Aurora compatibility-mode specifics (MySQL vs PostgreSQL feature differences affecting cost) — covered separately.

If You Only Do One Thing This Week

Calculate I/O volume for your largest Aurora cluster and decide whether I/O-Optimized would be cheaper. Run a CloudWatch query: sum VolumeReadIOPs + VolumeWriteIOPs over 30 days, multiply by $0.20/M. If the result exceeds 25% of your current Aurora bill for that cluster, migrate to I/O-Optimized. The migration is a one-time storage configuration change; the bill drops on day one and the saving compounds indefinitely.

For the broader RDS-vs-Aurora architectural decision, the RDS vs Aurora comparison covers when Aurora’s premium is worth it.

PP
Palaniappan P

AWS Cloud Architect & AI Expert

AWS-certified cloud architect and AI expert with deep expertise in cloud migrations, cost optimization, and generative AI on AWS.

AWS ArchitectureCloud MigrationGenAI on AWSCost OptimizationDevOps

Recommended Reading

Explore All Articles »
6 min

Amazon EKS Pricing: The $73 Control Plane, the $438/Month Extended Support Trap, and the Auto Mode Markup

EKS control planes are $73/month per cluster. Stay on a Kubernetes version beyond its 14-month standard support and Extended Support kicks in at +$0.50/hour — $438/month per cluster, a 5× multiplier. EKS Auto Mode adds a ~12% markup over standard EC2 + EBS for managed compute simplicity. The compute side (Karpenter, Spot, Graviton) is where most of the bill lives.