Performance review template
Free download as CSV and Markdown. Nothing sits in front of the file: no form, no account, no email address.
The files
What it is
A performance review is one row per line the plan had. Each row puts the planned spend and result beside what actually happened, states the variance, names the cause as specifically as the evidence supports, and ends in one decision with one owner and a date.
The three columns kept apart are the whole discipline: the variance is arithmetic, the cause is an explanation, and the decision is a choice. Reviews that blur them produce a conversation about the decision before anybody has agreed what happened.
When to use it
Run it at the end of every flight and on a regular cadence in between. The end-of-flight review is the one that changes the next plan; the regular one is what stops a flight running to its end while somebody quietly hopes it improves.
Run it also after anything unusual — a peak, an outage, a measurement change — while the details are still recoverable.
| Type | How to fill it | |
|---|---|---|
| Period | Text | The window being reviewed, with its dates. Stated on every row because a review that mixes windows produces comparisons nobody can check afterwards. |
| Line reviewed | Text | What this row is about: a campaign, a segment, a channel, a phase. The same unit the plan used, so the two documents can be read side by side. |
| Planned spend | Integer | What the plan said this line would spend, in minor units. Taken from the plan rather than recalculated, so the comparison is with what was agreed and not with what anybody remembers. |
| Actual spend | Integer | What it actually spent, in the same units and the same currency. The gap between this and the planned figure is the first thing a review reads. |
| Planned result | Text | What the line was bought to produce, and how much: the primary metric and the target from the plan. Blank where the plan left it blank, which is honest rather than untidy. |
| Actual result | Text | What it produced, on the same metric, from the source the plan named. Not a different metric that reads better, and not a different source. |
| Variance | Text | The difference, stated plainly on both spend and result. A variance nobody has written down is a variance that will be described differently by everybody in the room. |
| Cause | Text | Why, as specifically as the evidence supports. Where the cause is not known, the honest entry is not known, which is more useful than a plausible story nobody can check. |
| Evidence | Text | What the cause rests on: an export, a date range, a test result, a recorded event. A cause with no evidence is a theory, and theories are what reviews turn into arguments about. |
| Decision | Text | What happens next because of this row: continue, change, stop, investigate. One of those, with the change named. A review that produces no decisions is a report. |
| Owner | Text | Who carries the decision, by name. Assigning it in the room, while everybody is present, is the difference between a review and a discussion. |
| Next review | Date (YYYY-MM-DD) | When this row is looked at again. Decisions without a follow-up date are decisions nobody checks, and the next review then starts from nothing. |
| Notes | Text | What the next reader needs: the event that distorted the period, the measurement change, the thing that was already known and decided against. |
Arithmetic, explanation, choice — in that order
The most common way a review goes wrong is that all three happen at once.
Somebody says a line underperformed and should be cut, and the next twenty minutes are an argument about cutting it. Nobody has established what the variance actually was, whether it is outside the range the plan expected, or whether the cause has anything to do with the line at all.
Three columns fix this by forcing the order. The variance is arithmetic: planned against actual, on spend and on result, stated plainly. The cause is an explanation, held to the evidence. The decision is a choice, made after both.
It sounds procedural and it changes the meeting, because the first two are usually uncontroversial once written down, and the disagreement narrows to the part that is genuinely a judgement.
Take the planned figures from the plan
The planned columns come out of the media plan or the flight plan, unedited.
This matters more than it looks. Reconstructed plans are, reliably, plans that describe what happened: a target quietly softened, a budget remembered as smaller, a metric recalled as the one that moved. None of it is dishonest and all of it destroys the comparison.
So the review is written beside the plan, on the same units — the same lines, the same metrics, the same currency in minor units. Where the plan left a target blank because there was no baseline, the review leaves it blank too and says so. A blank is a fact about what was known at the time.
Review every line, including the boring ones
A review that only covers exceptions produces a distorted record.
It also misses the most useful pattern available: which lines are reliably predictable. A line that has spent within a small margin of its plan and hit its target for four flights running is the most valuable thing in the account, because it is the one you can build a plan around. That fact is invisible if it is never written down.
Those rows take thirty seconds each. Planned, actual, variance small, cause none, decision continue, next review at the end of the next flight.
Hold the cause to the evidence
The cause column is where reviews earn or lose their credibility.
Write only what the evidence supports, and name the evidence: the export, the date range, the recorded event, the test result. Where there is a candidate explanation but nothing to check it against, say that — a likely cause with no evidence is still a theory, and labelling it as one is what stops it being quoted as a finding six months later.
Where the cause is simply not known, write not known. This is the entry teams resist most and it is the most valuable one in the document. A plausible story gets remembered as a fact and shapes the next plan, and the next plan is then built on something nobody ever checked.
Three causes are worth separating explicitly, because they look identical in a platform's reporting: a delivery change, a measurement change, and a real change in performance. Treating the second as the third is how a working campaign gets turned off.
One decision, one owner, one date
Every row ends in one of four words: continue, change, stop, investigate.
Continue and stop are self-explanatory. Change requires the change to be named — not optimise, but move the weight to these weeks, or rebuild this audience, or replace this creative set. Investigate is a legitimate decision and it is what the unknown-cause rows usually get, with the question written down and a date.
Then the owner, by name, assigned in the room while everybody is present. A decision assigned in somebody's absence is a decision that gets read in an email and not made.
Dates, so the next review starts from something
The next-review column is what makes the document cumulative.
Without it, each review begins from the current numbers and everybody's recollection of what was decided last time. With it, the review begins by reading the previous decisions and asking what happened to them, which takes ten minutes and changes the quality of everything that follows.
It also produces the only honest measure of whether reviews are working: the proportion of decisions from last time that were actually carried out.
Record what distorted the period
The notes column carries the events that make a period unrepresentative: a peak, an outage, a measurement change, a supply problem, a competitor's promotion, a public holiday.
Writing them down at the time is the only way they survive. Six months later a line's poor month sits in the record with no explanation, gets treated as evidence about the line, and influences a plan that should never have counted it.
Before you close the review
Seven checks. Every planned figure came from the plan rather than from memory. Every line the plan had has a row, including the ones that went as expected. Variance, cause and decision sit in separate columns. Every cause names its evidence or says not known. Every decision is one of continue, change, stop or investigate, with any change named specifically. Every decision has an owner and a next-review date, assigned in the room. And anything that distorted the period is recorded while it is still recoverable.
Made for your industry
Performance review template for B2B SaaS
A free performance review template for B2B SaaS as a CSV and a Markdown file, reviewed by segment and stage, with the cycle lag written into the comparison.
Performance review template for Ecommerce
A free performance review template for ecommerce as a CSV and a Markdown file, reviewed by catalogue segment, with margin, returns and stock in the causes.
Performance review template for Fintech
A free performance review template for fintech as a CSV and a Markdown file, read on funded accounts, with approval rate and review changes among the causes.
Performance review template for Healthcare
A free performance review template for healthcare as a CSV and a Markdown file, read on attended appointments, with capacity and handling among the causes.
Performance review template for Real estate
A free performance review template for real estate as a CSV and a Markdown file, read per listing and per stage, with the guide and the market as causes.
Templates that go with it
Budget allocator template
A free budget allocator template as a CSV and a Markdown file: one row per destination, with floors, ceilings, the basis for each share and a move rule.
Phase plan template
A free phase plan template as a CSV and a Markdown file: one row per area per phase, with limits, what still needs approval, and the evidence to advance.
Test plan template
A free test plan template as a CSV and a Markdown file: one row per test, with the hypothesis, the single variable, the read date and the decision rule.
Related reading
Questions
Put frontier AI to work on every ad account you run.
Tempio connects your ad accounts into one workspace and hands your own AI the numbers and the tools. Every change it writes is a draft until you approve it, or until a rule you wrote does.
Request early access- Read and draft by default. Approve is a separate permission you grant.