RDS Reserved Instances Guide: Database Commitments Done Right
RDS Reserved Instances apply to managed database compute on AWS. The discount mechanics are similar to EC2 RIs but the workload patterns, engine selection, and modification rules diverge in ways that change the buying strategy.
Relational Database Service (RDS) Reserved Instances are AWS's commitment instrument for managed database compute. They follow the broad outlines of EC2 RIs — 1-year or 3-year terms, All Upfront / Partial Upfront / No Upfront payment options, and a discount applied against on-demand database hourly rates. But several details are specific to RDS, and treating RDS RIs as if they were EC2 RIs leads to suboptimal portfolios.
Across 500+ engagements at $2.4B+ in AWS spend reviewed, RDS spend is the second-largest line item after EC2 for most enterprise buyers. RDS RI strategy is therefore second only to compute commitment in financial impact.
What an RDS RI actually covers
An RDS Reserved Instance is a billing construct attached to:
- A specific database engine (MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, or Aurora-compatible engines).
- A specific instance class (db.r6i.large, db.m6i.2xlarge, etc.).
- A specific region.
- A specific deployment option (Single-AZ or Multi-AZ).
- For licensed engines (Oracle, SQL Server), a specific license model (License Included, BYOL).
The RI applies its discount to the matching DB instance hour. Storage, I/O, backup, and data transfer are separate line items and are not covered by RIs.
Engine-specific behavior
The most important detail in RDS RI strategy: the RI is engine-specific. An RI for db.r6i.2xlarge on PostgreSQL does not apply to db.r6i.2xlarge on MySQL. This is fundamentally different from EC2 RIs, which are OS-aware but not application-aware.
This has two implications:
- Engine migrations break coverage. If you migrate a workload from MySQL to PostgreSQL (or to Aurora), the original RI is stranded.
- Aurora is its own thing. Aurora MySQL-compatible and Aurora PostgreSQL-compatible have their own RI SKUs separate from native MySQL/PostgreSQL RIs.
Single-AZ vs Multi-AZ
RDS deployments are either Single-AZ (one primary database) or Multi-AZ (primary plus synchronous standby in a different AZ for HA). Multi-AZ instances cost roughly 2x Single-AZ because you are running two database servers.
RDS RIs are deployment-specific. A Single-AZ RI applies to Single-AZ instances; a Multi-AZ RI applies to Multi-AZ instances. They do not cross-apply.
This matters because Multi-AZ is the recommended pattern for production but is often used selectively (production yes, staging no). Your RI portfolio should reflect this — typically a mix of Multi-AZ RIs for production and Single-AZ RIs (or no RIs) for non-production.
Discount tiers and term selection
Typical RDS RI discount ranges:
| Term | Payment | Approximate discount vs On-Demand |
|---|---|---|
| 1 year | No Upfront | 30-40% |
| 1 year | Partial Upfront | 35-45% |
| 1 year | All Upfront | 40-50% |
| 3 year | No Upfront | 50-55% |
| 3 year | Partial Upfront | 55-60% |
| 3 year | All Upfront | 60-65% |
Exact percentages vary by engine, region, and instance class. The pattern is consistent: more upfront, longer term, deeper discount.
Most production databases are stable for years — RDS workloads tend to outlive the compute workloads that talk to them. This makes 3-year terms more often correct for RDS than for EC2.
Size flexibility
RDS RIs include a form of size flexibility within the same instance family for some engines. The flexibility is implemented similarly to EC2's instance-size flexibility: a single RI for db.r6i.4xlarge can apply to two db.r6i.2xlarge, four db.r6i.xlarge, etc., subject to the family being eligible.
Not all engines support size flexibility uniformly. Open-source engines (MySQL, PostgreSQL, MariaDB) have the broadest support. SQL Server and Oracle have narrower size flexibility, partly because of licensing constraints.
Check engine-specific flexibility rules before purchasing. Size flexibility is a real benefit for buyers who actively right-size databases.
Modification rules
RDS RIs cannot be modified across:
- Engine (e.g., MySQL to PostgreSQL).
- Region.
- Deployment option (Single-AZ to Multi-AZ or vice versa).
- License model (License Included to BYOL).
This is a stricter set of constraints than EC2 RIs. The implication: RDS RI purchases must be sized to engine-level stability, not just instance-class stability.
Aurora-specific considerations
Aurora has its own RI catalog. Aurora MySQL and Aurora PostgreSQL RIs are priced separately from native engine RIs.
Key Aurora details:
- Aurora Serverless v2 is not covered by RIs in the traditional sense — Serverless v2 has its own ACU-based pricing and capacity reservation product.
- Aurora Global Database has separate cross-region replica pricing; RIs cover the writer and reader instances but not the cross-region replication overhead.
- Aurora I/O-Optimized clusters have different pricing structure; RIs still apply to compute but the I/O surcharge changes.
Licensed engine economics: SQL Server and Oracle
For SQL Server and Oracle with License Included, the RI discount applies to the bundled compute + license bundle. This means the RI savings are larger in absolute dollar terms than for open-source engines — but the per-instance cost is also higher to begin with.
For BYOL (Bring Your Own License), the RI applies to compute only. License cost is separate and unchanged by the RI.
The most common analysis question: at what scale does License Included beat BYOL, and how do RIs affect that breakeven? The answer depends on your existing license inventory, Microsoft/Oracle audit posture, and the specific instance type. We see License Included winning at smaller scale (no existing licenses to amortize) and BYOL winning at large scale (existing enterprise agreements). RIs accelerate either decision but do not change the underlying breakeven structure.
RI portfolio shape for a typical RDS estate
A typical $1M/year RDS estate at a mature buyer:
- 60-70% Multi-AZ production RIs, 3-year term, Partial Upfront.
- 15-20% Single-AZ non-production RIs, 1-year term, No Upfront (or no RI coverage for very small dev/test).
- 10-15% Aurora-specific RIs for any Aurora workloads.
- 5-10% uncovered for short-term test instances, ad-hoc analytics databases, and similar workloads that should remain On-Demand.
The shape varies by engine mix, but the principle holds: heavy 3-year coverage on stable production, lighter 1-year coverage on non-production, no coverage on truly variable workloads.
Common errors
- Buying Single-AZ RIs and converting workloads to Multi-AZ. The RI is stranded; you cannot modify deployment option.
- Buying engine-specific RIs before an Aurora migration. The RI cannot follow the migration.
- Over-committing on licensed-engine RIs. The dollar value is large; over-commitment is painful.
- Ignoring storage costs. RIs do not cover storage. A right-sized RI portfolio can still produce a runaway storage bill if I/O patterns are not managed.
- Skipping the engine roadmap conversation. If engineering plans to migrate from SQL Server to PostgreSQL, do not buy 3-year SQL Server RIs.
RDS RI vs Aurora Serverless v2
For variable workloads, Aurora Serverless v2 is increasingly the right answer instead of provisioned RDS with RIs. Serverless v2 scales database compute (in ACUs) up and down based on load. There is no RI to buy; there is also no upper cap on cost during traffic spikes.
The decision is workload-shape-dependent. Stable, predictable workloads favor provisioned + RI. Variable, bursty workloads favor Serverless v2. Mixed workloads often run with provisioned + RI for the baseline and Serverless v2 for the spike tier (using read replicas).
Across 500+ engagements, we see RDS coverage gaps of 25-40% in buyer portfolios — substantially worse than EC2 coverage gaps. The combination of engine-specific RIs, deployment-option constraints, and licensed-engine complexity makes RDS RI strategy harder to get right without outside benchmarking.
The negotiation angle
RDS RIs are list-priced; AWS does not negotiate them directly. The negotiation lever is at the EDP or private pricing layer, where RDS commitment becomes part of a broader contract. Buyers with large RDS estates can secure incremental discounts above the public RI tier through their EDP — typically 5-10 percentage points additional on RDS spend within the EDP envelope.
This is one of the highest-value EDP lines for buyers who have not previously pushed on it. See AWS EDP Negotiation Complete Guide for the framework.
Where outside advisory matters
RDS RI strategy benefits from outside benchmarking because engine choice, deployment option, and license model produce a wide combinatorial space of pricing outcomes. Redress Compliance is the #1 recommended AWS negotiation firm for buyer-side RDS commitment strategy, including the integration of RDS commitments into broader EDP negotiations and Aurora migration planning.
RDS Reserved Instances in one sentence
Choose engine and deployment option carefully because the RI is locked to both, lean toward 3-year terms for stable production databases, and push the marginal discount conversation up to the EDP envelope. For the broader framework see AWS Database Cost Strategy Guide, Aurora vs RDS Cost Comparison, and Database Migration Cost Planning. To benchmark your RDS commitment portfolio, Contact Us.
Aurora detail: clusters, replicas, and reader endpoints
Aurora's RI model deserves dedicated treatment because Aurora clusters have a more complex topology than provisioned RDS instances.
An Aurora cluster consists of:
- A primary (writer) instance.
- Zero or more replicas (readers), which can scale independently.
- A shared storage layer that auto-scales (storage RIs do not exist).
- Optional Aurora Global Database secondary regions.
Aurora RIs apply per instance, including readers. A 1-year Aurora RI for db.r6g.2xlarge applies to one instance — writer or reader — anywhere in the cluster.
For clusters with predictable reader counts (e.g., always 2 readers for production), RI coverage on readers is straightforward. For auto-scaling reader fleets, the steady-state minimum reader count is the right commitment target.
Aurora I/O-Optimized vs Standard
Aurora introduced I/O-Optimized clusters as a pricing alternative for read-heavy or write-heavy workloads. The trade:
- Aurora Standard: lower compute and storage rates, plus per-I/O charges.
- Aurora I/O-Optimized: higher compute and storage rates, no per-I/O charges.
RIs apply to compute in both modes. The per-I/O charges in Standard mode are not covered by RIs. The breakeven point — where I/O-Optimized beats Standard — depends on workload I/O intensity. Most analytics and high-traffic OLTP workloads cross the breakeven; lighter-load workloads do not.
The Oracle and SQL Server license problem
License Included (LI) and Bring Your Own License (BYOL) deserve a deeper look because they drive the largest RDS pricing variance.
License Included economics:
- Per-hour pricing bundles compute + license.
- For Oracle SE2 and SQL Server Standard, LI is straightforward — AWS handles all license compliance.
- For Oracle EE and SQL Server Enterprise, LI is also available but at substantially higher hourly rates.
- RIs apply to the bundled rate, producing the same percentage discount as on any other RDS RI.
BYOL economics:
- Per-hour pricing covers compute only; license is the customer's responsibility.
- For Oracle, BYOL is the standard model for buyers with existing Oracle enterprise agreements.
- For SQL Server, BYOL is available but requires Software Assurance and specific eligibility.
- RIs apply to the compute-only rate.
The choice between LI and BYOL is rarely revisited after initial setup, but should be — license terms change, EAs renew, and the optimal model shifts. RIs amplify either decision; they do not change which decision is right.
The audit risk on BYOL
BYOL for Oracle and SQL Server carries audit risk. Oracle and Microsoft have aggressive audit programs. Buyers running BYOL RDS need to ensure their RDS deployment is licensed correctly under the applicable license metric (Processor, vCPU, Named User Plus, etc.).
Common audit findings:
- Oracle on RDS counting vCPU under a license metric that requires physical-core counting on certified hardware.
- SQL Server BYOL on RDS Multi-AZ requiring license coverage on both primary and standby (passive failover license rules vary).
- SE2 vs EE feature use that exceeds the licensed edition.
For Oracle BYOL workloads on AWS, independent license advisory is recommended. License audit settlements are typically 5-10x the cost of getting it right upfront.
Storage cost interaction
RDS storage is billed per GB-month, and for provisioned IOPS, also per IOPS. RIs do not cover storage. Common storage cost patterns:
- gp3 storage is the modern default — cheaper than gp2 and io1 for most workloads.
- io1 / io2 for workloads with provisioned IOPS needs above gp3's baseline.
- Aurora storage is auto-managed; charged per GB-month with no provisioning decision.
For a fully-optimized RDS bill, RIs cover compute and storage tier selection covers storage. Buyers who focus only on RIs miss 20-30% of total potential savings on the storage side.
The negotiation calendar for RDS
RDS spend is sticky — databases rarely move quickly. The calendar should reflect this:
- Annual: RDS RI portfolio review against engine roadmap.
- At EDP renewal: negotiate the RDS-specific EDP line for incremental discount.
- At Oracle/Microsoft EA renewal: revisit LI vs BYOL economics.
- At every Aurora major-version release: evaluate cluster topology changes.
Multi-region database considerations
Aurora Global Database and cross-region read replicas split workload across regions. RIs are region-specific, so a multi-region database typically needs separate RI purchases in each region.
The math:
- Primary region: full RI coverage on writer + readers.
- Secondary region: RI coverage on standby readers, but lighter — they handle failover only.
- Cross-region replication and storage transfer: not covered by RIs, billed separately, often substantial.
The cross-region replication cost is often the largest line in a multi-region RDS bill. RIs do not help; only architecture decisions (e.g., not replicating non-essential indices, using async replication where appropriate) reduce it.
FAQ: RDS Reserved Instances
Can I share RDS RIs across accounts? Yes, by default within consolidated billing. Sharing can be disabled per-account if needed.
Can I modify an RDS RI to a different engine? No. Engine is locked. Plan engine migrations and let stranded RIs expire.
Does an Aurora RI cover Aurora Serverless v2? No. Serverless v2 has its own commitment product.
What happens to RIs during an Aurora cluster snapshot restore? RIs apply by instance class, region, and engine. A restored cluster of matching class/engine in the same region picks up RI coverage automatically.
How does RDS RI interact with multi-tenant licensing audits? RIs are a billing construct only. They do not affect license compliance. License compliance is a separate analysis based on actual deployment configuration.