Skip to main content
AWS
Cost Explorer
FinOps
Cost Analysis
Updated Feb 2026

AWS Cost Explorer: Complete Guide to Cloud Cost Analysis

Master AWS Cost Explorer for cost visibility, budgeting, forecasting, and optimization — with practical examples, CLI commands, and comparison with third-party tools
Quick Answer: What Is AWS Cost Explorer?

AWS Cost Explorer is a free, built-in AWS tool for visualizing and analyzing cloud costs. Key capabilities:

  • Cost analysis — Filter by service, account, tag, region, and usage type with daily/monthly/hourly granularity

  • Forecasting — ML-based 12-month cost predictions with 80% confidence intervals

  • Right-sizing — Recommendations for over-provisioned EC2 and RDS instances based on CloudWatch metrics

  • Savings Plans — Automated recommendations for optimal commitment-based discounts

Executive Summary

AWS Cost Explorer is the starting point for any cloud cost optimization journey. It's free, requires zero setup beyond enabling it, and provides immediate visibility into where your money goes. Yet most organizations use less than 20% of its capabilities — missing forecasting, right-sizing recommendations, and programmatic access via the API.

This guide covers everything from basic setup to advanced techniques: filtering by custom tags, creating saved reports, using the CLI for automated analysis, integrating with AWS Budgets for proactive alerts, and understanding when Cost Explorer's limitations require third-party tools like Kubecost, CloudHealth, or Infracost.

Whether you're a startup checking your first AWS bill or an enterprise managing $1M+/month across 50 accounts, this guide provides actionable techniques to extract maximum value from Cost Explorer.

What Is AWS Cost Explorer and Why Should You Use It?

AWS Cost Explorer is a native AWS service that provides interactive visualization and analysis of your AWS spending and usage. It's available in every AWS account at no additional cost (the console is free; API calls are $0.01 each). Unlike the basic AWS Billing Dashboard that shows current-month totals, Cost Explorer lets you slice, filter, and drill into historical cost data across multiple dimensions.

Core Capabilities

  • Cost and usage visualization: Line charts, bar charts, and data tables showing spend over time, grouped by any combination of dimensions (service, account, region, tag, usage type)

  • Granularity options: Monthly (13 months back), daily (3 months), hourly (14 days with detailed monitoring enabled)

  • Forecasting: Machine learning predictions for future costs based on historical patterns, with configurable confidence intervals

  • Right-sizing recommendations: Identifies over-provisioned EC2 instances based on 14 days of CloudWatch CPU, memory, network, and disk metrics

  • Savings Plans recommendations: Calculates optimal commitment levels and estimated savings based on your usage patterns

  • Reserved Instance utilization: Shows RI coverage, utilization, and expiration to optimize your commitment portfolio

How Do You Set Up AWS Cost Explorer?

Cost Explorer requires a one-time enablement per AWS Organization or standalone account. Once enabled, data becomes available within 24 hours.

Step 1: Enable Cost Explorer

# Enable Cost Explorer via CLI aws ce get-cost-and-usage \ --time-period Start=2026-01-01,End=2026-02-01 \ --granularity MONTHLY \ --metrics "BlendedCost" # If not enabled, the above returns an error. # Enable via Console: Billing → Cost Explorer → Enable Cost Explorer # Or via Organizations management account

Step 2: Configure Cost Allocation Tags

Cost allocation tags are the foundation of meaningful cost analysis. Without them, Cost Explorer shows spend by service — useful, but not actionable. With tags, you can filter by team, project, environment, and customer.

# Activate cost allocation tags aws ce update-cost-allocation-tags-status \ --cost-allocation-tags-status \ TagKey=Environment,Status=Active \ TagKey=Team,Status=Active \ TagKey=Project,Status=Active \ TagKey=CostCenter,Status=Active # Tags take 24 hours to appear in Cost Explorer # Only activated tags show as filter dimensions

Tagging Best Practice

Enforce tags at resource creation using AWS Service Control Policies (SCPs) or Terraform variable validation. Retroactive tagging is painful — 60% of organizations with poor tag hygiene give up and start over. Get it right from day one.

Step 3: Enable Hourly Granularity (Optional)

By default, Cost Explorer provides monthly and daily data. Hourly granularity is available for EC2, RDS, and ElastiCache — useful for identifying time-of-day patterns and optimizing scheduling.

How Do You Analyze Costs by Service, Account, and Tag?

Cost Explorer's power lies in its filtering and grouping capabilities. Here are the most valuable analysis patterns.

Analysis 1: Top 10 Services by Cost

# Get cost breakdown by service for last 3 months aws ce get-cost-and-usage \ --time-period Start=2025-11-01,End=2026-02-01 \ --granularity MONTHLY \ --metrics "UnblendedCost" \ --group-by Type=DIMENSION,Key=SERVICE \ --output json | jq '.ResultsByTime[-1].Groups | sort_by(-.Metrics.UnblendedCost.Amount | tonumber) | .[0:10] | .[] | {Service: .Keys[0], Cost: .Metrics.UnblendedCost.Amount}'

Analysis 2: Cost by Team (Using Tags)

# Cost allocation by team tag aws ce get-cost-and-usage \ --time-period Start=2026-01-01,End=2026-02-01 \ --granularity MONTHLY \ --metrics "UnblendedCost" \ --group-by Type=TAG,Key=Team \ --output table

This is where tagging pays off. With consistent team tags, you can generate per-team cost reports for showback/chargeback meetings, track team-level cost trends, and identify which teams are driving spend growth.

Analysis 3: Environment Cost Comparison

Compare production vs. staging vs. development costs to ensure non-production environments aren't consuming disproportionate resources.

# Cost by environment aws ce get-cost-and-usage \ --time-period Start=2026-01-01,End=2026-02-01 \ --granularity MONTHLY \ --metrics "UnblendedCost" \ --group-by Type=TAG,Key=Environment \ --filter '{ "Tags": { "Key": "Environment", "Values": ["production", "staging", "development"], "MatchOptions": ["EQUALS"] } }'

Red Flag: If staging + development costs exceed 30% of production costs, you likely have non-production environments running 24/7 that could be scheduled (nights/weekends off = 65% savings).

How Does Cost Explorer Forecasting Work?

Cost Explorer's forecasting uses machine learning trained on your account's historical usage patterns to predict future costs. It provides point estimates plus confidence intervals (80% and 95%).

Accessing Forecasts Programmatically

# Get cost forecast for next 3 months aws ce get-cost-forecast \ --time-period Start=2026-02-01,End=2026-05-01 \ --granularity MONTHLY \ --metric "UNBLENDED_COST" \ --prediction-interval-level 80 # Response includes: # - Total forecast amount # - Per-month breakdown # - 80% confidence interval (low/high bounds)

Forecast Accuracy Factors

  • Data history: Needs 5+ months for reliable monthly forecasts. Less history = wider confidence intervals

  • Workload stability: Steady-state workloads forecast within 5-10%. High-variability workloads (event-driven, seasonal) can be off by 20-30%

  • Architectural changes: Recent migrations, new services, or major scaling events confuse the model. Wait 2+ months after changes for forecasts to re-calibrate

  • RI/SP changes: Forecasts incorporate current reservation coverage. New RI purchases will over-estimate (forecast won't reflect the discount until the next billing cycle)

How Do You Use Cost Explorer for Right-Sizing Recommendations?

Cost Explorer's right-sizing recommendations analyze CloudWatch metrics to identify over-provisioned EC2 instances. Accessible via Console (Cost Management → Rightsizing Recommendations) or API.

How Recommendations Are Generated

  1. AWS collects 14 days of CloudWatch metrics: CPU utilization, network throughput, disk I/O

  2. Instances are analyzed against performance requirements of smaller instance types

  3. Recommendations are categorized: Terminate (idle), Modify (downsize), or no action needed

  4. Estimated monthly savings are calculated for each recommendation

# Get right-sizing recommendations aws ce get-rightsizing-recommendation \ --service "AmazonEC2" \ --configuration '{ "RecommendationTarget": "SAME_INSTANCE_FAMILY", "BenefitsConsidered": true }'

Limitation: No Memory Metrics by Default

Cost Explorer right-sizing only uses CPU, network, and disk — not memory. Many workloads (Java apps, Redis, data processing) are memory-bound with low CPU. Without installing CloudWatch Agent for memory metrics, you risk downsizing memory-constrained instances. Always validate recommendations against actual memory usage before acting.

What Are AWS Budgets and How Do They Integrate with Cost Explorer?

AWS Budgets complement Cost Explorer by adding proactive cost management. While Cost Explorer looks backward (what did we spend?), Budgets look forward (are we on track?).

Budget Types

  • Cost budget: Alert when spend exceeds a dollar threshold (e.g., $50,000/month). Set at 80%, 100%, and 120% for early warning

  • Usage budget: Alert on resource consumption (e.g., EC2 hours, S3 storage GB). Useful for catching runaway autoscaling

  • Savings Plans utilization: Alert if Savings Plan utilization drops below threshold (indicating unused commitments)

  • RI coverage: Alert if RI coverage drops below target (indicating on-demand spend that should be reserved)

# Create a cost budget with alerts aws budgets create-budget \ --account-id 123456789012 \ --budget '{ "BudgetName": "Monthly-AWS-Budget", "BudgetLimit": {"Amount": "50000", "Unit": "USD"}, "BudgetType": "COST", "TimeUnit": "MONTHLY" }' \ --notifications-with-subscribers '[ { "Notification": { "NotificationType": "ACTUAL", "ComparisonOperator": "GREATER_THAN", "Threshold": 80 }, "Subscribers": [ {"SubscriptionType": "EMAIL", "Address": "finops@company.com"} ] } ]'

How Do You Create Custom Cost Reports and Dashboards?

Cost Explorer supports saved reports that you can bookmark and share. For more sophisticated dashboards, export data to QuickSight or Grafana.

Saved Reports

  • Monthly Executive Report: Group by service, filter to top 10, monthly granularity, 6-month range. Share URL with leadership

  • Team Cost Breakdown: Group by Team tag, monthly granularity. One report per team for showback meetings

  • Non-Production Spend: Filter Environment tag = staging/dev, daily granularity. Monitor for scheduling compliance

  • EC2 Instance Type Analysis: Group by instance type, filter service = EC2. Identify right-sizing opportunities and generation upgrades

Automated Reporting with the API

import boto3 from datetime import datetime, timedelta ce = boto3.client('ce') def generate_weekly_report(): """Generate weekly cost report by service and team.""" end = datetime.utcnow().strftime('%Y-%m-%d') start = (datetime.utcnow() - timedelta(days=7)).strftime('%Y-%m-%d') # Cost by service service_costs = ce.get_cost_and_usage( TimePeriod={'Start': start, 'End': end}, Granularity='DAILY', Metrics=['UnblendedCost'], GroupBy=[{'Type': 'DIMENSION', 'Key': 'SERVICE'}] ) # Cost by team team_costs = ce.get_cost_and_usage( TimePeriod={'Start': start, 'End': end}, Granularity='DAILY', Metrics=['UnblendedCost'], GroupBy=[{'Type': 'TAG', 'Key': 'Team'}] ) # Format and send via SNS/Slack report = format_report(service_costs, team_costs) send_to_slack(report) return report

What Are the Limitations of AWS Cost Explorer?

Cost Explorer is powerful for a free tool, but it has real limitations that growing organizations eventually hit.

  • No container-level visibility: Can't see costs per Kubernetes namespace, pod, or deployment. You see EC2 node costs, not what's running on them

  • Single-cloud only: No Azure or GCP data. Multi-cloud organizations need a separate tool for unified visibility

  • Limited historical data: 13 months maximum. For YoY trending or long-term analysis, you need CUR exports to S3

  • No pre-deployment cost estimation: Can't estimate the cost of a Terraform plan before applying it. Tools like Infracost fill this gap

  • Basic anomaly detection: AWS Cost Anomaly Detection is separate and has 24-48 hour lag. No real-time alerting

  • API costs at scale: At $0.01/request, heavy programmatic usage can cost $50-100/month for large organizations with automated reporting

Cost Explorer vs Third-Party Tools: When Do You Need More?

Cost Explorer is sufficient for many organizations, but certain scenarios demand more capable tooling.

CapabilityCost ExplorerKubecostCloudHealthInfracost
PricingFree (API: $0.01/req)Free tier + $199/mo$65K+/yearFree OSS + $50/mo
Cloud supportAWS onlyAny K8s clusterAWS, Azure, GCPAWS, Azure, GCP
Container visibilityNoYes (namespace/pod)LimitedNo
Pre-deploy estimationNoNoNoYes (Terraform)
Multi-cloudNoK8s onlyYesYes
Anomaly detectionSeparate serviceBasicAdvancedNo
Right-sizingEC2 onlyPods + nodesEC2, RDSNo
Best forAWS basicsKubernetesEnterpriseIaC teams

Decision Framework

  • Spend < $50K/mo, AWS only: Cost Explorer is sufficient. Add AWS Budgets for alerts

  • Kubernetes-heavy: Add Kubecost or OpenCost for container-level visibility

  • Multi-cloud: CloudHealth or Spot.io for unified cross-cloud visibility

  • Infrastructure-as-Code: Add Infracost for pre-deployment cost estimation in Terraform PRs

  • Enterprise (>$500K/mo): Combine Cost Explorer (free baseline) + Kubecost (K8s) + Infracost (IaC) + custom dashboards

Case Study: Israeli Startup Discovers $120K in Annual Savings Using Cost Explorer

A Series B SaaS company (80 engineers, $180K/month AWS spend) had never used Cost Explorer beyond the billing summary. During a FinOps assessment, we ran three analyses:

  1. Environment tag analysis: Discovered staging costs were 42% of production — should be <15%. Root cause: 3 legacy staging environments nobody owned

  2. Right-sizing recommendations: Found 28 EC2 instances where P95 CPU was under 20%. Downsizing saved $4,200/month

  3. Savings Plans coverage: Only 30% of stable workloads had commitment coverage. Adding a 1-year Compute Savings Plan at 70% coverage saved $5,800/month

Total savings: $10,000/month ($120,000/year) — all discovered using the free Cost Explorer console

Frequently Asked Questions

Is AWS Cost Explorer free?

The basic AWS Cost Explorer console is free for all AWS accounts. The Cost Explorer API charges $0.01 per request. Hourly granularity and forecasting are included at no extra cost. For most organizations, programmatic access costs $10-50/month.

How far back does AWS Cost Explorer show data?

13 months at monthly granularity, 3 months at daily, and 14 days at hourly. For longer history, export Cost and Usage Reports (CUR) to S3 and query with Athena.

What is the difference between AWS Cost Explorer and Cost and Usage Reports?

Cost Explorer is a visual dashboard for interactive analysis. Cost and Usage Reports (CUR) provide raw line-item billing data exported to S3 for custom analysis. Use Cost Explorer for quick insights; use CUR for granular, cross-referenced reporting.

How accurate is Cost Explorer forecasting?

Within 10-15% for stable workloads with 3+ months of history. Accuracy degrades for variable workloads, recent architectural changes, or seasonal patterns. Always use the confidence interval, not just the point estimate.

Can Cost Explorer show costs per Kubernetes namespace?

No. Cost Explorer sees AWS resources, not what's running inside them. For Kubernetes cost allocation, use Kubecost, OpenCost, or AWS Split Cost Allocation for EKS.

Need Help Optimizing Your AWS Costs?

Our FinOps experts help organizations extract maximum value from AWS Cost Explorer and implement advanced optimization strategies. Average client saves 35% on cloud spend within 90 days.

Get a Free Cost Analysis
HostingX Solutions company logo

HostingX Solutions

Expert DevOps and automation services accelerating B2B delivery and operations.

michael@hostingx.co.il
+972544810489
EmailIcon

Subscribe to our newsletter

Get monthly email updates about improvements.


© 2026 HostingX Solutions LLC. All Rights Reserved.

LLC No. 0008072296 | Est. 2026 | New Mexico, USA

Legal

Terms of Service

Privacy Policy

Acceptable Use Policy

Security & Compliance

Security Policy

Service Level Agreement

Compliance & Certifications

Accessibility Statement

Privacy & Preferences

Cookie Policy

Manage Cookie Preferences

Data Subject Rights (DSAR)

Unsubscribe from Emails