Cloud cost optimization tools fall into three buckets: visibility (Cost Explorer, Cloudability), commitment discounts (Savings Plans, Reserved Instances), and rightsizing (Compute Optimizer, Spot Instances). The right tool depends on what you’re trying to optimize.
Table of contents
- Visibility tools
- Commitment discount tools
- Rightsizing tools
- Spot and preemptible instances
- FinOps platforms
- What usually doesn’t work
- The FinOps framework
- The tagging discipline
- FAQ
Visibility tools
The right starting point. You can’t optimize what you can’t see.
- AWS Cost Explorer. Built into AWS. Free, basic, good enough for most teams.
- GCP Cloud Billing Reports. Built into GCP. Free, similar to AWS.
- Azure Cost Management. Built into Azure. Free, similar to AWS.
- Cloudability, Vantage, CloudHealth. Third-party tools that add tagging analysis, anomaly detection, and multi-cloud views.
The team that starts with the cloud-native tool and adds a third-party tool when they need multi-cloud or anomaly detection has the right progression.
Commitment discount tools
The biggest single cost saver for predictable workloads. Commit to 1-3 years of usage, get 30-70% off the on-demand price.
- AWS Savings Plans. Commit to a $/hour spend; get discounts on compute.
- AWS Reserved Instances. Commit to a specific instance type; get a larger discount.
- GCP Committed Use Discounts. Commit to a $/hour spend; get discounts on compute.
- Azure Reserved Instances. Commit to a specific VM type; get discounts.
The team that has predictable, steady-state workloads should be using commitment discounts. The team that has spiky workloads should not (the commitment cost is wasted when the workload is low).
Rightsizing tools
The right tool for finding instances that are over-provisioned. The team’s t3.xlarge running at 5% CPU is probably a t3.medium running at 10% CPU.
- AWS Compute Optimizer. Analyzes CloudWatch metrics and recommends rightsizing.
- GCP Recommender. Same idea on GCP.
- Azure Advisor. Same idea on Azure.
The team that runs Compute Optimizer once a quarter and applies the recommendations has a 10-30% cost reduction without any workload change.
Spot and preemptible instances
The right tool for fault-tolerant workloads. Spot instances are 60-90% cheaper than on-demand, but the cloud can take them back with 30 seconds notice.
- AWS Spot Instances. 60-90% discount. Good for batch jobs, CI runners, stateless services.
- GCP Spot VMs. Same idea.
- Azure Spot VMs. Same idea.
The team that uses Spot for batch jobs but on-demand for user-facing services has the right pattern. The team that uses Spot for stateful production services has outage problems.
FinOps platforms
The team that takes cloud cost seriously invests in a FinOps platform:
- Cloudability (Apptio), Vantage, CloudHealth (VMware) for the enterprise.
- Kubecost for Kubernetes-specific cost analysis.
- OpenCost for the open-source Kubernetes path.
The team that uses Kubecost on a Kubernetes cluster has per-namespace, per-deployment, per-team cost visibility. The team that doesn’t has a single AWS bill and no idea which team is responsible for what.
What usually doesn’t work
The four patterns that look like optimization but don’t move the number:
- Stopping dev environments on Friday. Saves a few hundred dollars per month, costs developer happiness.
- Aggressive rightsizing without monitoring. The team that downgrades an instance without watching the metrics gets an outage.
- Buying Reserved Instances before the workload is stable. The team that commits to 3 years of an instance type that turns out to be wrong has wasted money.
- Spot for everything. The team that runs production on Spot has 3 a.m. outages when the capacity is reclaimed.
The FinOps framework
The right way to think about FinOps (Financial Operations):
- Inform. The team knows what they’re spending. Visibility via dashboards, reports, anomaly detection.
- Optimize. The team actively reduces waste. Reserved Instances, Savings Plans, Spot Instances, rightsizing.
- Operate. The team defines and enforces policies. Budgets, quotas, approval workflows for large spends.
The team that implements all three has a mature FinOps practice. The team that has only visibility (Inform) but doesn’t optimize or operate is leaving money on the table.
Common FinOps metrics:
- Cost per customer. Total cloud cost / number of customers.
- Cost per transaction. Cloud cost / number of business transactions.
- Unit economics. The cost to serve one unit of the business (a user, a request, a transaction). The team that tracks unit economics has the right business lens.
The tagging discipline
Tags are the foundation of cost allocation. The right tagging policy:
- Environment. dev, staging, production.
- Team. The team that owns the resource.
- Project. The project the resource supports.
- Cost center. For chargeback.
- Owner. Email of the person responsible.
- Created-by. Who/what created the resource (human, Terraform, manual).
The team that enforces tagging via policy (AWS SCP, GCP Organization Policy, Azure Policy) has consistent tags. The team that doesn’t enforce has untagged resources that show up as “unallocated” in cost reports.
Real-world discipline:
- Tag at creation. Resources created without tags are immediately flagged.
- Backfill periodically. A script that adds tags to existing untagged resources.
- Audit monthly. A review of untagged resources, with cleanup actions.
The team that has good tagging discipline has accurate cost allocation. The team without it has a constant “where is this cost coming from” investigation.
FAQ
What’s the best cloud cost tool?
The cloud-native one is the right starting point: Cost Explorer on AWS, Cloud Billing on GCP, Cost Management on Azure. The team that needs multi-cloud or anomaly detection adds a third-party tool.
How much can commitment discounts save?
30-70% off the on-demand price, depending on the commitment length and the instance type. The team that commits to the right amount saves substantially; the team that overcommits wastes money.
Should I use Spot instances for production?
Only for stateless, fault-tolerant services. The team that uses Spot for stateful production services has outage problems. Use on-demand or Reserved Instances for production stateful services.
What’s a FinOps platform?
A tool that gives the team visibility into cloud costs by team, project, or service. Cloudability, Vantage, Kubecost. The team that has a FinOps platform can answer “what does this team’s AWS bill look like”.
How much can FinOps save?
20-30% on average for teams that implement FinOps practices. The team that runs FinOps as a discipline (not a one-time project) sees ongoing savings as usage patterns change.
What’s the difference between FinOps and cost optimization?
Cost optimization is one practice within FinOps. FinOps is the broader discipline that includes visibility, optimization, and ongoing operations. The team that calls cost optimization “FinOps” is using the term loosely.
How do I start with FinOps?
Start with visibility. Get the cost dashboard up. Identify the top 10 cost drivers. Then optimize one at a time. The team that tries to optimize everything at once is overwhelmed; the team that focuses on the biggest wins has measurable results.
If you are sizing the infrastructure for the kind of project this post covers, the RunxBuild hosting calculator is the right place to model the line items. The compute, the memory, the storage, the bandwidth, the database - each one is a separate number, and the team’s mental model for the platform is the sum of those numbers. The RunxBuild dashboard is where the team sees the actual usage in one place.
Useful related references: