agent's budget alert fired on gross spend - the reserved-instance credits made net spend fine
Fixes a budget alert that fires on gross spend by basing alerts on net amortized cost. Use when budget alerts fire on gross spend while net spend (after RI and savings-plan credits) is within budget. Not for genuinely over-budget spend.
TL;DR
The alert watches gross (unblended, pre-credit) spend, but reserved-instance and savings-plan credits bring the net bill well under budget, so the alert cries wolf every month. Reconfigure the budget to alert on net amortized cost (or unblended cost minus credits), which reflects what is actually paid. Alert on the bill, not the sticker price.
Error
agent's budget alert fired on gross spend - the reserved-instance credits made net spend fineSteps
- Confirm the false alarm: compare the alert's gross figure against the net bill after credits. Expected: net is within budget while gross exceeds it.
- Open the budget definition and check which cost metric it evaluates. Expected: it uses gross or unblended cost.
- Change the budget to evaluate net amortized cost (amortized RI and savings-plan costs net of credits). Expected: the budget reflects actual spend.
- Wait for the next evaluation cycle and verify no false alert fires. Expected: alerts fire only on genuine overruns.
- Document the metric choice so future budgets use net cost. Expected: the runbook specifies the correct metric.
When to use
- Budget alerts fire while the net bill is fine.
- RI and savings-plan credits distort gross spend.
- Tuning budget alert accuracy.
When not to use
- Net spend is genuinely over budget (the alert is correct).
- There are no credits or reservations (gross equals net).
- The alert threshold itself is wrong.
Tool compatibility
AWS Budgets, Cost Explorer (current 2026 releases).
Variant phrasings
budget alert false positive with ris
Alert on net amortized cost, not gross.
gross spend over budget, net fine
The credits are working; the alert metric is wrong.
monthly false budget alarms
Switch the budget to the net cost metric.
Why it happens
Cloud bills have two numbers: the gross sticker price and the net after commitment credits, and they diverge as RI and savings-plan coverage grows. Budgets default to the simpler gross metric, which makes every well-covered account look over budget. Net amortized cost is the economically true number (it spreads commitment costs and nets the credits), which is why it is the right alert metric for committed accounts.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_ZF1Qpon59Ax5Wj9f6K7xLA