All templates
Flowchart template

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.

Related templates