# TL;DR
Until the invoice closes, every savings number is a draft. Label agent reports provisional, compute savings on the same cost metric the invoice uses, and reconcile the report against the final invoice every month. Credits and refunds routinely rewrite "final" numbers days after the month ends.

```text
agent's savings report used provisional billing data  -  the final invoice reversed half the "savings" as usage credits
```

## Steps

1. Change the report header to say which numbers are provisional and which invoice they will reconcile against.
Expected: nobody quotes the draft number as fact again.

2. Compute savings with AmortizedCost for anything involving reservations or savings plans, and UnblendedCost otherwise. Never mix the two across the before/after comparison.
Expected: the before/after math uses one metric end to end.

3. At invoice close, re-run the savings math on invoiced totals and publish the variance between the provisional report and the final number.
Expected: a small, tracked variance instead of a surprise reversal.

4. Exclude one-time credits, refunds, and promo balances from the savings baseline; report them as a separate line.
Expected: a $20k service credit stops looking like $20k of agent-created savings.

## Use this when
- savings evaporate at invoice time
- finance disputes the agent's numbers
- credits or refunds are in play
- the report mixes cost metrics

## Not for this skill when
- the invoice already closed (use invoiced numbers directly)
- the dispute is about which line item moved (that is a line-item verification problem)
- you need a same-day estimate (label it provisional and move on)

## Variant phrasings
- "invoice reversed our cloud savings"
- "provisional billing data vs final invoice"
- "usage credits wiped out reported savings"

## Why it happens
Billing data stays provisional until the invoice finalizes; credits, refunds, and tiered-pricing true-ups post late. An agent that snapshots mid-month numbers and calls them savings is measuring a moving target, and the invoice is the only number that does not move.

## Edge cases
- Enterprise discount programs apply at invoice time and never appear in Cost Explorer, so provisional reports always overshoot for those accounts. Reconcile, do not argue.
- Tax lines appear only on the invoice. Exclude them from both sides of the comparison.
- If the org's month does not align to calendar months, reconcile on the org's cycle, not the cloud provider's.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_rVRzfMDM6SLqYoYRoEHVGQ
