aws · rds · pricing
AWS RDS Pricing: The Old-Version Fee Can Beat the Instance
By Aakash Verma ·
AWS RDS pricing is mostly three lines: the DB instance by the hour, the storage by the GB-month, and backup storage past a free allowance. A db.m7g.large running PostgreSQL or MySQL costs $0.168 an hour Single-AZ and $0.337 Multi-AZ, gp3 storage is $0.115 per GB-month (twice that Multi-AZ), and backups beyond the size of your database are $0.095 per GB-month. Then there is a fourth line that a lot of bills picked up this year without anyone touching anything: RDS Extended Support, $0.10 per vCPU-hour, charged automatically when your engine version is past its standard support date.
Every price here is US East (N. Virginia), On-Demand, from the RDS for PostgreSQL pricing page, the RDS for MySQL pricing page and the AWS Price List for RDS (published October 29, 2026), which we checked today, November 7. PostgreSQL and MySQL cost the same per hour on these instance classes, to the tenth of a cent.
The instance line
You pick a class and pay for every hour it exists, busy or idle. A few common ones:
| Class | vCPU / memory | Single-AZ | Multi-AZ (one standby) | Multi-AZ, 730 hours |
|---|---|---|---|---|
| db.t4g.micro | 2 / 1 GiB | $0.016 | $0.032 | $23.36 |
| db.t4g.medium | 2 / 4 GiB | $0.065 | $0.129 | $94.17 |
| db.m7g.large | 2 / 8 GiB | $0.168 | $0.337 | $246.01 |
| db.r7g.large | 2 / 16 GiB | $0.239 | $0.478 | $348.94 |
| db.m7g.2xlarge | 8 / 32 GiB | $0.674 | $1.348 | $984.04 |
Multi-AZ is roughly double because it is two instances: AWS keeps a standby in another Availability Zone that you can’t read from. That’s the right call for a production database you can’t afford to lose for an hour. It’s the wrong call for staging, and we see staging on Multi-AZ more often than you’d think, usually because someone cloned the production settings.
The T4g classes have one extra trap. In Unlimited mode, which is the RDS default for them, sustained CPU above the baseline is billed at $0.075 per vCPU-hour on top of the instance price. A db.t4g.medium pinned at full CPU all month can cost more than the db.m7g.large it was supposed to be cheaper than.
Storage and backups
gp3 and gp2 are both $0.115 per GB-month on RDS Single-AZ and $0.23 Multi-AZ. That surprises people who read our EBS pricing post, because on plain EBS gp3 is cheaper than gp2. On RDS the move to gp3 saves nothing per GB. What it gets you is performance: per the RDS storage docs, gp3 gives 3,000 IOPS and 125 MiB/s under 400 GiB, and 12,000 IOPS and 500 MiB/s from 400 GiB, where gp2 gives 3 IOPS per GiB. Extra gp3 IOPS are $0.02 per IOPS-month above the baseline, and only available at 400 GiB and up.
Provisioned IOPS (io1, io2) is $0.125 per GB-month plus $0.10 per IOPS-month. 3,000 provisioned IOPS is $300 a month before a single row is stored, which is why we look hard at any io1 volume on a database doing 400 IOPS on a busy day.
Backup storage is free up to the size of your provisioned storage in the region, then $0.095 per GB-month. Manual snapshots count against the same pool and never expire on their own. Exporting a snapshot to S3 is $0.013 per GB of snapshot, every time, since exports aren’t incremental.
And storage only grows. You can’t shrink an RDS volume; if autoscaling took a 100 GB database to 900 GB during a bad migration, you pay for 900 GB until you dump and restore into a new instance.
Extended Support: the line nobody ordered
AWS supports each major engine version for a set period. After the RDS end of standard support date, your database doesn’t stop or upgrade. It gets enrolled in RDS Extended Support and billed for it from the next day. The price is per vCPU-hour of the instance class, $0.10 in years one and two and $0.20 in year three, and the charges page says it applies to Multi-AZ standbys too. Reserved Instances don’t cover it.
Where the common versions stand today:
- MySQL 8.0: standard support ended July 31, 2026. Year 1 pricing started August 1, 2026. Year 3 pricing starts August 1, 2028.
- MySQL 5.7: in Extended Support since March 2024, and on year 3 pricing ($0.20) since March 1, 2026.
- PostgreSQL 13: year 1 pricing since March 1, 2026.
- PostgreSQL 12: year 1 since March 1, 2025, year 3 from March 1, 2027.
- PostgreSQL 11: year 3 pricing since April 1, 2026; Extended Support ends March 31, 2027.
- PostgreSQL 14: community end of life is November 12, 2026, next week. On RDS, standard support runs to February 28, 2027, and the fee starts March 1, 2027.
Those dates come from AWS’s PostgreSQL release calendar and the MySQL versions page.

MySQL 8.0 is the big one. It was the default for years, so a lot of the RDS databases still running in 2026 were created on it, and the upgrade to 8.4 is a real major-version change that people keep postponing.
A worked example
Hypothetical, but put together from what a typical small SaaS has. One RDS for MySQL 8.0 database on db.m7g.large, Multi-AZ, 200 GB of gp3, about 300 GB of backups and snapshots, created in 2022 and left alone since.
| Line | Before August 2026 | Now |
|---|---|---|
| Instance, Multi-AZ, 730 hours at $0.337 | $246.01 | $246.01 |
| gp3 storage, 200 GB at $0.23 | $46.00 | $46.00 |
| Backups past the free 200 GB, 100 GB at $0.095 | $9.50 | $9.50 |
| Extended Support: 2 vCPU × 2 instances × $0.10 × 730 | $0 | $292.00 |
| Total a month | $301.51 | $593.51 |
The fee is bigger than the instance. Nobody changed a setting, the app runs exactly as before, and the bill nearly doubled. In August 2028 the same line becomes $584.00 a month. Our RDS pricing calculator now has an engine version box so you can see this for your own class.
Finding it on your bill
In Cost Explorer, filter to Relational Database Service and group by usage type. Extended Support shows up as its own usage type that starts with ExtendedSupport, for example ExtendedSupport:Yr1-Yr2:MySQL8.0 in US East. To list what you run and whether it’s enrolled:
aws rds describe-db-instances \
--query "DBInstances[].[DBInstanceIdentifier,Engine,EngineVersion,DBInstanceClass,MultiAZ,EngineLifecycleSupport]" \
--output table
open-source-rds-extended-support in the last column means you’ll pay once the version passes its date. Setting --engine-lifecycle-support open-source-rds-extended-support-disabled on a database that is already past the date doesn’t just stop the bill: AWS upgrades it automatically to the next supported major version. Do the upgrade yourself instead, after testing it on a restored snapshot. MySQL 8.0 to 8.4 and PostgreSQL 13 to a newer major version both go through RDS’s own major version upgrade path.
If your AWS bill has RDS near the top, this is one of the first lines we check in a free cloud cost audit. For the rest of the AWS bill, our AWS cost optimization service costs $0 up front: you pay 50% of the verified monthly saving for 6 months, then nothing, and nothing at all if we don’t save you money.
Want us to look at your bill?
No upfront fee: for six months you pay half of what we save you each month, then you keep all of it. Nothing saved, nothing owed.
Also here: Free cloud cost audit ($0) · Cloud cost optimization services: $0 up front · Reduce your startup's AWS bill · Pricing: paid only from verified savings · Move from AWS to a European cloud