OperationsMar 15, 202514 min

How to operationalise "what changed this month" without spending 2 days writing

A repeatable, SPV-ready commentary engine: focus on material changes, drivers, so what, and actions with thresholds, bridges, reason codes, ownership, and a two-pass process instead of a blank page.

By Tom Elliott
How to operationalise "what changed this month" without spending 2 days writing

How to operationalise "what changed this month" without spending 2 days writing

If monthly reporting always ends with a late-night scramble to write the narrative, you are not alone. The commentary often takes longer than the numbers because it is treated like a blank-page writing task-when it should be treated like a repeatable operating process.

The fastest way to cut "2 days writing" down to 60-120 minutes is to stop asking:

"What should we write?"

...and start building a system that answers:

"What materially changed, why, so what, and what are we doing?"

This matters even more in real-estate portfolios with multiple SPVs, where consolidation, standardised reporting categories, real-estate KPIs (NOI, yields, gearing, % capital returned), and investor/board-ready packs depend on consistent logic and clean roll-ups.

Below is a definition -> common mistakes -> best-practice framework you can implement and then reuse every month.


Definition: what "what changed this month" should actually do

A good "what changed" section is not a recap of the P&L. It is a short decision narrative that explains:

  1. What moved (the 3-7 changes that matter)
  2. Why it moved (drivers, not accounting labels)
  3. So what (risk/opportunity/impact)
  4. What we are doing (actions + owners + timing)
  5. What to watch next (forward-looking signals)

If you cannot answer those five things, stakeholders ask follow-ups-and you end up "writing" for two more days anyway.


Common mistakes that make commentary slow (and hard to trust)

Mistake 1: Starting from the trial balance

Writing line-by-line ("repairs up, utilities down...") is slow and unreadable. It also invites questions like, "Which asset drove that?"

Fix: write from exceptions and drivers (portfolio -> asset/SPV -> driver), not from GL lines.

Mistake 2: No thresholds = everything feels "important"

If every variance is treated equally, your commentary becomes a 3-page novella.

Fix: define what counts as "material" so you only write about what truly changed.

Mistake 3: Mixing performance with timing, one-offs, and reclasses

Boards and investors hate "good news" that later turns out to be classification changes.

Fix: label every change as one of:

  • Operational performance
  • Timing (accruals / seasonality)
  • One-off / non-recurring
  • Reclassification (policy or mapping change)

Mistake 4: Commentary is not connected to actions

If your narrative does not include "what we are doing," it is not board-ready. It is just reporting.

Fix: every material negative change gets an action (or a decision request).

Mistake 5: Definitions drift across SPVs

If NOI, capex vs repairs, or "operating costs" are inconsistent across SPVs, writing becomes political ("which version of NOI are we using?").

Fix: standardise reporting definitions and mappings so the numbers are comparable before you write about them.


Best-practice reporting: the "Commentary Engine" you can run every month

Step 1: Decide your narrative "spine" (7 questions, every month)

Most stakeholders care about the same questions in the same order. Use that to your advantage.

Here is a practical set for real estate portfolios:

  1. NOI: up/down vs last month and vs budget - what drove it?
  2. Occupancy/leasing: changes, expiries, voids - what is the story?
  3. Operating costs: any spikes - what is recurring vs one-off?
  4. Capex/refurb: progress vs plan - timeline/budget risk?
  5. Cash and distributions: liquidity and payout - any constraints?
  6. Debt and rates: covenants, maturities, sensitivity - what do we need to do?
  7. Risks and next month priorities: what are we watching, who owns it?

These align with the metrics investors typically want (occupancy, NOI, yields, gearing, % capital returned) and the "investor/board-ready pack" structure many real estate teams use.

Step 2: Put thresholds in writing (so you only write about exceptions)

Define thresholds that determine what gets a comment.

Example thresholds (adjust to your portfolio size):

  • NOI variance: comment if > GBP X or > Y% vs last month / budget
  • Occupancy: comment if change > 1.0pp portfolio-wide or any asset > 2.0pp
  • Operating costs: comment if any category > GBP X or > Y% vs run-rate
  • Arrears: comment if > GBP X or if any single tenant > Z% of rent
  • Cash runway: comment if any SPV < 3 months runway (or your policy)
  • Covenant headroom: comment if DSCR/ICR within 10-15% of trigger
  • Capex: comment if forecast-to-complete variance > X% or timeline slips > N weeks

Once these thresholds exist, "what changed" becomes a filtered list, not a writing project.

Step 3: Use bridges, not prose (the fastest way to explain variance)

For key metrics like NOI, use a simple bridge that shows drivers:

NOI bridge (example structure)

  • NOI last month
    • income change (occupancy, rent, arrears)
    • cost change (repairs, utilities, management fees)
  • +/- one-offs
  • +/- reclasses
  • = NOI this month

Then your "writing" is just a short interpretation of the bridge.

This is also where solid consolidation and mappings matter: the bridge must be comparable across SPVs to be credible.

Step 4: Maintain a "reason code library" (so you are never starting from scratch)

Create a short list of reason codes that cover 80-90% of variance explanations. Example library:

Performance drivers

  • OCC: occupancy/void movement
  • RENT: rent changes/indexation
  • ARREARS: collections timing / arrears movement
  • COST: operating cost movement (recurring)

Non-performance drivers

  • ONEOFF: non-recurring cost/income
  • TIMING: accruals/seasonality timing
  • RECLASS: reclass / mapping / presentation change
  • FX: currency movement (if relevant)

Now write a one-line template for each reason code. For example:

  • OCC: "NOI decreased due to [pp] occupancy decline at [asset], primarily from [cause]; leasing action: [action], target date [date]."
  • ONEOFF: "Costs increased due to a one-off [type] expense at [asset]; not expected to recur; treatment: [above/below NOI]."
  • RECLASS: "NOI movement includes a classification change: [GBP X] moved from [old category] to [new category] to align with policy; underlying performance is [up/down/flat]."

You have just removed the "blank page" problem.

Step 5: Assign ownership (commentary is a workflow, not a single writer)

Split ownership so writing is fast and accurate:

  • Finance lead: NOI bridge, classification, tie-outs
  • Asset/ops lead: occupancy, leasing, arrears, operational drivers
  • Treasury/finance: cash, debt, covenants, rate sensitivity
  • PM/capex lead: refurb progress, timeline and cost risks

One person (usually finance) compiles and edits to a consistent voice-but they are no longer inventing all content.

Step 6: Run a two-pass process with timeboxes

This is the simplest operational change that saves hours.

Pass 1: Draft (45-60 mins)

  • Pull exception list (from thresholds)
  • Populate bridge bullets
  • Use reason code templates
  • Leave placeholders where owners need to confirm facts

Pass 2: Review and sign-off (30-60 mins)

  • Confirm the "why" for each exception
  • Confirm any one-offs/reclasses wording
  • Confirm actions/owners/dates
  • Final tone and clarity check

If you do not timebox, commentary expands to fill the available time.


A "copy/paste" monthly commentary template

Use this structure directly in your monthly pack.

1) Portfolio summary (5-7 bullets)

  • Headline: Portfolio NOI [up/down] [GBP X / Y%] vs last month ([up/down] vs budget).
  • Driver 1: [Income/occupancy] impact [GBP X], driven by [asset/SPV] due to [cause].
  • Driver 2: [Costs] impact [GBP X], primarily [repairs/utilities/etc.] at [asset]; classified as [recurring/one-off].
  • One-offs/reclasses: [GBP X] relates to [one-off/reclass]; underlying run-rate performance is [improving/stable/softening].
  • Cash/distributions: Portfolio cash [up/down] to [GBP X]; distributions [paid/held] due to [reason].
  • Debt/rates: [Key point] (for example, % floating, hedge expiry, maturity); +100 bps sensitivity [GBP X impact] (if used).
  • Focus next month: [Top 2-3 actions] with owners [names/teams].

2) Exceptions table (short list)

List the top 5-10 items that breached thresholds:

  • Asset/SPV
  • Metric impacted (NOI, occupancy, cash, covenant headroom)
  • Variance (GBP / %)
  • Reason code
  • Action + owner + due date

That is your "operationalisation" in one view.


Where automation helps (and where humans stay involved)

Once you have the framework, most of the "2 days" can be automated away:

Automate:

  • Consolidation across SPVs/entities
  • Standardised roll-ups via mappings (so NOI and cost categories are consistent)
  • Threshold-based exception lists
  • Bridges (NOI bridge, cost bridge, cash movement)
  • First-draft narrative bullets ("what changed", "strongest/weakest", "risks to watch")

Humans must still:

  • Confirm drivers that are not visible in the GL (leasing context, disputes, strategic voids)
  • Decide classification on "hard buckets" (refurb vs repairs, one-offs, policy changes)
  • Approve and sign off (accountability matters)
  • Own the actions and decisions (board reporting is a decision tool, not a chatbot output)

This is exactly the human-in-the-loop model behind an "AI CFO" narrative layer: machines draft quickly, people validate and own the message.


A practical "implement this month" checklist

If you want a fast rollout, do this in order:

  1. Agree the 7-question narrative spine (what you always cover)
  2. Define thresholds for what requires a comment
  3. Create an NOI bridge and a cash summary format (standard every month)
  4. Set up a reason code library (10-15 codes max)
  5. Assign owners for operational drivers (leasing/capex/debt)
  6. Adopt the two-pass timeboxed process
  7. Track actions (owner, due date, status) so the narrative closes the loop

Closing: the secret is to write less, but explain more

Teams spend two days writing when they try to explain everything. The best reporting teams do the opposite:

  • They define what matters,
  • build exceptions and bridges,
  • use consistent templates,
  • and write only what changed-plus what they are doing about it.

When your portfolio data is consolidated across SPVs with standardised mappings and controls, you can operationalise this into a repeatable monthly system-and even generate high-quality first drafts automatically.

Ready for portfolio-grade reporting?

Book a demo to see your SPVs in one dashboard, model scenarios, and publish investor-ready commentary.

Team reviewing a dashboard