RDS storage autoscaling prevents out-of-space outages by growing your volume automatically, and the feature itself is free. The catch is that it never shrinks, so a one-time spike can leave you paying for oversized storage for the life of the instance. Here is how to use it without the ratchet.
RDS gp3 gives a free IOPS and throughput baseline for a flat per-GB price, while io1 charges separately for every provisioned IOPS. For most databases gp3 is dramatically cheaper. Here is the pricing, the break-even, and when io1 still earns its cost.
RDS Reserved Instances cut the hourly rate of a database by up to about 40 percent for a one-year term and 60 percent for three years, in exchange for a commitment. Here is how the payment options compare, where the size-flexibility applies, and how to avoid over-committing.
Running Postgres or MySQL yourself on EC2 is cheaper per hour than RDS, but RDS handles backups, failover, and patching. The premium is real, and so is the operational burden it removes. Here is when self-hosting a database pays off, with numbers.
A managed Postgres database on AWS costs the instance, the storage, the backups, and the data transfer, from around 15 dollars a month for a tiny dev instance to hundreds for production. Here is what drives RDS and Aurora Postgres pricing and how to keep it lean.
RDS Multi-AZ roughly doubles instance and storage cost by running a standby in a second Availability Zone for automatic failover. Here is what you actually pay for, and when the availability is worth the premium.
Each RDS read replica is a full additional instance with its own compute and storage cost, plus data transfer for cross-region replicas. Here is how read replica pricing works and how to scale reads without overpaying.
RDS instances are often provisioned larger than the workload needs, and unlike stateless compute, resizing a database takes care. Here is how to right-size RDS instance class, storage, and IOPS to real usage without risking the database.
Connection pooling lets a database serve more clients with fewer resources, so you can run a smaller, cheaper instance. The cost impact comes from avoiding over-provisioning driven by connection limits. Here is how pooling saves money.
RDS Proxy bills per vCPU of the database it fronts, continuously, whether or not connections flow. Here's how the charge works, when it pays for itself, and when it's overhead you can skip.
Aurora I/O Optimized eliminates per-I/O charges but adds ~30% to instance/storage rates. The break-even is around 25% I/O share of total cost. Here's the math, when to switch, and how to apply it in Terraform.
RDS is cheaper per instance hour; Aurora has more efficient storage and built-in replicas. Here's when each one wins, including Aurora I/O Optimized, Aurora Serverless v2, and Reserved Capacity options.