Cloud Cost Analyzer flags idle CloudFront distributions and S3-origin distributions that could be optimized, and points at the price-class and caching settings worth revisiting, with cost context for each.
$ cca scan --provider awsRead-only, runs in about 5 minutes. Free tier, no credit card.
Delete idle distributions, set the price class to match your audience geography, raise the cache-hit ratio with better TTLs and cache headers so fewer requests reach the origin, and enable compression. Higher cache-hit ratios directly reduce origin transfer charges.
The price class limits which edge locations serve your content. Using a narrower class (for example only North America and Europe) is cheaper and is the right choice when your users are concentrated there rather than worldwide.
Every request that misses the cache is served from your origin, incurring origin data-transfer and request costs. Improving the cache-hit ratio with correct caching headers keeps more traffic at the edge and off your origin.
Idle gateways and avoidable data-processing charges, one per AZ.
Over-provisioned classes, non-Graviton, and Multi-AZ on non-prod.
Orphaned volumes, old snapshots, and gp2 you never moved to gp3.
ALBs and NLBs with no targets or near-zero traffic, still billing.
Cold data sitting in Standard with no lifecycle policy.
Idle and oversized instances, previous-gen types, 24/7 dev boxes.
Oversized instances, Serverless v1, and I/O-Optimized breakevens.
Idle cache clusters and oversized, non-Graviton nodes.
On-demand billing on steady workloads, and unused indexes.
Over-provisioned memory and x86 functions that could be arm64.