All cheat sheets
Computecheat sheet

EMR Reserved Instances

EMR runs on EC2 under the hood, so you don't buy 'EMR RIs' — you buy matching EC2 Reserved Instances that auto-apply to predictable clusters for 30–50% off. A slam dunk for nightly ETL on the same instance types; the wrong tool for exploration.

Last reviewed: July 14, 2026

TL;DR: EMR clusters run on EC2 instances under the hood, so there's no such thing as an "EMR Reserved Instance" — you buy EC2 RIs for the matching instance types and region, and AWS auto-applies the discount to your EMR usage with no special flags. For predictable workloads (nightly ETL, weekly reporting, ongoing log processing) on the same instance types, that's 30–50% off for free. For sporadic exploration, it's the wrong tool — use Spot instead.

The numbers

  • 30–50% off on predictable, steady EMR usage with a 1- or 3-year commitment; the discount applies automatically when instance types match.
  • The classic blend: RIs on core nodes (stability) + Spot on task nodes (up to 90% off, Spark tolerates node failures) = maximum savings with full resilience.
  • Field examples: a nightly r5.2xlarge ETL cluster (10 instances × 3 hrs × 30 nights) went ~$2,250 → ~$1,440/mo (~$810/mo, ~$10K/yr) on 1-yr Partial Upfront RIs; a FinOps lead segmenting 8 teams (full RIs for predictable ETL, ~50% for weekly reports, Spot-only for exploration) hit 35% blended savings with no over-commitment.

Do this

  1. Analyze 3–6 months in Cost Explorer — find the instance types that recur most consistently; that's your RI shopping list.
  2. Buy matching EC2 RIs (same type, same region, 1- or 3-year) and run EMR normally — the discount just happens.
  3. Start with partial coverage (~60–70% of the steady baseline) — you can always add more, but you can't undo an over-commitment.
  4. Stack with Spot on task nodes — RIs cover the steady core, Spot handles elastic compute at up to 90% off.
  5. Apply RIs surgically, one team/pattern at a time — a blanket policy across mixed usage patterns is a disaster; segment predictable from experimental.

Gotchas

  • Sporadic or bursty usage loses — a 15-minute cluster once a week won't recoup the commitment; short jobs favor on-demand or Spot.
  • Architecture changes strand the commitment — planning a move to Glue, Athena, or Databricks? Don't lock into 3-year EMR RIs.
  • Commit only after usage stabilizes — RIs reward real historical patterns; locking in during experimentation is how you pay for capacity you don't use.
  • Consider Compute Savings Plans instead — they cover EMR and Lambda/Fargate, more flexible if your services shift over time.

Skip this if

  • Usage is sporadic, experimental, or the instance types keep changing — Spot Instances on task nodes give 70–90% off with no commitment.
  • The cluster is bursty rather than steady — EMR Managed Scaling right-sizes it automatically. For a more flexible commitment that also covers EMR, see Compute Savings Plans; the underlying mechanism is plain EC2 Reserved Instances.

Run this audit with your AI assistant

Paste this into Claude, ChatGPT, or any agent that can run the AWS CLI with read-only credentials. It audits your account for exactly the waste this sheet describes — and changes nothing.

You are auditing an AWS account's EMR usage for Reserved Instance
savings. Use the AWS CLI with READ-ONLY credentials. Do not create,
modify, or delete anything — report findings and recommended (unapplied)
fixes only.

1. Usage pattern: from Cost Explorer (ce get-cost-and-usage, 3-6 months,
   grouped by instance type) and aws emr list-clusters --created-after,
   identify the EC2 instance types that recur on a predictable cadence
   (nightly ETL, weekly reports). These are RI candidates.
2. Existing coverage: aws ec2 describe-reserved-instances — note RIs and
   match to EMR usage; RIs auto-apply to matching EC2-under-EMR usage
   (there is no separate "EMR RI").
3. Sizing: recommend covering 60-70% of the steady baseline instance-type/
   region usage; leave bursty/experimental on on-demand or Spot. Model
   1yr vs 3yr and payment options.
4. Alternatives: flag experimental/variable usage for Spot task nodes;
   note Compute Savings Plans cover EMR too (more flexible if services
   shift).

Report a table: instance type/region | steady EMR usage | recommend
reserve | term/payment | est. $/mo saved | or Spot/on-demand. Change
nothing.
Works with any assistant that can run shell commands.

Want the guided version?

The EMR Reserved Instances walkthrough covers this topic interactively — it asks about your setup, branches to what’s relevant, and quizzes you on the tricky parts. Free and anonymous.

Start the walkthrough