ESC
Type to search guides, tutorials, and reference documentation.
Verified by Garnet Grid

FinOps Maturity Model: From 'Who Left This Running?' to Cost-Optimized Culture

Assess and advance your organization's FinOps maturity across people, processes, and technology. Covers the crawl-walk-run framework, organizational readiness, metrics that matter at each stage, and the transformation roadmap that turns cloud cost management from reactive firefighting into proactive optimization.

FinOps maturity is not about tools. It is about culture. Every organization starts in the same place: someone notices the cloud bill is too high, a spreadsheet gets created, engineers are told to “use smaller instances,” and nothing changes because nobody has the visibility, incentives, or processes to optimize systematically.

This guide maps the maturity journey from reactive cost management to proactive cost optimization, with specific actions and metrics at each stage.


The Maturity Model

┌───────────────────────────────────────────────────────┐
│  FINOPS MATURITY STAGES                                │
├───────────────────────────────────────────────────────┤
│                                                         │
│  🐛 CRAWL (Reactive)                                    │
│  "We know cloud costs are a problem but we don't have   │
│   visibility into what is driving them"                  │
│                                                         │
│  🚶 WALK (Informed)                                     │
│  "We can see our costs broken down by team and service,  │
│   and we're starting to optimize the obvious waste"      │
│                                                         │
│  🏃 RUN (Optimized)                                     │
│  "Cost is a metric engineering owns, like performance    │
│   or reliability, and we optimize continuously"          │
│                                                         │
└───────────────────────────────────────────────────────┘

CRAWL Stage: Gaining Visibility

Where You Are

  • Cloud bill is paid by a central team (finance or IT)
  • Engineers do not see the cost of the resources they create
  • No tagging strategy, untagged resources everywhere
  • Cost reports are generated monthly by someone in finance
  • Optimization is occasional and driven by bill shock

What to Do

ActionPriorityTimeline
Enable cloud billing export (AWS Cost Explorer, GCP Billing)CriticalWeek 1
Define tagging strategy (team, service, environment)CriticalWeek 1-2
Tag existing resources (start with top 20 by cost)HighWeek 2-4
Create a simple cost dashboard (total, by service, trend)HighWeek 2-3
Identify top 5 cost driversHighWeek 3
Shut down idle/unused resourcesHighWeek 3-4

Metrics at Crawl

MetricTarget
Tagging coverage> 80% of resources tagged
Cost visibility100% of spend attributable to a team
Waste identificationTop 10 waste items identified
Stakeholder awarenessMonthly cost report shared with engineering leads

WALK Stage: Active Optimization

Where You Are

  • Cost dashboard exists, updated at least weekly
  • Most resources are tagged and attributable
  • Teams see their own costs (showback reports)
  • Active optimization: right-sizing, reserved instances, dev environment cleanup
  • FinOps champion or team exists

What to Do

ActionPriorityTimeline
Implement showback reports per team (monthly)CriticalWeek 1-2
Right-size compute: analyze and resize overprovisioned instancesHighWeek 2-4
Implement auto-stop for non-production environmentsHighWeek 2-3
Purchase reserved instances / savings plans for stable workloadsHighWeek 3-4
Set up cost anomaly detectionMediumWeek 4-6
Include cost in architecture decision recordsMediumOngoing

Metrics at Walk

MetricTarget
Unit costCost per transaction / cost per user tracked and trending down
Reserved instance coverage> 60% of stable compute covered by RIs
Non-production cost ratio< 25% of total spend on non-production
Waste eliminated$X/month savings documented and tracking

RUN Stage: Engineering-Owned Cost

Where You Are

  • Cost is an engineering KPI alongside performance and reliability
  • Teams have cost budgets and own their spending
  • Cost is considered in every architectural decision
  • Automated optimization (auto-scaling, spot instances, lifecycle policies)
  • FinOps is embedded in engineering culture, not a separate function

What to Do

ActionPriorityTimeline
Implement chargeback (teams own their budgets)HighQuarter 1
Automate cost optimization (auto-scaling policies, spot instances)HighQuarter 1-2
Include cost in CI/CD: show cost impact of infrastructure changesMediumQuarter 1-2
Build cost forecasting: predict next month’s billMediumQuarter 2
Implement unit economics dashboards per productMediumQuarter 2-3
Run quarterly cost optimization sprintsOngoingEvery quarter

Metrics at Run

MetricTarget
Cost per unitTracked per product, trending down or stable
Budget varianceTeams within 10% of budget monthly
Reserved coverage> 80% for stable workloads
Cost efficiency ratioRevenue per $1 of cloud spend improving
Engineer engagement> 50% of teams actively manage their costs

Organizational Roles

RoleResponsibility
FinOps leaderStrategy, stakeholder management, metrics
Cloud architectRight platform choices, cost-efficient designs
Engineering managerTeam-level cost accountability, budget ownership
Financial analystForecasting, budget allocation, variance analysis
Cost champion (per team)Day-to-day cost awareness, optimization advocate

Common Optimization Wins by Stage

StageOptimizationTypical Savings
CrawlDelete unused resources10-15%
CrawlShut down idle dev/staging environments5-10%
WalkRight-size overprovisioned instances15-25%
WalkPurchase reserved instances / savings plans20-35%
WalkAuto-stop non-prod outside business hours5-10%
RunSpot instances for fault-tolerant workloads60-90% on those workloads
RunArchitecture optimization (caching, CDN, async)15-30%
RunLifecycle policies (auto-delete old snapshots, logs)5-10%

Implementation Checklist

  • Assess current maturity: crawl, walk, or run?
  • Enable billing exports and create a cost dashboard
  • Define and enforce a tagging strategy across all cloud accounts
  • Deliver monthly showback reports to every engineering team
  • Right-size the top 20 most overprovisioned resources
  • Purchase reserved instances for stable compute (> 60% coverage target)
  • Implement auto-stop for non-production environments
  • Set up cost anomaly detection with daily alerts
  • Include cost as a metric in architecture decision records
  • Name a cost champion on every engineering team
Jakub Dimitri Rezayev
Jakub Dimitri Rezayev
Founder & Chief Architect • Garnet Grid Consulting

Jakub holds an M.S. in Customer Intelligence & Analytics and a B.S. in Finance & Computer Science from Pace University. With deep expertise spanning D365 F&O, Azure, Power BI, and AI/ML systems, he architects enterprise solutions that bridge legacy systems and modern technology — and has led multi-million dollar ERP implementations for Fortune 500 supply chains.

View Full Profile →