# RDS Reserved Instance Opportunity

> Standing production RDS databases without reservation coverage get a 1-year RI recommendation priced against a compute-only basis. An RDS RI discounts instance-hours alone while storage, IOPS, and backup keep billing. ZopNight recommends only when the RI rate times 730 undercuts that basis; the flat 0.40 fraction fallback is dropped.

Source: https://zop.dev/integrations/aws/recommendations/rds-reserved-instance-opportunity
Updated: 2026-08-19

---

## Which production databases are still on demand

- resource.Status: statusAvailable
- Production classification: isProdEnvTag OR prod-looking name; a dev/test env tag (isDevTestEnvTag) is an authoritative VETO
- skip when already covered (ReservationCoverageForUID == Reservation/SavingsPlan, or ri_covered=true tag)
- EvaluationContext: per-UID pricing, CommitmentEligible, live RI TierRates (CommitmentBreakEven)

## Break-even against a compute-only basis

Concrete or abstain (discount/commitment). Savings = the real break-even net only, against a compute-only break-even basis: an RDS RI discounts the instance-hour (compute) line and nothing else, since storage, provisioned IOPS and backup [sit on separate, undiscounted rate lines](https://aws.amazon.com/rds/pricing/). But cost (PricingForUID) is the full monthly RDS bill, so feeding the whole bill into the break-even over-credits the RI with the ~77% it never touches. When the catalog's on-demand compute rate for this SKU is known the basis is capped at min(bill, OnDemand×730); unknown OnDemand degrades to the full-bill basis (prior behaviour). CommitmentBreakEven then prices the RI at the fixed full-month rate (RI×730) and recommends only when that falls below the compute-only basis, so savings = breakEvenBasis − RI×730 (positive by construction); the headline % is derived from that live net. The rule abstains (returns nil) when break-even inputs are unavailable (live RI tier rates absent/non-positive); the prior DeriveCommitmentFraction(tiers, 0.40) flat-fraction fallback is dropped; a discount rec carries a real data-backed dollar amount or none. rdsReservedSavingsFraction=0.40 is a legacy unused const. Ported from the sibling RC-1507. Mirrors RC-014.

## Buying a matching 1-year RI

1. Verify this database will run for at least 12 months
2. Check AWS Cost Explorer RDS RI recommendations
3. Purchase a 1-year No Upfront RI matching instance class and engine
4. Consider Multi-AZ RI for production databases
