Cost Explorer is the free, built-in view of your AWS bill, and most teams use a small part of it. Group by Service, then Usage Type, at Daily granularity, and most bill questions answer themselves. This guide covers the views that find waste, amortized vs unblended cost, the Savings Plans and RI reports, forecasting, and when to move to the Cost and Usage Report.
Cost Explorer is the charting and reporting layer on top of AWS billing data. It is the first place to look when the bill moves, and the wrong place for line-item, resource-level forensics. That is what the Cost and Usage Report is for.
It reads from the same billing pipeline as your invoice and the CUR and pre-aggregates it into a fast, filterable UI in the Billing console. By default you get the previous 13 months; turn on multi-year data for up to 38 months at monthly granularity (AWS docs). AWS Cost Explorer forecasts spend up to 18 months ahead (monthly view). (AWS docs). You can save reports and reopen them later.
Two settings trip people up. Granularity defaults to Monthly, which hides the day a spike started; switch to Daily for almost every investigation. Cost type (section IV) changes what the same chart means; get it wrong and a Savings Plan purchase looks like a one-day spike.
What it is not: a per-resource bill (it tells you EC2-Other rose $4,000, not which volume or NAT Gateway) or an action tool. No button in Cost Explorer buys a Savings Plan or deletes an idle volume. It surfaces the recommendation; you act elsewhere.
Cost Explorer: why did the number move, and where is the money? Budgets: tell me before it moves again. CUR: exactly which resource, to the cent. Third-party BI: all of that across accounts, plus chargeback. Most teams use several; Cost Explorer is where you start.
Most of the value comes from four group-by dimensions and one granularity toggle. Every report is the same primitive: a time axis, a cost metric, a granularity, a group-by and filters. Change the group-by and you change the question.
Start here. Group by Service, Monthly, last six months. You see which four or five services make up most of the spend (usually EC2, RDS, S3, "EC2-Other" and one surprise) and which are trending up.
The classic gotcha: "EC2-Other" is not EC2 compute. It holds EBS volumes, snapshots, NAT Gateway data processing and data transfer attributed to EC2. When it is large and growing, re-group by Usage Type to split it apart.
With AWS Organizations, group by Linked Account from the management account to see spend per account. Filter to one account, then re-group by Service, to see a staging account in isolation; oversized non-production resources hide there because nobody watches its invoice.
The most underused dimension. Usage Type is the granular SKU: BoxUsage:m5.xlarge, EBS:VolumeUsage.gp2, NatGateway-Bytes, cross-Region transfer and so on. Group by it and you stop guessing: you see that the transfer line is cross-AZ traffic, or that EBS spend is old gp2 volumes you can move to gp3 for 20% less per GB. Use the Usage Type Group roll-up when the raw list is noisy. See the NAT Gateway cost guide.
Group by a cost allocation tag (Team, Environment, CostCenter) and the bill maps to your org chart. The prerequisite: the tag must be activated in the Billing console, and activation only applies from then on, to resources that carry the tag. Untagged spend lands in a "No tag key" bucket; if it is large, fix tagging first. See the cost allocation tags guide.
Monthly granularity tells you the bill went up $9K. Daily granularity tells you it started on the 14th, which lines up with a deploy, a config change or a forgotten test cluster. For any "why did this month jump" question, switch to Daily first.
Once you know the controls, the waste hunt is a repeatable loop. Separate four problems, because each has a different fix.
Finding is the easy part. Deleting a "zombie" that is actually a quarterly batch job, or shrinking a database that needs headroom at month-end, causes an outage instead of a saving. Validate each candidate against utilization history before you touch it.
The same chart tells different stories depending on the cost type you pick. This is the most common Cost Explorer misread.
The rule: analyze and allocate on amortized, tie back to the invoice on unblended. Showing leadership an unblended chart the day after a Savings Plan purchase invites a panic about a "huge unexpected charge" that is really a year of savings paid upfront.
Commitments are the biggest lever on most bills: EC2 Instance Savings Plans and Standard RIs save up to 72% off On-Demand, and Compute Savings Plans up to 66%. Cost Explorer has three report families for them.
Figures from AWS's Savings Plans guide. Savings Plans have largely replaced RIs for compute. Compute Savings Plans float across EC2, Fargate and Lambda; EC2 Instance Savings Plans lock to a family in a Region for a deeper discount. RIs still matter for RDS, ElastiCache, Redshift and OpenSearch. Terms are one or three years, with No, Partial or All Upfront payment.
The recommendation reports read your recent usage (a 7, 30 or 60-day lookback) and propose a commitment, an hourly Savings Plans amount or a number of RIs, with estimated savings across term and payment options.
The judgment the tool cannot make: how stable is the usage it extrapolates? A lookback that includes a one-off load test over-recommends; a team mid-migration to Graviton should commit cautiously. See the Savings Plans guide.
Coverage answers "what share of my eligible usage is on a commitment?" Low coverage means steady compute paying full On-Demand price. Near-full coverage on usage that moves risks over-committing. Cover the stable baseline and leave variable load on On-Demand or Spot.
Utilization shows how much of the commitment you own is actually used. At 80% utilization, a fifth of what you paid for is wasted because the matching usage went away. Standard RIs can sometimes be sold on the Reserved Instance Marketplace; Savings Plans cannot, so you grow into them.
A three-year All Upfront commitment is the cheapest hourly rate and the least reversible decision you will make on AWS. Layer commitments: cover the stable baseline, leave room for change, and revisit quarterly. If you run on AWS credits, note that promotional credits do not pay Savings Plans or RI upfront fees (AWS credit terms).
Cost Explorer also forecasts, exposes everything through an API, and hands off to the Cost and Usage Report when you need detail it cannot give.
Forecasting. Cost Explorer projects spend from your history, with a prediction interval, using the same engine AWS Budgets uses for "forecasted to exceed" alerts. It extrapolates the past; it does not know about the launch or migration you have planned. Group-by works here too, so you can forecast one team's spend.
The API. GetCostAndUsage, GetSavingsPlansCoverage, GetRightsizingRecommendation and related calls expose every view, so you can push numbers into Slack or a weekly report. Each paginated request costs $0.01; batch scheduled reports.
The CUR. When Cost Explorer is not enough, the Cost and Usage Report (CUR 2.0 through Data Exports) is the most detailed billing data AWS produces: line items, hourly or by resource, with every tag, delivered to S3 and queried in Athena or a BI tool. The trade is setup and SQL effort.
Knowing the edges keeps you from deciding "the data is wrong" when the tool is working as designed.
Finding the waste takes an afternoon. Doing the rework safely while shipping product, and proving it stuck, is the hard part.
A vetted AWS partner can take that on: confirm the top movers and idle resources against the CUR and utilization history, right-size the fleet, layer the right Savings Plans on the stable baseline, move gp2 to gp3 and clean up volumes and snapshots, tackle NAT Gateway and cross-AZ transfer, and set up the governance (activated tags, Budgets with forecast alerts, Cost Anomaly Detection) so the savings hold.
CloudRoute matches you with one, and CloudRoute is free for startups; partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding. The partner's work is an engagement you agree with them up front, and the savings usually pay for it. AWS funding that only partners can file attaches to qualifying work, not to cost work on its own: MAP if you are moving more workloads onto AWS, POC if you are testing a new setup, or incremental workload (IW) funding if you are launching new work on AWS. For startups this is typically $50K to $150K. Depends on the workload; AWS approves.
These are layers more than competitors. Cost Explorer is where you start, the CUR is the raw truth underneath, and third-party BI sits on top of the CUR for scale, multi-account roll-ups and finance dashboards.
| Dimension | Cost Explorer | Cost and Usage Report (CUR) | Third-party BI |
|---|---|---|---|
| What it is | Built-in charted UI on billing data | Raw line-item billing export to S3 | Analytics layer over the CUR |
| Granularity | Service to Usage Type; hourly and resource-level are paid | Resource-level, hourly, every tag | As detailed as the CUR, modeled into views |
| Setup effort | None | Moderate (S3, Athena, SQL) | Connector and configuration |
| Speed to an answer | Seconds | Minutes (write a query) | Seconds once dashboards exist |
| Recommendations | Built in (Savings Plans, RIs, right-sizing) | None; data only | Usually, often automated |
| History | 13 months; up to 38 months monthly | As long as you keep it in S3 | As long as the tool keeps it |
| Cost | Free console; $0.01 per API request | S3 and query costs | Subscription or share of spend |
| Best for | Fast diagnosis and native recommendations | Per-resource forensics and custom analysis | Org-wide visibility and chargeback |
You fill in a short form: what you run today, what you want to move, test or build, your stage and your region.
We read your answers and pick one vetted AWS consulting partner that fits the work, the stack and the region. We reply within 24 hours; your matched partner reaches out within 5 business days.
Your matched partner scopes the work with you. Then it checks which partner-filed funding fits: MAP if you are moving to AWS, POC if you want to test something, or incremental workload (IW) funding if you are already on AWS and launching new work.
If the work qualifies, the partner files the funding request with AWS. AWS reviews it and decides. The amount depends on the workload.
CloudRoute is free for startups. Partners pay CloudRoute a monthly membership plus 10% of AWS-approved funding.
AWS Activate credits are separate, and you apply for them yourself. Use Activate Founders if no investor backs you. Use Activate Portfolio with the Org ID or invite from your VC, accelerator, incubator or angel group if it is an Activate Provider. A consulting partner cannot apply for Activate on your behalf.
CloudRoute matches you with a vetted AWS partner who reads your Cost Explorer and CUR data and does the rework: right-sizing, Savings Plans, idle cleanup, data-transfer fixes, and the governance to keep it. CloudRoute is free for startups. If the follow-on work includes a migration (MAP), a test (POC) or new work on AWS (IW), the partner can file funding for it: typically $50K to $150K for startups. Depends on the workload; AWS approves.