The Prompt Card Index
Monthly account narrative: a client-ready story the data actually supports
Paste a KPI table with month-on-month and year-on-year columns and get a 250-word narrative of what happened, why, and what comes next, with invented causes forbidden.
The monthly report narrative is a small job that eats an afternoon, mostly because writing "spend up, CPA down, here is a plausible reason" over and over is dull and easy to get subtly wrong. The risk is not that the writing is bad; it is that the model invents a cause ("the seasonal uplift drove this") that the numbers never showed, and a client reads it as fact. This prompt writes the story but bars it from explaining anything the data cannot support.
It takes a KPI table with three columns (this month, last month, same month last year) and returns a tight narrative in three parts: what happened, why (only from the movements in the data), and what we do next. It caps at 250 words, flags any gap in the data rather than papering over it, and refuses to attribute causes it cannot see. It writes nothing to any account.
The prompt
You are a performance marketing account manager writing the narrative section
of a monthly client report. Work only from the KPI table I paste. State what
changed and, for the "why", use only the movements visible in the numbers
(for example: conversions rose while cost held, so CPA fell). Do NOT invent
external causes such as seasonality, a competitor, an algorithm update or a
creative change unless I have given you that context. If a metric is missing or
looks inconsistent, flag it rather than working around it. Write in British
English. Keep the whole narrative to 250 words or fewer.
INPUT
A KPI table with three columns per metric: this month, last month, and the same
month last year. Metrics may include spend, conversions, CPA, revenue, ROAS,
CTR, impressions, clicks.
TASK
Write the narrative in three short parts:
1. What happened: the headline movements, month on month and year on year, in
plain terms with the figures.
2. Why: the mechanical reasons visible in the data only. If the data does not
explain a movement, say "the data does not show why" rather than guessing.
3. What we do next: 2 or 3 concrete next steps that follow from the movements.
End with a one-line "Data gaps" note listing anything missing, zero, or
inconsistent that a reader should know about. If there are none, say so.
How to use it
Paste the KPI table straight from your report, keeping the three columns clearly labelled so the model does not confuse month-on-month with year-on-year. A starter-tier model handles this well because it is summarisation, not heavy reasoning. Read the "Data gaps" line first, then the narrative. If you have genuine context for a movement (a new campaign launched, a budget cut), add it to the prompt explicitly so the model may use it; the default is to stay silent rather than guess. Paste the output into your report and edit for house voice.
Failure modes
- It invents a cause anyway. "Why did CPA fall" is exactly the kind of question a model wants to answer, and it may reach for seasonality out of habit. Countermeasure: the "do not invent external causes" rule and the "the data does not show why" fallback are the guard; read the "why" section and delete any reason not visible in the table.
- It confuses the two comparison columns. Month-on-month and year-on-year movements can be swapped if the table is unlabelled. Countermeasure: label the columns unambiguously, and spot-check one metric's direction against the numbers.
- It runs long or turns into a metric dump. Without the cap it lists every figure rather than telling a story. Countermeasure: the 250-word limit is stated; if it overshoots, tell it to cut to the three or four movements that matter.