CLOUD

AWS RDS Extended Support Is Doubling in 2026 — Here's What You Owe and How to Stop It

By DharmOps TeamMay 12, 202611 min read
AWS RDS extended support cost breakdown for MySQL 5.7 and PostgreSQL 11 in 2026
On this page

7 reached end of standard RDS support on October 31, 2023. PostgreSQL 11 followed on November 9, 2023.

If you are still running either engine version on RDS, you have been paying AWS Extended Support fees for over two years. What most teams do not realise is that Extended Support pricing scales in tiers: Year 1, Year 2, and Year 3 — and on March 1, 2026, Year 3 rates came into effect, doubling the per-vCPU-hour charge.

7 instances — 32 vCPUs — is now paying an additional $56,000 per year on top of their instance compute costs, for the privilege of staying on an unsupported engine version. This guide covers exactly what the Extended Support charges are, how to find them in your AWS Cost Explorer, the three paths to eliminating them, and a real client example where we cut $52,000 in annual RDS spend in six weeks.

Want an expert to handle the upgrade for you? Book a free 30-min diagnostic →

What AWS RDS Extended Support Is and Why It Exists

AWS RDS Extended Support is a paid programme that allows you to continue running end-of-life database engine versions on RDS after their standard maintenance window closes. When a database engine version reaches end of life, AWS stops releasing minor patches and security updates for it under the standard support model. Extended Support buys you continued security patches and engine bug fixes — at a cost — while you plan and execute the upgrade to a supported major version.

The programme exists because major version upgrades carry real risk and take real time, and AWS does not want to force mass outages by simply stopping patching overnight. The trade-off is deliberate: Extended Support is priced to make staying on old versions progressively more expensive, so teams have a financial incentive to upgrade rather than let technical debt compound indefinitely.

Which RDS Engine Versions Are in Extended Support Right Now

0 (end of standard support: April 30, 2026 — now in Year 1), PostgreSQL 11 (end of standard support: November 9, 2023 — now in Year 3), PostgreSQL 12 (end of standard support: November 14, 2024 — now in Year 2), and PostgreSQL 13 (end of standard support: November 13, 2025 — now in Year 1). 0 entering Extended Support in April 2026 caught many teams off guard — it is a widely deployed version that engineers assumed was still current. PostgreSQL 12 and 13 are also accruing Extended Support charges, though at Year 1 and Year 2 rates respectively.

If you are running any of these engine versions, you are paying Extended Support fees on every instance, every hour.

-- Query to check your RDS engine version from any PostgreSQL instance
SELECT version();

-- For MySQL:
SELECT VERSION();

-- In AWS CLI: list all RDS instances and their engine versions
aws rds describe-db-instances \
  --query 'DBInstances[*].{ID:DBInstanceIdentifier,Engine:Engine,Version:EngineVersion,Class:DBInstanceClass}' \
  --output table

How Much Extended Support Is Actually Costing You — The Math

Extended Support is charged per vCPU per hour on top of the normal instance cost. 7 and PostgreSQL 11. At Year 3, this doubles the effective cost for many instance types.

2xlarge has 8 vCPUs. 11 × 8,760 hours = $7,709 per year, per instance. A common production setup — two primary instances plus two read replicas — means 32 vCPUs and $30,835 per year in Extended Support fees alone.

4xlarge (16 vCPUs) costs $15,418/year in Extended Support. 7 clusters, the Extended Support fee applies to every instance in the cluster independently. To find your exact charges, open AWS Cost Explorer, filter by Service: Amazon Relational Database Service, and look for the usage type containing ExtendedSupport.

The line items will show your actual vCPU-hours being billed.

# Calculate your Extended Support cost
# Year 3 rate: $0.11/vCPU/hour

VCPUS_PER_INSTANCE=8          # db.r6g.2xlarge = 8 vCPUs
INSTANCE_COUNT=4              # 2 primaries + 2 read replicas
HOURS_PER_YEAR=8760
RATE=0.11

ANNUAL_COST=$(echo "$VCPUS_PER_INSTANCE * $INSTANCE_COUNT * $HOURS_PER_YEAR * $RATE" | bc)
echo "Annual Extended Support cost: $ANNUAL_COST"
# Output: Annual Extended Support cost: $30835.20

# AWS CLI: find Extended Support line items
aws ce get-cost-and-usage \
  --time-period Start=2026-03-01,End=2026-05-01 \
  --granularity MONTHLY \
  --filter '{"Dimensions":{"Key":"SERVICE","Values":["Amazon Relational Database Service"]}}' \
  --group-by Type=DIMENSION,Key=USAGE_TYPE \
  --metrics BlendedCost

Related: why your AWS RDS bill might be high, the Database FinOps guide

Path 1: In-Place Major Version Upgrade on RDS

The lowest-friction path to eliminating Extended Support charges is an in-place major version upgrade on RDS. AWS supports major version upgrades through the console, CLI, and Terraform for most engine combinations. 0 first).

For PostgreSQL 11, the supported paths include 11 → 13 → 15 → 16 or 11 → 14 → 16 depending on your current minor version. The upgrade process involves a brief outage — typically 5 to 20 minutes for the engine version switch itself, depending on database size and parameter group changes. AWS performs parameter group compatibility checks before the upgrade, and any incompatible settings must be resolved first.

The critical pre-upgrade steps are: run the AWS RDS Upgrade Prechecks, test the upgrade in a staging environment with a recent snapshot, and verify your application works against the target version before touching production. 0, the most common breaking changes are: removed functions (PASSWORD(), ENCODE(), DECODE()), changes to utf8mb3 vs utf8mb4 defaults, and stricter SQL mode by default.

# Pre-upgrade: create a snapshot
aws rds create-db-snapshot \
  --db-instance-identifier prod-mysql-57 \
  --db-snapshot-identifier pre-upgrade-snapshot-$(date +%Y%m%d)

# Run upgrade prechecks (MySQL 5.7 → 8.0)
aws rds describe-db-upgrade-prechecks \
  --db-instance-identifier prod-mysql-57 \
  --target-engine-version 8.0.36

# Perform the upgrade (applies during maintenance window)
aws rds modify-db-instance \
  --db-instance-identifier prod-mysql-57 \
  --engine-version 8.0.36 \
  --allow-major-version-upgrade \
  --apply-immediately  # remove this flag to schedule during maintenance window

Path 2: Migrate to Aurora — Bigger Jump, Bigger Payoff

r-class instances at meaningful I/O volume, migrating to Aurora during the upgrade is worth evaluating alongside a simple version bump. 0. Aurora PostgreSQL 16 is wire-compatible with PostgreSQL 16.

The migration eliminates Extended Support exposure on the current version and delivers architectural benefits: Aurora's distributed storage layer eliminates storage I/O bottlenecks, read replicas share storage and eliminate replication lag from write-heavy workloads, and failover completes in under 30 seconds instead of the 1–2 minute RDS failover. For I/O-intensive workloads, Aurora's storage architecture frequently reduces total AWS spend even at Aurora's higher per-instance pricing — because you eliminate provisioned IOPS and gp3 baseline costs. The migration path uses AWS Database Migration Service (DMS) for live data replication with minimal cutover downtime, or a logical dump-restore approach for smaller databases where a longer maintenance window is acceptable.

# Option A: Snapshot restore to Aurora (fast, ~30 min downtime for cutover)
# 1. Create final snapshot of RDS instance
aws rds create-db-snapshot \
  --db-instance-identifier prod-postgres-11 \
  --db-snapshot-identifier final-pre-aurora-migration

# 2. Restore snapshot to Aurora cluster
aws rds restore-db-cluster-from-snapshot \
  --db-cluster-identifier prod-aurora-cluster \
  --snapshot-identifier final-pre-aurora-migration \
  --engine aurora-postgresql \
  --engine-version 16.2

# 3. Add primary instance to the cluster
aws rds create-db-instance \
  --db-instance-identifier prod-aurora-primary \
  --db-cluster-identifier prod-aurora-cluster \
  --db-instance-class db.r8g.2xlarge \
  --engine aurora-postgresql

Related: our database migration service

Path 3: Blue/Green Deployment for Zero-Downtime Upgrades

AWS RDS Blue/Green Deployments are the safest path for mission-critical databases that cannot tolerate a maintenance window. The Blue/Green feature creates a staging replica of your production database (Green), applies the major version upgrade to the Green environment, and then performs a switchover that redirects all connections with typically under 60 seconds of application interruption. The advantage over a direct in-place upgrade is that you can test the upgraded Green environment against real production traffic patterns — using read replica promotion or a shadow traffic approach — before committing to the switchover.

If the Green environment behaves unexpectedly, you can delete it without touching production. After switchover, the original Blue environment is retained as a rollback point. 0 and for RDS PostgreSQL cross-version upgrades.

The feature is included in standard RDS pricing — no additional charge beyond the doubled instance cost during the switchover period.

# Create a Blue/Green deployment for zero-downtime upgrade
aws rds create-blue-green-deployment \
  --blue-green-deployment-name mysql57-to-80-upgrade \
  --source arn:aws:rds:us-east-1:123456789:db:prod-mysql-57 \
  --target-engine-version 8.0.36

# Monitor the Green environment creation
aws rds describe-blue-green-deployments \
  --filters Name=blue-green-deployment-name,Values=mysql57-to-80-upgrade

# After testing Green environment, perform switchover
aws rds switchover-blue-green-deployment \
  --blue-green-deployment-identifier bgd-1234567890abcdef0 \
  --switchover-timeout 300  # seconds before rollback if switchover fails

How to Find Your Extended Support Exposure Before the Next Bill

The fastest way to audit your Extended Support exposure is through the AWS CLI combined with Cost Explorer. First, list every RDS instance and its engine version to identify which instances are on Extended Support versions. Second, calculate the vCPU count for each instance using the instance class.

Third, multiply by the appropriate Extended Support rate for the year of support you are in. AWS also provides a Cost Explorer filter specifically for Extended Support charges — filter by Usage Type containing 'ExtendedSupport' to see the exact dollar amount you paid last month. For teams with multiple accounts, use AWS Organizations and the management account's Cost Explorer to aggregate across all member accounts.

Setting a Cost Explorer alert for the ExtendedSupport usage type gives you early warning if additional instances inadvertently end up on extended support versions.

# List all RDS instances with end-of-support engine versions
aws rds describe-db-instances \
  --query 'DBInstances[?contains(`["5.7","8.0","11","12","13"]`, EngineVersion)].{
    ID:DBInstanceIdentifier,
    Engine:Engine,
    Version:EngineVersion,
    Class:DBInstanceClass,
    MultiAZ:MultiAZ
  }' \
  --output table

# Check Extended Support charges in Cost Explorer (last 3 months)
aws ce get-cost-and-usage \
  --time-period Start=2026-03-01,End=2026-06-01 \
  --granularity MONTHLY \
  --filter '{
    "And": [
      {"Dimensions":{"Key":"SERVICE","Values":["Amazon Relational Database Service"]}},
      {"Dimensions":{"Key":"USAGE_TYPE_GROUP","Values":["RDS: Extended Support"]}}
    ]
  }' \
  --metrics BlendedCost

Related: what's new in PostgreSQL 18

One Client's $52,000 Annual Reduction in Six Weeks

A fintech client came to us after noticing their RDS bill had increased by $4,300/month between January and March 2026 without any infrastructure changes. 7 instances entering Extended Support Year 3. 2xlarge instances across two environments — production and staging — totalling 48 vCPUs.

11/vCPU/hour, the annual Extended Support charge was $46,217. Including the Year 2 charges from the previous 12 months, they had already spent over $23,000 on Extended Support before noticing the line item. Our engagement: Week 1, we ran upgrade prechecks on all six instances and identified three incompatible stored procedures using the deprecated PASSWORD() function.

0 upgrade on staging. Week 3, we upgraded production across two maintenance windows — three instances per window, 12 minutes each. Week 6, we upgraded the remaining read replicas and disabled Extended Support billing entirely.

Total downtime across both production maintenance windows: 24 minutes. xlarge rightsizing that delivered 18% better price-performance).

$52,000 saved. 24 minutes of downtime. Six weeks.

A senior DBA can run the same audit on your RDS bill and tell you exactly what you're paying in Extended Support fees — free, 30 minutes.

Book Free Diagnostic

AWS RDS Extended Support is a feature that exists for good reason — major version upgrades take time and carry risk. 7 or PostgreSQL 11 costs more than the upgrade effort in most cases. The upgrade paths are well-established: in-place major version upgrade for lower-risk workloads, Blue/Green Deployment for zero-downtime requirements, and Aurora migration for teams who want to eliminate the upgrade problem at the infrastructure level.

The first step is the audit: find every instance running an end-of-support version, calculate what you are paying per month, and set a deadline for the upgrade. 0 upgrade in a two-week sprint once prechecks are clean. The sooner you start, the more of the Extended Support bill you recover.

Frequently Asked Questions

What is AWS RDS Extended Support?

AWS RDS Extended Support is a paid programme that lets you continue running end-of-life database engine versions on Amazon RDS after their standard maintenance window closes. It provides continued security patches at a cost — charged per vCPU per hour on top of normal instance costs. Extended Support pricing scales in three tiers: Year 1, Year 2, and Year 3, with the Year 3 rate doubling from the Year 2 rate effective March 1, 2026.

How much does AWS RDS Extended Support cost in 2026?

In Year 3 (effective March 1, 2026), RDS Extended Support costs $0.11 per vCPU per hour for MySQL 5.7 and PostgreSQL 11. A db.r6g.2xlarge with 8 vCPUs costs $7,709 per year per instance in Extended Support fees alone. A typical setup of 4 instances (2 primaries + 2 read replicas) with 32 vCPUs costs $30,835 per year — on top of normal RDS compute costs.

Which AWS RDS engine versions are in Extended Support in 2026?

As of May 2026: MySQL 5.7 (Year 3, since October 2023), MySQL 8.0 (Year 1, since April 2026), PostgreSQL 11 (Year 3, since November 2023), PostgreSQL 12 (Year 2, since November 2024), and PostgreSQL 13 (Year 1, since November 2025). MySQL 8.0 entering Extended Support in April 2026 caught many engineering teams off guard.

How do I stop paying AWS RDS Extended Support charges?

Upgrade to a currently supported major engine version. For MySQL 5.7, upgrade to 8.0 or 8.4. For PostgreSQL 11, upgrade to 14, 15, or 16. Options include: in-place major version upgrade (5–20 minutes of downtime), AWS Blue/Green Deployment (under 60 seconds of switchover time), or migration to Aurora with a newer engine. Extended Support charges stop the moment the upgrade completes.

How long does an RDS major version upgrade take?

An in-place major version upgrade on RDS causes 5–20 minutes of downtime during the engine version switch. Using AWS Blue/Green Deployments reduces the switchover to under 60 seconds after the Green environment is validated. Preparation work — running prechecks, testing on staging — takes 1–2 weeks. The upgrade itself is fast; the planning and testing is where the time goes.

Need Expert Database Guidance?

Book a free 30-minute diagnostic call. Whether you are debugging slow queries, evaluating databases, or planning a migration — we will give you specific, actionable recommendations, not generic advice.

BOOK DIAGNOSTIC

Related Articles

How to Debug Slow SQL Queries: A Step-by-Step Guide

February 18, 2026

How to Debug Slow SQL Queries: A Step-by-Step Guide

Learn how to find, diagnose, and fix slow SQL queries using EXPLAIN ANALYZE, slow query logs, and proven debugging techniques. Covers missing indexes, N+1 patterns, full table scans, and query rewriting — with real SQL examples throughout.

Read more
PostgreSQL vs MySQL in 2026: A Complete Guide to Choosing the Right Database

February 25, 2026

PostgreSQL vs MySQL in 2026: A Complete Guide to Choosing the Right Database

A complete PostgreSQL vs MySQL comparison for 2026. Performance benchmarks, JSON support, replication models, licensing, migration complexity, and a practical decision framework for CTOs, architects, and developers.

Read more
Database Backup and Recovery: A Complete Best Practices Guide

March 3, 2026

Database Backup and Recovery: A Complete Best Practices Guide

Everything you need to build a complete database backup strategy: full vs incremental vs differential backups, PITR setup, RTO/RPO planning, tool comparison (pg_basebackup, WAL-G, Barman), recovery testing procedures, and compliance retention requirements.

Read more
AWS RDS Performance Tuning: A Complete Optimization Guide

March 5, 2026

AWS RDS Performance Tuning: A Complete Optimization Guide

How to get maximum performance from AWS RDS: choosing the right instance class, tuning PostgreSQL parameter groups, configuring read replicas, optimising GP3 storage and IOPS, setting up CloudWatch and Performance Insights, cutting costs, and when to migrate to Aurora.

Read more
PostgreSQL Connection Exhaustion: How to Fix 'Too Many Connections' with PgBouncer

May 16, 2026

PostgreSQL Connection Exhaustion: How to Fix 'Too Many Connections' with PgBouncer

When your application hits PostgreSQL's connection limit, every new connection attempt fails immediately. The database looks unhealthy, the app returns 500s, and engineers blame the database — but the database is usually fine. The problem is connection management. This guide covers why PostgreSQL's architecture creates this problem, how to diagnose it, and how to deploy PgBouncer to eliminate it.

Read more
Your API Is Slow. Your Database Probably Isn't the Problem.

May 19, 2026

Your API Is Slow. Your Database Probably Isn't the Problem.

When an API endpoint starts crawling, the database gets blamed first. Most of the time, it's wrong — 80% of API latency problems trace to the application layer. This guide shows you how to isolate where the latency actually lives, the four most common app-layer causes, and how to fix each one. Includes a real case: p99 from 4.2 seconds to 180ms.

Read more
PostgreSQL 18: Every Performance Improvement You Need to Know

May 22, 2026

PostgreSQL 18: Every Performance Improvement You Need to Know

PostgreSQL 18 entered public beta in April 2026 with meaningful performance gains: 20–30% short query throughput improvements, major vacuum and autovacuum changes, an enhanced query planner, reliable logical replication, and pgvector improvements for AI workloads. Here is what changed, what it means in practice, and how to test it before upgrading production.

Read more
What Is the N+1 Query Problem? (And Why It Kills APIs)

June 16, 2026

What Is the N+1 Query Problem? (And Why It Kills APIs)

Your API takes four seconds to load. The database CPU looks healthy. You add a read replica — nothing changes. You upgrade the instance — still slow. Someone profiles the request and finds one API call is generating 501 database queries. This is the N+1 query problem: one of the most common and expensive performance issues in production applications. It doesn't look like a bug, throws no errors, and hides inside clean ORM code. This guide covers what it is, why it happens, how to detect it in production, and five ways to fix it permanently.

Read more
pgvector vs Pinecone in 2026: Benchmarks, Cost, and When to Use Each

June 16, 2026

pgvector vs Pinecone in 2026: Benchmarks, Cost, and When to Use Each

Most teams evaluating vector search assume a serious AI application needs a dedicated vector database. That assumption is increasingly outdated. pgvector's HNSW indexing, PostgreSQL 18's throughput gains, and managed PostgreSQL offerings have shifted the decision boundary. This guide covers where the performance gap actually stands, cost at three workload sizes, the hybrid SQL+vector search advantage most comparisons miss, and the exact conditions where Pinecone becomes the right call.

Read more
The Database FinOps Guide: Stop Overpaying for Cloud Databases

June 16, 2026

The Database FinOps Guide: Stop Overpaying for Cloud Databases

Cloud database bills grow in ways that are hard to see until the number is already embarrassing. Overprovisioned instances, idle read replicas, storage you forgot was accumulating, queries running full table scans on every request — each one adds a line item that compounds quietly. This guide walks through what Database FinOps actually means, the seven biggest sources of database waste, the four-step FinOps process, and a realistic SaaS example that cut $36,000 per year without touching the application code.

Read more
Managed DBA vs. Hiring In-House: The Full Cost Breakdown for 2026

May 26, 2026

Managed DBA vs. Hiring In-House: The Full Cost Breakdown for 2026

Most engineering leaders underestimate the true cost of an in-house DBA by 40–60% because they think salary, not total cost. This guide breaks down the full economics of both models, the scenarios where each wins, and a side-by-side comparison across four company sizes — from a 15-person startup to a 400-person scale-up.

Read more
Why Is My AWS RDS Bill So High? A Diagnostic Guide

June 16, 2026

Why Is My AWS RDS Bill So High? A Diagnostic Guide

Your AWS RDS bill is high for a reason — usually several. This guide covers the seven most common causes: overprovisioned compute, forgotten read replicas, inefficient queries, storage waste, gp2 storage, on-demand pricing, and solving the wrong problem entirely. Includes CloudWatch diagnostic commands, pg_stat_statements queries, and a 15-minute audit checklist.

Read more