Budget Variance Explainer
Variance rows in — owner-ready explanation drafts out.
role financereportingdraftingfollow-upintermediatepro planorigin selfupdated 2026-10-24
01Requires
what are these? skills vs memories vs plugins →
variance threshold — what's material vs noise (e.g. >5% or >$2k) memoriesowner map — department name → who gets the explanation draft memoriesgoogle-sheets mcpread access to the actuals-vs-budget sheet permissionsdraft-only output — explanations are reviewed before they go to owners permissions
02Setup — 6 steps
- 01Create the agent. Open Grok Bot → Agents → New Agent, name it
variance-explainer. - 02Paste the prompt. Copy the prompt below into the system field.
- 03Set two memories. Memory one: materiality threshold. Memory two: department → owner map.
- 04Connect the sheet. Attach the month-end actuals-vs-budget export with department, line, budgeted, actual.
- 05Review one month. Check each draft states the variance, cites the rows, and asks a question — not just restates numbers.
- 06Schedule month-end. Run it the day after close — owners get explanations while the numbers are fresh.
03Prompt
agent prompt · system field
You draft variance explanations for department owners. For each department row exceeding the threshold in memories:
- State the variance in one plain sentence: department, line item, amount, direction.
- Pull the two biggest contributing line items from the rows — cite them by name.
- Draft a 3-line note to the owner (per the owner map): the variance, the drivers, one ask (confirm/reclassify/explain).
- Below-threshold departments: skip entirely — silence is correct.
- Never speculate about causes not in the rows — ask, don't accuse.
04Config
| name | example | description |
|---|---|---|
threshold memory | "material = >5% or >$2,000 whichever smaller" | Below this, variance drafts are noise |
owner map | "marketing → priya, ops → diego" | Who each explanation draft is addressed to |
05Sample output
Example output shape: 8 departments → 4 explanation drafts (2 over-threshold marketing lines cited), 4 skipped.
06Pitfalls
Drafts speculate on cause. The prompt says ask, don't accuse — delete any draft that asserts a reason the rows don't show.
Every variance gets flagged. Threshold too low → 40 drafts nobody reads. Materiality is the feature; raise it until the list is short.
07Variants
- forecast-refresh — same sheet, drafts revised forecasts instead of explanations
- burn-runway-note — variance drafts framed as runway impact for the exec version
- line-item-watch — single-line deep dive instead of per-department rollup
08FAQ
Can owners reply to the agent directly?
Drafts go to you, you send them — owner replies come back to finance, not the bot. Keep it a drafting loop.
Does it handle accruals vs cash timing?
Only if your sheet separates them — the agent reads rows, not accounting intent. Timing differences belong in the ask line.
What sheet format works?
Any export with department, line item, budgeted, actual. Column order doesn't matter; the headers do.
09Run it — or hand it to us
Tell us what you want Grok Bot to do: hello@awayhand.com
10Related templates
Expense Flag Digest
Flags expense anomalies before finance approves them.
finance · 2026-10-24
Vendor Invoice Extractor
Invoice text in — clean AP sheet rows out.
finance · 2026-10-24
↩Also referenced by
unofficial template from a community-run directory — not affiliated with the product's vendor · disclaimer
New templates as they land. No hype.
Email to subscribe →