A buyer side cost comparison of Amazon RDS for MySQL and Amazon Aurora MySQL in 2026. How each one bills, where Aurora earns its premium, and the I/O number that decides the cheaper option.
Amazon RDS for MySQL and Amazon Aurora MySQL run the same engine family, but they bill on different meters. RDS charges instance hours plus provisioned storage. Aurora charges instance hours, storage that grows automatically, and in the standard configuration a separate I/O line that can dominate the bill.
This comparison is for engineering and procurement teams choosing between the two managed MySQL options on AWS in 2026. Read it alongside the AWS EDP and commitment guide and the AWS Savings Plans buyer guide.
Both are managed database services, so you pay for compute by the instance hour. The split shows up in storage and I/O, where the two services use different models.
RDS for MySQL uses a simple meter. You pick an instance class, you provision a fixed amount of storage, and you pay for both whether or not you use them fully.
Aurora separates storage from compute and grows storage automatically. In standard mode it also meters read and write I/O as a distinct line.
AWS documents the two storage modes on the Aurora pricing page. I/O Optimized trades a higher fixed rate for zero per request I/O, which wins once I/O passes about a quarter of your Aurora bill.
There is no single answer. The cheaper option depends on how much I/O your workload drives and how steady it is across the month.
RDS for MySQL vs Aurora MySQL, indicative 2026 cost model
| Cost line | RDS for MySQL | Aurora standard | Aurora I/O Optimized |
|---|---|---|---|
| Instance hour | Baseline | About 20 percent higher | About 30 percent higher |
| Storage | Provisioned, fixed | Auto grow, per GB used | Auto grow, higher per GB |
| I/O | Bundled in storage | Per million requests | Included, no per request |
| Best fit | Steady, predictable load | Low to moderate I/O | High, spiky I/O |
RDS tends to win for steady workloads with predictable storage and modest I/O. You pay for what you provisioned, and there is no surprise I/O line at month end.
Aurora tends to win for read heavy workloads that scale out across replicas, or where automatic storage growth avoids over provisioning. The replica model and failover speed are the usual reasons teams pay the premium.
Comparing only the instance hour rate. The headline rate ignores I/O, which is exactly the line that makes a standard Aurora bill jump on a busy workload. Model the full meter before you switch.
Teams pick Aurora for the instance rate, then get billed on I/O nobody modeled. The deciding number is requests per month, not dollars per hour.
No. Aurora instance hours run about 20 percent higher than the matching RDS class, but the total can land lower for read heavy workloads that use replicas or that would otherwise over provision RDS storage. The deciding factor is I/O volume, not the instance rate.
In standard mode Aurora charges per million read and write I/O requests as a separate line. On a busy workload that line can rival the instance cost, which is why I/O Optimized exists to fold it into a higher fixed rate.
Use I/O Optimized when I/O passes roughly a quarter of your standard Aurora bill. It removes the per request charge in exchange for a higher instance and storage rate, which usually wins for high and spiky I/O.
Largely yes. You can create an Aurora read replica of an RDS for MySQL instance and promote it, which keeps the cutover window short. Test the application against Aurora first, since some MySQL features and parameters differ.
Reserved capacity and EDP commitments cover both services, but the discount math differs because the meters differ. Model the committed spend against your real workload rather than assuming a flat percentage carries across.
RDS for MySQL is usually the simpler and cheaper choice for a small, steady application with predictable storage and low I/O. Aurora earns its premium at scale, on read heavy or bursty workloads, not on modest ones.
AWS EDP commitment mechanics, Savings Plans economics, data egress posture, and the buyer side moves across a multi service AWS estate.
Used across more than five hundred enterprise engagements. Independent. Buyer side. Built for procurement leaders running the next renewal cycle.
Teams pick Aurora for the instance rate, then get billed on I/O nobody modeled. The deciding number is requests per month, not dollars per hour.
500+ enterprise clients. 11 vendor practices. Industry recognized. One conversation can change what you pay for the next three years.
One short note on AWS commitment mechanics, Savings Plans, database cost traps, and the buyer side levers we run in client engagements. No noise.