Guide · FinOps
AWS Billing Alerts Not Working? How to Fix
You set up AWS Budgets but alerts never arrived. Here's how to fix the most common issues and get alerts working.
Working budget alerts are operational evidence for Cost Optimization monitoring checks. Primary control: Cost Optimization
"We have Budgets" is not the same as "we get emailed"
Silent Budgets are worse than none—they create false confidence. A team set 80%/100% alerts, then ate a $12k spike from a leaked key with zero mail: SNS subscription existed but was never confirmed. The invoice was the pager.
Checklist that actually makes Budgets fire
1. Cost Explorer on — Cost budgets need the data pipeline enabled in Billing & Cost Management.
2. SNS subscription confirmed — open the confirm link; Pending ≠ working.
3. Publish permissions — budget role/topic can publish; wrong IAM = silent drop.
4. Right budget type — Cost for dollars; don't expect Usage/Reservation budgets to behave like invoice alarms.
5. Prove it — temporarily set a tiny threshold and force a notification; then restore real limits.
Pair thresholds with anomaly detection
Fixed percent alerts miss weird mid-budget spikes. Keep Budgets for ceiling breaches; add Cost Anomaly Detection for shape changes. APRF Cost Optimization wants alerts that have been tested—not a dashboard checkbox.
Next: Cost Optimization
Open the related pillar specification for mandatory checks, artifacts, and pass conditions. Self-attest is optional.
Related
Frequently asked questions
- Why aren't my AWS billing alerts working?
- Common causes: SNS email subscription not confirmed, Cost Explorer not enabled, wrong budget type, or IAM permissions. Check each and test with a low threshold.
- How do I enable AWS Cost Explorer?
- Go to Billing & Cost Management > Cost Explorer. Click Enable. It may take up to 24 hours for data to appear. Budgets require Cost Explorer.
- Do I need to confirm SNS for AWS Budgets?
- Yes. When you add an email to an SNS topic, you must click the confirmation link in the email. Until then, alerts won't be delivered.