Cost optimization runbook
Review spending, identify waste, and optimize cloud infrastructure costs.
Every organization runs this runbook at some point: the monthly bill arrives, someone notices it's higher than last month, and the scramble begins to find where the money went. This template gives you a systematic five-step flow: review your spending, identify the top cost drivers, decide whether to stop (terminate), shrink (right-size), or commit (buy a Reserved Instance), measure the savings, and lock in the fix.
The most common finding is idle or unused resources — databases running but not used, old load balancers, orphaned storage, or test environments left running in production. The second is overprovisioned instances: a t3.xlarge running at 10% CPU doing the work of a t3.small. The third is missing Reserved Instances or Savings Plans; if you know you need a database for three years, prepaying is cheaper than paying on-demand every month.
When to use this template
- Monthly billing reviews — hand this diagram to whoever owns cost management so they follow the same flow every month instead of ad-hoc firefighting.
- Cloud migration planning — before lifting workloads from on-premises to cloud, use this flow to show stakeholders how you'll manage cloud costs post-migration.
- Budget overrun incident — when the bill spikes, walk through this template with your infrastructure team to triage and prioritize fixes.
How to adapt it
Customize this to your cloud provider and cost goals:
- Add a chargeback policy state after "Alert team to changes" if you allocate cloud costs to departments or projects.
- Insert a FinOps tool integration (AWS Cost Anomaly Detection, Datadog, Unblocked) after "Review spending" to automate idle resource detection.
- Add a forecasting step before "Spending within budget?" to project next month's bill and warn if trends continue.
Visual edits regenerate clean code, so you can adapt the flow to your cost-management tool, escalation paths, and organizational structure without hand-editing syntax.
Mermaid code
Copy it anywhere Mermaid is supported — GitHub, Notion, or your docs.
flowchart TD
A[Receive monthly bill] --> B[Review spending by service]
B --> C{Spending within budget?}
C -->|Yes| D[Archive & monitor]
C -->|No| E[Identify top 3 cost drivers]
E --> F{Idle or unused?}
F -->|Yes| G[Stop or terminate]
G --> H[Measure impact]
F -->|No| I[Right-size resources?]
I -->|Yes| J[Downgrade instance size]
J --> H
I -->|No| K{Reserved Instance eligible?}
K -->|Yes| L[Purchase RI or Savings Plan]
L --> H
K -->|No| M[Review auto-scaling config]
M --> H
H --> N{Savings >5%?}
N -->|No| O[Log issue & revisit later]
N -->|Yes| P[Update architecture docs]
P --> Q[Alert team to changes]
Q --> D
Frequently asked questions
- What is cloud cost optimization?
- It's the process of reviewing your cloud spending, finding waste, and systematically reducing it — by stopping unused resources, right-sizing overprovisioned instances, buying Reserved Instances for predictable workloads, and tuning auto-scaling policies. Organizations often find 20-40% waste without changing functionality, simply by auditing what's actually running and whether it's the right size.
- What's the difference between right-sizing and Reserved Instances?
- Right-sizing means changing an instance type to match actual usage — upgrading a t2.micro that's CPU-bound to a t3.small, or downgrading a c5.2xlarge running at 10% utilization to a c5.large. Reserved Instances (or Savings Plans) mean prepaying for a year or three years of a fixed instance size at a discount (30-70% off on-demand). Combine both: right-size to your real usage, then commit to it with an RI.
- When should I terminate an idle resource versus right-sizing?
- If something isn't being used at all — a stopped database, an orphaned load balancer, an unused NAT gateway — terminate it. The resource is pure waste. If something is being used but inefficiently — high CPU or memory but low utilization on a large instance — right-size it down. Terminating saves everything; right-sizing just shrinks the bill while keeping the service running.
- How often should I run this runbook?
- Monthly is standard — set a calendar reminder to pull your bill and work through this flow. If you have a large infrastructure team, assign one person to run it monthly and escalate findings to the engineering lead. Automate the "Review spending" step with a Cloud Cost Management tool (AWS Cost Explorer, GCP Billing, Azure Cost Management) so you're not manually poring over line items. The rest of the flow — identifying waste and justifying changes — still benefits from human judgment.