CLOUDWATCH LOGS COST ADVISOR · RUNS IN YOUR BROWSER

Why is your CloudWatch Logs bill so high?

Paste one row per log group — stored GB, retention, GB ingested per month — and see what ingestion vs storage costs, groups that never expire, dead groups still billing storage, Infrequent Access candidates and the ready-to-paste aws logs put-retention-policy command.

Nothing is uploaded and AWS is never contacted. The text box is analysed in this browser and never leaves your device. Retention savings assume even ingestion over a group's life, which is a model.

1. Paste your log groups

Prefer a CLI, or want a CI check?

Same logic, zero dependencies, one command — reads a file or stdin:

node cli.mjs analyze groups.csv
cat groups.csv | node cli.mjs analyze -
node cli.mjs analyze groups.csv --retention 14 --fail-on warn   # exit 1 on any waste
node cli.mjs analyze groups.csv --json --prices my-prices.json

Get cli.mjs and engine.mjs — Node 18+, nothing to install, no network call. More: CloudWatch Logs cost: retention, ingestion and Infrequent Access.

What's recognised

InputHandling

Prices are illustrative and dated; edit them with --prices in the CLI. Other regions, vended-log tiers, Logs Insights queries, data protection and exports are not modelled.

Comparing hosted logging vendors rather than costing CloudWatch? Price Datadog, Grafana Cloud, Axiom, Better Stack and Papertrail side by side at your GB-per-month volume.

Common questions

Does this connect to my AWS account?

No. It reads the rows you paste and never contacts AWS. It cannot see your real invoice, free tier or vended-log pricing, so every dollar figure is the rows you pasted times list prices you can edit.

How do I get the numbers?

Stored bytes, retention and creation time come from aws logs describe-log-groups (storedBytes, retentionInDays, creationTime). Ingested GB is the sum of the IncomingBytes metric per log group over 30 days, divided by 1e9. A group with no retentionInDays never expires.

Why is my CloudWatch Logs bill mostly ingestion?

Ingestion is $0.50 per GB, billed once when the data arrives, while storage is only $0.03 per GB-month. Shortening retention trims the small line; cutting what you log (debug level, health checks, request bodies) trims the big one.

Does setting a retention policy delete data?

Yes. Log events older than the retention period are deleted, usually within a day, and that cannot be undone. Export anything you must keep to S3 first and check audit and compliance requirements.

Is my data uploaded anywhere?

No. The browser page analyses the text in your own browser and never sends it anywhere. The CLI reads a local file or stdin and makes no network call.