Skip to main content
Your progress
0 of 5 complete0%
T0 / M0.3 / L3 OF 4 / Operator LEVEL / 8 min

The non-prod fallacy

Outcome

By the end of this lesson, you will be able to explain why “buy reservations for non-prod” is the textbook over-commitment mistake and propose the correct alternative.


PrerequisitesL1, L2
Time8 minutes

1. Concept

Almost every company makes the same mistake in its first year of taking cloud cost seriously: buying a commitment to cover its test and development machines.

It is guaranteed to underperform, and it is proposed by capable people, because on the surface it looks obviously right.

The proposal

It usually arrives in a slide deck. The slide says something like:

“We have $40K of non-prod compute spend. Cloud provider offers 40% off on a 1-year RI. Let’s commit to non-prod and save $16K per month.”

The arithmetic in that slide is correct. The framing around it is not.

Why the framing is wrong

Non-production machines are the single best candidate for being switched off, because by definition nobody needs them at three in the morning. L1 put a number on it: about 64 percent of the hours in a week, realistically 45.

A commitment charges you for every hour of the term whether the machine runs or not. So if you schedule the machine off, you have removed exactly the hours the commitment was paying for, and you are now buying both.

Terminal window
SCENARIO: $40K monthly non-prod compute
Approach A: Buy 1-yr RI at 40% discount, don't schedule
Monthly: $40K × (1 − 0.40 × 1.0 × 1.0) = $24K
Savings: $16K/month
Approach B: Schedule (no commitment)
Monthly: $40K × (1 − 0.45) = $22K
Savings: $18K/month
Approach C: Buy RI AND schedule (the trap)
The RI covers the same capacity as Approach A, so it bills
$24K every month for every committed hour, whether the
machines run or not. Switching them off at night removes
hours the RI was already paying for, so it saves nothing.
Monthly: $24K (same as A)
Savings: $16K/month, and the scheduling work earns $0

Approach C is the trap. It looks like “both savings combined.” In reality the commitment defeats the scheduling because the commitment continues to bill for capacity that is no longer running. You pay for a schedule and get nothing for it, and B on its own beats both.

The general rule

Terminal window
Reservations are calibrated to the FLOOR.
Non-prod scheduling REMOVES the floor.
Therefore: do not buy reservations on workload classes you intend to schedule.

This is one of the cleanest decision rules in FinOps. The mechanics are airtight. The cognitive trap is treating “discount” and “savings” as the same word.

The right alternative

Pick the better of approaches A and B:

  • B (schedule, no commitment) is the default. It is mechanically simpler, no commitment risk, comparable realized savings.
  • A (commit, no schedule) wins only when scheduling is not feasible; e.g., the non-prod workload genuinely runs 24/7 due to overnight batch tests, or the team’s engineering culture cannot adopt scheduled environments.

Almost every team that thinks they need A actually fits B.

A case study

The simplest worked example, an illustrative engagement:

Terminal window
BEFORE
Non-prod compute spend $52,000 / month
Commitment coverage 0%
Schedule coverage 0%
Status: full on-demand, always on, no FinOps discipline
PROPOSED (Approach C, the trap)
1-yr RI on the full $52K spend at 40% discount
"Saves $20.8K/month"
Stakeholder excitement: high
WHAT ACTUALLY HAPPENED (we steered to Approach B)
Standard schedule applied (8-8 Mon-Fri)
Tag coverage cleaned up so the schedule reaches all non-prod
Realized monthly savings: $23K
Annual run rate: $276K saved
COUNTERFACTUAL (what would Approach C have done)
Schedules disabled to keep RI utilization high
Effective discount realized: 40%
Monthly savings: $20.8K
Annual: ~$250K: about $26K LESS than Approach B
Plus: 12 months of lock-in, peak inflexibility, renewal pressure

Approach B beat Approach C by about $26K per year on this single workload, with no lock-in.

Why this fallacy is so common

Three reasons:

  1. Vendor sales motion. AWS, GCP, Azure account teams are measured on commitment dollar amount. Their incentive is to propose any commitment. They are not lying: they are doing their job. The customer’s job is to model it properly.
  2. Finance vocabulary. “Discount” is a familiar Finance word. “Schedule” is not. The proposal that uses Finance vocabulary lands easier.
  3. The math is unintuitive. It is genuinely subtle that scheduling and commitments interact destructively on non-prod. A team has to do the worked example to see it.

The fix is the worked example. Once a stakeholder walks through Approach A vs. B vs. C with their own numbers, the right answer is unambiguous.


2. Demo

A real meeting transcript pattern, condensed:

Terminal window
PROCUREMENT: "AWS is offering us 40% off if we commit to $1M of non-prod
EC2 for one year. That's $400K savings."
FINOPS: "Walk me through the math. If we schedule non-prod off-hours
instead, what's our usage?"
ENGINEERING: "About 45% of current hours after schedule fires."
FINOPS: "So the $1M commitment would cover hours we won't be using.
We'd be paying the RI rate for capacity that's off."
PROCUREMENT: "But the discount..."
FINOPS: "The discount is on capacity we use. If we use less capacity,
the discount applies to less. And the commitment locks us in:
if we use even less next year, we keep paying."
PROCUREMENT: "What's the alternative?"
FINOPS: "Schedule now. Observe the steady-state floor for 60 days.
If there is a real always-on floor in non-prod after that,
we can commit on the floor only: at a much smaller amount,
much lower risk."

The pattern: lead with the math, name the trap, propose the sequence. The procurement team walks away aligned, not blocked.


3. Hands-on (5 min)

Pretend a stakeholder proposes a 1-yr RI on your non-prod compute. Write the defensible counter-proposal in three sentences:

Terminal window
Sentence 1 (the math):
"If we schedule non-prod, we use about __% of the hours we currently
pay for. A 1-yr RI would cover hours we will not use."
Sentence 2 (the alternative):
"The right sequence is schedule first, then observe the post-schedule
floor for 60 days, then commit on the floor only."
Sentence 3 (the dollar comparison):
"On our $___K monthly non-prod spend, Approach B (schedule) returns
~$___K/month. Approach C (commit + schedule) returns ~$___K/month
and locks in 12 months of inflexibility. The choice is clear."

Have the response written before the meeting. It is faster to prevent the trap than to undo it.


4. Knowledge check

Q1

A 1-yr Reserved Instance applied to scheduled non-prod compute most accurately:

A. Multiplies the savings: the discount plus the scheduling saving stacked on top
B. Pays for itself in three months
C. Defeats scheduling savings because the RI bills for hours the resource is not running
D. Has no effect on scheduling

Show answer

Correct: C. RIs bill the committed capacity regardless of whether the resource is running. Schedule-then-commit on non-prod is destructive interference.

Q2

The correct sequence for commitment design after scheduling is:

A. Buy commitments first, then schedule
B. Schedule first, observe the post-schedule floor for 60 days, commit on the floor only
C. Skip the commitments entirely on all of the workloads involved anywhere else
D. Buy 3-yr commitments for maximum discount

Show answer

Correct: B. Schedule reveals the floor. Commitments are calibrated to the floor. The 60-day window allows the post-schedule pattern to stabilize before locking in capacity.

Q3

A Finance team has approved a 1-yr Savings Plan on non-prod compute. Best response:

A. Walk them through the worked example with their own numbers
B. Block the purchase
C. Wait until the next renewal date comes round again later
D. Approve quietly

Show answer

Correct: A. Propose the alternative: schedule first, then commit on the post-schedule production floor. The trap is unintentional. The fix is the worked example. Block-without-explanation creates organizational friction; walk-through with numbers builds shared understanding.


5. Apply

ZopNight’s Costs → Reports → Tags tab breaks cost down by any tag key, so you can read the monthly cost of resources tagged non-prod, and Cloud Estate → Inventory lists those resources with their tags. Then draft the proposed schedule in Schedules. The form shows one whole-number percentage: the hours the schedule keeps resources stopped, out of the 168 in a week. Multiply it by the matching resources’ monthly cost, then apply a realism discount, to project Approach B savings. That number is the input to the “schedule first” conversation with Finance.

For Approach A modelling (commitment design), ZopNight’s advisory commitment recommendations cover Reserved Instances and CUDs (1-year and 3-year No-Upfront, priced from your real rates). For Savings Plans and upfront options, AWS Cost Explorer’s RI / SP recommendation engine or third-party commitment services (for example ProsperOps or Spot Eco, both owned by Flexera) are the right partners. ZopNight advises on commitments; it does not buy them.


Glossary terms touched

Over-commitment · Sequenced execution


Start with the bill.

Foundations takes about five hours. The first lesson is nine minutes.

Free curriculum. No paywall. 290 lessons across 7 courses, plus an optional 24-lesson beginner course. Browse every course without an account; a free account opens the lessons, saves your progress and opens the exams for three publicly verifiable credentials. Read it on the train, take the exam on a Saturday, list the credential on your résumé Monday.

5h median time to finish Foundations
free account, every course, no paywall
3 certifications, each with a public verifier
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·