AILC-24 · Drawer: Finance & accounting
/variance-story
Turns budget vs actual into commentary a CFO reads: what moved, why, and whether it comes back next month.
Ask it: “Write the March commentary from this budget vs actual.”
When it runs
Turn a budget-vs-actual, forecast-vs-actual or this-period-vs-last-period table into the management commentary a CFO, board or department head actually reads: what moved, why it moved, whether it will happen again, and what someone should do about it. Use this skill whenever the user pastes or uploads a P&L, cost centre report, KPI table or budget comparison and asks for "commentary", "variance analysis", "explain the numbers", "write the monthly report", "month-end narrative", "what happened this month", or "board pack notes". ALSO use it when the user asks Claude to summarise any financial table for a senior reader. Do NOT use to build the budget itself, to forecast, or to audit the formulas in the file (use a model audit for that).
The full file
---
name: variance-story
description: >-
Turn a budget-vs-actual, forecast-vs-actual or this-period-vs-last-period
table into the management commentary a CFO, board or department head
actually reads: what moved, why it moved, whether it will happen again,
and what someone should do about it. Use this skill whenever the user
pastes or uploads a P&L, cost centre report, KPI table or budget
comparison and asks for "commentary", "variance analysis", "explain the
numbers", "write the monthly report", "month-end narrative", "what
happened this month", or "board pack notes". ALSO use it when the user
asks Claude to summarise any financial table for a senior reader. Do NOT
use to build the budget itself, to forecast, or to audit the formulas in
the file (use a model audit for that).
---
# Variance story
Most variance commentary repeats the table in sentences. "Marketing costs
were €42k against a budget of €35k, an overspend of €7k (20%)." The reader
already had that number. What they did not have is the reason, whether it
will come back next month, and what they are being asked to decide. A
senior reader gives a monthly report about ninety seconds. Commentary that
spends those seconds restating figures has failed, however accurate it is.
Good commentary does three jobs in this order: it ranks (which two or
three lines matter), it explains (the driver, not the label), and it
classifies (timing, one-off, or a real change in the run rate). This skill
forces all three.
## Workflow
### 1. Confirm the frame before writing
From the file or the chat, pin down:
1. What is compared with what (actual vs budget, vs forecast, vs last
year, vs last month).
2. The period (month, quarter, year to date) and the currency and scale.
3. Who reads it (board, CFO, department head, client). This sets the
length and the vocabulary.
4. The materiality line: below what size does a variance not deserve a
sentence? If the user gives none, use the larger of 5% of the line or
1% of total revenue, and say you used it.
Ask once only if the comparison or the period is unclear. Everything else
can be a stated assumption.
### 2. Rank the variances
Compute every variance in amount and percent, then rank by absolute amount,
not by percent. A 300% overspend on a €400 line matters less than a 4% miss
on revenue. Keep only the lines above the materiality line. Most months
have two to four. If there are more than six, the story is a pattern (for
example "every cost line is over because of the new office"), so find it.
### 3. Find the driver for each
The label of a line is not its driver. "Higher personnel costs" is a
label. "Two hires started in March, budgeted for June" is a driver. For
each material variance, look for the driver in this order:
1. Notes, comments or columns in the file itself.
2. What the user said in the chat.
3. Arithmetic that splits the variance: price vs volume, rate vs headcount,
FX vs underlying. Show the split when the data allows it.
If none of these explain it, write "driver not known: ask [owner]". Never
invent a plausible reason. An invented driver in a board pack is worse than
an honest gap, because someone will act on it.
### 4. Classify each one
Every material variance gets exactly one tag:
- **TIMING**: the money moved between months but the year is unchanged
(an invoice paid early, a campaign moved). Says: no action, watch next month.
- **ONE-OFF**: will not repeat (a legal fee, a write-off, a bonus). Says:
exclude from the run rate.
- **RUN-RATE**: a real change that continues (a price rise, a lost client,
a new hire). Says: the forecast must change.
- **UNKNOWN**: not explained yet. Says: who will find out, by when.
The tag is what the reader needs most, because it tells them whether the
year-end number has moved.
### 5. Write the commentary
Use this structure:
```
## [Period]: [the one-line headline, the most important fact]
**Bottom line:** [Net result vs comparison, in one sentence. Then whether the
full-year view changes, and by how much if known.]
**What moved**
1. [Line]: [+/- amount, %]. [Driver in one sentence.] [TAG]. [Action or "no action".]
2. ...
**Below the line:** [All other variances together, in one sentence, e.g.
"Other lines net to +€3k, none above €5k."]
**Decisions needed:** [Only if any. Who, what, by when.]
```
The headline names the fact, not the topic. "Revenue 6% under budget
because the Lisbon client paid late" beats "March results overview".
## Writing rules
- Lead every point with the number, then the reason. The reader scans
down the left edge.
- Favourable and unfavourable in plain words: "€7k over budget", "€12k
ahead of last year". Avoid "(F)" and "(U)" unless the house style uses them.
- One sentence per driver. If it needs three, the driver is not clear yet.
- No filler verbs: "was impacted by", "reflects", "is attributable to".
Write "rose because", "fell because".
- No em dashes, no "it is worth noting", no adjectives that grade results
("strong", "disappointing") unless a target defines them.
- Keep every figure identical to the table. If you round, round the same
way everywhere, and run a number check before sending.
## Judgment rules
**Rank by money, write by consequence.** Put the RUN-RATE items first even
if a TIMING item is bigger, when the reader cares about the full year.
Say why you ordered it that way if it is not by size.
**Good news needs a driver too.** An underspend because a hire is late is
not a saving, it is a TIMING item. Commentary that celebrates a delayed
cost misleads the reader.
**Net figures hide stories.** If revenue is on budget but one product is
€50k under and another €50k over, that is two material variances, not zero.
**Do not grade people.** The commentary explains numbers. "Sales underperformed"
names a team. "Two renewals moved to April" names a fact.
## Example
Table: Marketing actual €42.0k vs budget €35.0k.
Weak: "Marketing costs were €42.0k, €7.0k (20%) over the budget of €35.0k,
reflecting increased activity."
Strong: "Marketing: €7.0k over budget. The April trade fair stand was paid
in March. TIMING. No action; April will show the same amount under budget."
Same number, but the second version tells the CFO the year is unchanged,
which is the only thing they wanted to know.