AI Cost Visibility & Optimization Understand, allocate & reduce your AI costs - Learn More

AWS Cost Explorer vs Cost and Usage Report: Why Your Numbers Don't Match (and When to Use Each)

AWS Cost Explorer and Cost and Usage Report (CUR) are both AWS-native cost reporting tools, but they serve fundamentally different purposes. Cost Explorer is AWS's managed UI for quick cost visibility and forecasting with built-in charts and filters. CUR is a raw, granular data export that lands in S3 and requires external query tools like Athena or QuickSight to analyze.

The key difference is how you access and analyze the data: Cost Explorer provides managed dashboards, filters, and forecasting with limited historical and resource-level granularity, while CUR provides the underlying line-item billing data for custom analysis and long-term storage.

This guide explains why Cost Explorer and CUR numbers diverge, when to use each tool, and when to outgrow both.

Cost Explorer vs CUR: Quick Comparison

Here’s the tl;dr on the comparison:

Dimension

AWS Cost Explorer

AWS Cost and Usage Report (CUR)

Interface

Managed UI with charts, filters, forecasting

Raw CSV/Parquet files exported to S3

Granularity

Daily/monthly by default; optional hourly and resource-level data

Detailed line-item data with resource IDs and usage dimensions

History retention

14 months of daily/monthly data by default; up to 38 months at monthly granularity

Unlimited (stored in your S3 bucket)

Data freshness

Updated daily; current-period data may change as AWS processes usage

Updated at least daily until charges are finalized

Intended user

FinOps analysts, finance teams, quick ad-hoc queries

Data engineers, FinOps platform builders, custom BI dashboards

Cost

Free (included with AWS account)

S3 storage cost (~$5-50/month depending on volume) + Athena/QuickSight query costs

Setup complexity

Zero — available immediately in AWS Console

Requires S3 bucket, IAM permissions, Athena table creation, query optimization

The fundamental tradeoff is that Cost Explorer prioritizes accessibility (anyone with AWS Console access can generate a cost report in 30 seconds). CUR prioritizes granularity (every line item on your bill, queryable at resource level, but requires data pipeline engineering to make usable).

Why Your Cost Explorer and CUR Numbers Don't Match

The most common FinOps question on AWS re:Post and r/aws: "Why does my Cost Explorer total not match my CUR query for the same date range?" Four primary reasons drive the discrepancy.

1. Amortized vs Unblended vs Blended Cost Calculation Differences

AWS offers three cost calculation methods. Cost Explorer defaults to unblended cost in most views, while CUR exposes all three as separate columns.

Unblended cost — The actual price you paid for each line item. For Reserved Instances or Savings Plans, the management account (payer account) shows the full RI or SP cost. Linked accounts (member accounts) show discounted rates for resources covered by those commitments. This creates systematic imbalance: unblended will overcharge the management account and undercharge linked accounts in multi-account organizations.

Amortized cost — Spreads upfront RI or SP fees across the commitment period. A 1-year, $10,000 upfront RI shows as $833.33 per month in amortized cost versus $10,000 in month one for unblended. Amortized cost reflects the effective cost spread across the billing period and is the standard for internal chargeback.

Blended cost — Consolidation account feature that averages RI or SP discounts across all linked accounts. If the org has 50% RI coverage, blended cost applies a 50% discount rate to all eligible usage, even if specific accounts aren't using RIs. Blended cost smooths variance but obscures true per-account spend.

Why this causes CE vs CUR discrepancies: Cost Explorer and CUR can produce different totals when you're comparing different cost metrics. If Cost Explorer is configured to show amortized cost while your CUR query sums unblended cost, the numbers will differ by the treatment of Reserved Instance and Savings Plans fees. Before comparing the two, make sure the cost metric, date range, and filters are aligned.

As another example, on r/aws, one user queried CUR for blended cost but Cost Explorer was set to unblended. The CUR total was "short by some amount" because Cost Explorer included the full upfront RI charge that month, while CUR blended cost had spread it.

2. Refunds, Credits, and Adjustment Handling

AWS represents refunds, credits, and billing adjustments as separate line items. Depending on the Cost Explorer view and filters you're using, those adjustments may be included or excluded from the total you're comparing against CUR.

This creates discrepancies when the two reports aren't aggregating the same line-item types. For example, a CUR query that sums usage charges but excludes credit line items will show gross spend, while a query that includes the corresponding negative credit line items will show net spend.

AWS Cost Explorer vs Cost and Usage Report Example: An organization incurs $50,000 in AWS charges and receives a $5,000 promotional credit in March. A CUR query that excludes credit line items reports $50,000. Including the -$5,000 credit produces $45,000 in net cost. If your Cost Explorer view is showing $45,000, comparing it against the gross CUR query creates an apparent $5,000 discrepancy.

3. Service Grouping and Category Differences

Cost Explorer aggregates billing data into service and usage categories based on the dimensions selected in your report. CUR exposes the underlying line items, giving you more control over how those charges are grouped in your queries.

This can create apparent discrepancies when the categories you're comparing aren't equivalent. For example, a Cost Explorer report grouped by service may combine multiple usage types under the same service total, while a CUR query may filter or aggregate those usage types separately.

If you compare a Cost Explorer service total against a CUR query built from a narrower set of usage types or line-item categories, the totals will diverge. Make sure the service, usage type, charge type, and other grouping dimensions are aligned before treating the difference as a billing discrepancy.

4. Cost Explorer's Estimation Behavior During the Current Month

Both AWS Cost Explorer and AWS CUR can contain changing cost data during the current billing period. Cost Explorer generally reflects usage through the previous day, while CUR is refreshed at least daily until AWS finalizes your charges.

Because the two aren't necessarily refreshed at exactly the same moment, a Cost Explorer report and CUR query taken during the month can temporarily show different totals even when the cost metric and filters match.

Why timing matters: AWS continues processing usage, credits, refunds, and other billing adjustments throughout the billing period. If Cost Explorer reflects a newer billing update than the CUR files currently in S3 — or vice versa — the totals can temporarily diverge. The discrepancy should narrow once both datasets have refreshed and the billing period is finalized.

Example: On March 15, Cost Explorer shows $12,500 month-to-date spend while your latest CUR query shows $12,300. Before investigating the $200 as a billing discrepancy, check when the CUR files and Cost Explorer data were last refreshed. Rerunning the comparison after both have updated may eliminate the difference.

Decision Framework: When to Use Cost Explorer, CUR, or Both

Here are the use cases in which each fits best:

Use Cost Explorer When:

1. You need quick cost visibility for stakeholders without data engineering resources

Finance teams and executives need month-over-month trends, forecasts, and anomaly detection without building Athena queries. Cost Explorer provides this in under a minute. Filter by service, linked account, or tag. Export to CSV for inclusion in board decks.

2. You mainly need recent history and high-level multi-year trends

Cost Explorer provides 14 months of daily and monthly historical data by default, which covers most current-period and year-over-year analysis. You can also enable up to 38 months of history at monthly granularity. If you need detailed historical billing data over longer periods, CUR is the better fit.

3. You're using AWS Budgets, Cost Anomaly Detection, or forecasting features

These AWS-native tools integrate directly with Cost Explorer. Budgets trigger alerts when spend exceeds thresholds. Cost Anomaly Detection uses machine learning to surface unusual spikes. Both require zero setup beyond enabling the feature.

4. Your organization has under 50 AWS accounts and simple tagging structures

Cost Explorer's filtering works well for small-to-mid-size deployments. Once you hit 100+ accounts, complex multi-dimensional tag analysis (team + environment + cost center + project), or need to join cost data with external systems (JIRA, ServiceNow, HR systems), Cost Explorer's UI becomes limiting.

Use Cost and Usage Report (CUR) When:

1. You need resource-level cost attribution tied to specific EC2 instances, Lambda functions, or S3 buckets

CUR provides comprehensive resource IDs and billing dimensions across your detailed cost and usage data, making it much better suited to persistent resource-level analysis. Cost Explorer now supports resource-level data for supported use cases, but with shorter retention and less flexibility than querying the underlying CUR dataset.

2. You're building custom BI dashboards in Tableau, Looker, Power BI, or QuickSight

CUR lands in S3 as Parquet files. Connect QuickSight, Athena, or Redshift Spectrum to query and visualize. Build dashboards showing cost per customer, per feature, per deployment environment — dimensions Cost Explorer doesn't expose.

3. You need long-term detailed cost data for compliance, auditing, or trend analysis

Cost Explorer can provide up to 38 months of monthly history, but detailed historical analysis is more limited. CUR files can persist in S3 indefinitely, subject to your lifecycle policies, letting you query multi-year trends, compare infrastructure costs across product generations, or build long-term RI and Savings Plans utilization reports.

4. You're integrating AWS cost data with external systems (CMDB, ITSM, HR, ERP)

CUR exports to S3, where ETL pipelines can join it with employee data, project codes, customer records, or infrastructure topology. Build showback/chargeback systems that allocate AWS spend to departments based on employee count or revenue attribution.

Use Both When:

1. Executives need quick dashboards (Cost Explorer) AND FinOps engineers need granular analysis (CUR)

Common pattern: CFO uses Cost Explorer for monthly budget reviews. FinOps team queries CUR for detailed investigations when anomalies appear. Cost Explorer surfaces the spike, CUR identifies the root cause resource.

2. You're transitioning from Cost Explorer to CUR but need to maintain continuity during migration

Building a CUR pipeline takes 2-4 weeks (S3 setup, Athena table creation, dashboard development). During that window, continue using Cost Explorer for daily monitoring while validating CUR data accuracy.

Outgrow Both When:

1. You need automated cost allocation without manual tagging

Both Cost Explorer and CUR rely on user-applied resource tags for multi-dimensional analysis. If your tagging compliance is under 70%, both tools produce incomplete reports. Third-party FinOps platforms like nOps use inference-based cost allocation that attributes untagged resources to teams based on resource relationships and usage patterns.

2. You need real-time cost visibility with sub-daily granularity

Cost Explorer typically reflects data through the previous day. CUR updates at least daily but with a lag. Neither supports real-time streaming cost data. For applications requiring sub-hourly cost tracking (e.g., AWS cost anomaly detection for production incidents), you need a platform that processes CloudWatch metrics and billing events continuously.

3. CUR pipeline maintenance becomes a bottleneck

CUR requires ongoing engineering: Athena query optimization as data volumes grow, S3 lifecycle policies to manage storage costs, schema updates when AWS adds new services or columns, QuickSight dashboard maintenance. Teams spending 5+ hours per week on CUR pipeline maintenance often move to managed platforms.

4. You need multi-cloud cost visibility (AWS + Azure + GCP) in a single pane of glass

Cost Explorer only shows AWS. CUR only exports AWS data. Organizations running workloads across AWS, Azure, and GCP need a unified platform to compare cross-cloud spend, identify migration opportunities, and track multi-cloud commitments.

The Bottom Line

AWS Cost Explorer and Cost and Usage Report solve different problems. Cost Explorer is built for accessibility — anyone can generate a cost report in 30 seconds without data engineering skills. CUR is built for precision — every line item on your bill, queryable at resource level, but requires pipeline engineering to make usable.

The "why don't my numbers match?" problem stems from four sources: cost calculation method differences (amortized vs unblended vs blended), refunds and credits handling, service grouping discrepancies, and Cost Explorer’s current-month data refresh timing. Understanding these differences is critical for building trust in financial reports.

Most teams start with Cost Explorer, migrate to CUR when they need deeper resource-level analysis, longer-term granular history, or custom reporting, then eventually adopt a managed FinOps platform when CUR pipeline maintenance becomes a bottleneck. The right choice depends on team size, engineering capacity, reporting complexity, and time-to-insight requirements.

For organizations spending 5+ hours per week on CUR pipeline maintenance or needing faster cost attribution than CUR provides, platforms like nOps offer CUR-grade granularity with Cost Explorer-grade usability — unlimited historical retention, pre-built dashboards, and automated cost allocation without S3, Athena, or QuickSight engineering.

nOps: CUR-Grade Granularity Without the Pipeline Engineering

Most FinOps teams eventually outgrow Cost Explorer's retention, granularity, and filtering limitations but don't want to maintain CUR pipelines indefinitely. nOps provides resource-level cost granularity (equivalent to CUR) with zero-setup dashboards (equivalent to Cost Explorer's usability). With nOps, you get:

Granular cost analysis — Drill into spend across accounts, services, teams, applications, purchase types, and other useful dimensions for Business, Finance, FinOps and Engineering.

Pre-built cloud cost allocation dashboards & reporting — Get useful cost views immediately without building QuickSight dashboards or custom BI reports.

Automated budget alerts and forecasting — Set budgets by team, service, or account. nOps monitors spend in real-time with custom alerts.

Long-term historical retention — without managing S3 storage, lifecycle policies, or Athena partitions.

You can book a demo to try it out for free with your own AWS account.

nOps processes over $4 billion in cloud spend and was recently named #1 in G2's cloud cost management category.

Frequently Asked Questions

Let’s talk about some FAQ relating to the difference between Cost Explorer and CUR.

Why does my Cost Explorer total not match my AWS invoice?

Cost Explorer may be showing net amortized cost (after credits and with RI/SP costs spread over time), while your invoice shows gross unblended cost (upfront charges in the month paid). Check your Cost Explorer "Advanced Options" to confirm which cost type is displayed. Also verify that Cost Explorer's date range matches your invoice's billing period exactly — off-by-one-day errors are common.

Can I query Cost Explorer data programmatically?

Yes, via the AWS Cost Explorer API. The API lets you programmatically query the Cost Explorer data available to your account, including supported filters, dimensions, cost metrics, and enabled historical data. If you need comprehensive line-item billing data for custom analysis, use CUR with Athena instead. AWS Cost Explorer pricing is $0.01 per API request for your primary billing view.

How much does it cost to use CUR?

CUR itself is free. You pay S3 storage costs (typically $5-50/month depending on AWS spend volume and retention period) plus Athena query costs. Athena charges $5 per TB of data scanned. A typical organization with $100K/month AWS spend generates 2-5 GB of CUR data per month. Querying one month costs $0.01-0.02 in Athena charges. The real cost is engineering time to build and maintain the pipeline.

Should I use blended, unblended, or amortized cost for internal chargeback?

Amortized cost is the industry standard for chargeback. It spreads RI/SP upfront costs across the commitment period, providing stable month-over-month costs. Unblended systematically overcharges the management account and undercharges linked accounts. Blended averages discounts across all accounts, which can misrepresent true consumption in environments with highly variable RI usage.

Can I backfill historical data if I enable CUR today?

No. CUR only exports data from the date you enable it forward. If you need long-term historical CUR data, enable it now so you can begin accumulating that history. Some third-party platforms (including nOps) can backfill historical data via the Cost Explorer API during onboarding, preserving available Cost Explorer history before CUR activation.

Tags

Shouri Thallam

Shouri Thallam

Published Date: August 11, 2026, AWS Pricing and Services

Featured Content

Introducing Cursor Integration in nOps

Announcement

Introducing Cursor Integration in nOps

byRick Haggart
Introducing Claude.ai (Enterprise) Integration in nOps

Announcement

Introducing Claude.ai (Enterprise) Integration in nOps

byRick Haggart
Amazon EMR Cost Optimization: How to Cut AWS Big Data Processing Costs by 30% or More

Cost Optimization

Amazon EMR Cost Optimization: How to Cut AWS Big Data Processing Costs by 30% or More

bynOps
Cloud GPU Pricing Comparison 2026: AWS vs Azure vs GCP

AI

Cloud GPU Pricing Comparison 2026: AWS vs Azure vs GCP

byChintu Parikh
Azure AI Foundry Pricing 2026: Full Cost Breakdown (Now Microsoft Foundry)

AI

Azure AI Foundry Pricing 2026: Full Cost Breakdown (Now Microsoft Foundry)

bynOps
AWS Cost Explorer vs Cost and Usage Report: Why Your Numbers Don't Match (and When to Use Each)

AWS Pricing and Services

AWS Cost Explorer vs Cost and Usage Report: Why Your Numbers Don't Match (and When to Use Each)

byShouri Thallam