AI for Fractional CFOs: Monthly KPI Packs and Client Briefings

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI for Fractional CFOs: Monthly KPI Packs and Client Briefings.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for AI for Fractional CFOs: Monthly KPI Packs and Client Briefings.

A fractional CFO can use AI for monthly KPI packs by fixing one template per client, pulling figures from the accounting export into a spreadsheet that calculates the KPIs, giving the model only the checked table to draft commentary, and then reviewing every sentence against the numbers. Keep each client in a separate project so their data never mixes.

You sell judgement, applied monthly to several businesses at once, so the value of AI to you is time back on the parts that repeat: pulling data, formatting, first-draft narrative and chasing queries. The catch is that one wrong figure in a pack costs more trust than a pack that arrives a day late, so the arithmetic never goes near the model, and the review step is the part you protect when the month gets busy.

Follow me on Instagram@sagnikteaches

Decide what AI does in the pack and what stays yours

A KPI pack has four layers: the data, the calculations, the narrative and the recommendations. Allocate them clearly before you open any tool.

Connect on LinkedInSagnik Bhattacharya
LayerWho does itWhy
Data pull (P&L, balance sheet, aged debtors, bank)You or the bookkeeper, from the accounting systemA fixed export is checkable and limits what a tool can see
KPI calculationsSpreadsheet formulasArithmetic must be exact and repeatable
Narrative: what moved and by how muchAI drafts, you reviewThis is the time-consuming, formulaic part
Recommendations and the conversationYouYour judgement is what the client pays for

The common failure is letting the model drift upwards through the layers: asking it to calculate margin, then to explain why, then to recommend. Each step makes errors harder to see. Keep it at layer three.

Subscribe on YouTube@sagnikteaches

Build one template per client

A template is a spreadsheet with fixed tabs and fixed KPI definitions, so month after month the same cells feed the same pack. Build it once per client, then reuse.

Choose six to ten KPIs per client, not thirty

Start from the client's decisions, not from what the software can report. A service business with a team probably needs revenue, gross margin, utilisation, debtor days, cash balance and runway. A subscription business needs monthly recurring revenue, churn, customer acquisition cost and net revenue retention. A trades business needs job margin, work in progress, overdue invoices and the cost of materials against quotes. For ideas on picking, see twelve metrics worth tracking.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Define every KPI in writing

Put a definitions tab in the template: name, formula, source accounts, target and the reason the client cares. "Gross margin = (revenue minus cost of sales) divided by revenue, using accounts 4000 to 4999 and 5000 to 5999." If the client's chart of accounts changes, you change the definition once. This tab also protects you: when a client disputes a figure, you show the definition they agreed.

Lay out the tabs

  • Data: paste area for the month's export, unchanged.
  • Mapping: each account line to a pack line (so renamed accounts do not break the formulas).
  • KPIs: formulas by month, with prior month and the same month last year beside each.
  • Checks: the control totals described below.
  • Pack: the formatted page the client sees.

If you work in Excel, an AI assistant in the spreadsheet can help you build the formulas; the tutorials on Claude for Excel and using ChatGPT with Excel show how.

Pull the data from Xero or QuickBooks exports

Start with exports rather than a live connection. Run the same reports each month: profit and loss by month, balance sheet, aged receivables, aged payables and a bank summary. Export to a spreadsheet file, paste into the Data tab and save the raw export in the client's folder with the date. A fixed snapshot means that if a number later looks odd, you can see what the system said on the day, even if the ledger was adjusted afterwards.

List prices as of November 2026: Xero's plans run from $27 to $97 a month in USD (Early, Growing, Established) and QuickBooks Online from $38 (Simple Start) to $340 (Advanced), before any introductory discount. Your clients' subscriptions are their cost, not yours, but the tier matters for what you can export: check what reports the plan includes, and whether you have the access level you need. For how the month-end side feeds the pack, see the QuickBooks month-end close checklist.

Control totals before any analysis

On the Checks tab add four tests. Net profit on the P&L equals the movement in retained earnings on the balance sheet. Total assets equals total liabilities plus equity. The bank balance on the pack equals the bank balance on the statement or the feed's reconciled figure. Aged receivables total equals the debtors line on the balance sheet. Any failure stops the pack until you or the bookkeeper explains it, and the explanation goes in a note. These checks are the difference between a fast pack and a fast wrong pack.

Draft the narrative from a checked table

Once the Checks tab is clean, copy the KPI table (values only, no formulas, with client name replaced by a code) into a prompt.

You are drafting the commentary section of a monthly management pack for a
small business owner who is not an accountant. Use ONLY the table below.
Write:
1. Headline: two sentences on this month against budget and last month.
2. What moved: the three largest movements, each with the figure, the change
   in value and per cent, and the likely driver ONLY if a driver note is given.
3. Cash: balance, change, and months of runway at the trailing three-month burn.
4. Watch list: any KPI that crossed its target line, up or down.
5. Questions for the owner: three specific questions the numbers raise.
Rules: quote figures exactly; no forecasts; no advice; no adjectives such as
"strong" or "worrying"; if a driver is not given, say "driver to confirm".
[table]
[driver notes written by me]

Illustrative output for a fictional services client: "Headline: Revenue was 84,200 against a budget of 90,000 (down 6.4%) and up 3.1% on last month. Gross margin was 58.2%, 1.9 points below target. What moved: Subcontractor costs rose 11,300 (up 24%); driver to confirm. Debtor days rose from 41 to 52. Cash: balance 61,400, down 9,800; runway 3.4 months at the three-month average burn. Questions: What work did the extra subcontractor cost relate to? Which three invoices drive the rise in debtor days? Is the cash fall explained by the insurance payment in the notes?" The "driver to confirm" rule is what stops the model inventing explanations, which are the commonest source of embarrassing sentences in a client pack.

Write the driver notes yourself

The most valuable five minutes of the process is writing two or three lines of driver notes before generating anything: "June subcontractor spend includes one-off bridge project; two large invoices issued late June; annual insurance paid in month." The model weaves those into the commentary accurately, and the result sounds informed because you were. That is your judgement and the tool's speed combined.

The review checklist before anything goes to a client

  1. Every number in the commentary appears in the table, exactly as written.
  2. Every percentage and per-cent change recomputed for at least the top three.
  3. No sentence states a cause that you did not supply or verify.
  4. No forecast or recommendation slipped in.
  5. Client name, period and currency correct on every page.
  6. No detail from another client present, including similar business descriptions.
  7. Questions for the owner are specific and answerable.
  8. Your own take added: one paragraph of judgement in your voice.

Tick these in the Checks tab with the date. A reviewer who knows the checklist is quick, and a client who ever challenges a pack can see what controls it passed. The routine matches the one used in monthly partner packs for law firms, which shows a different sector's version.

Confidentiality between clients

When you serve several businesses, the greatest AI-specific risk is bleed between them, and sometimes between competitors. Build separation into the routine.

  • One project or workspace per client with its own instructions and files; never one shared project holding every client's data.
  • A fresh conversation per pack. Do not continue last month's chat for a different client, and close the chat after the pack.
  • Codes, not names, in the table: C1, C2. Keep the key in your own system.
  • Memory features off, or carefully checked, so details do not carry between conversations.
  • Business-grade plans. ChatGPT Business and Claude Team need a minimum of two seats and, according to the vendors, do not train on business content by default; verify the current wording on each vendor's page. Do not run client data through a free consumer account.
  • Engagement letter clause saying you use AI tools to prepare reporting, which tools, how data is handled and that you review the output.

Where two clients compete, tell neither about the other's use of you beyond what your engagement allows, and keep their prompt histories apart from the start. Your own client list is confidential too.

A worked example: three clients, one morning

Illustration. A fractional CFO has three clients: a ten-person design agency, a plumbing firm with six vans and a small software company. Each has a template built in an earlier month. On the third working day she receives three exports. For each one she pastes the data, scans the Checks tab, and finds one failure: the plumbing firm's bank balance is 1,240 off the feed, because a deposit was dated the first of the month. She messages the bookkeeper with the specific item, and the answer comes back in an hour. She writes driver notes for each client (about four lines apiece), generates the three drafts in separate projects, and spends about 35 minutes reviewing each against its table. She adds her own paragraph to each, builds the one-page pack and sends all three before lunch. Previously each client took her a long afternoon. The time numbers here are illustrative; the transferable part is the order of operations: checks first, notes second, draft third, review last.

Further examples of the same approach

A subscription company: churn and cohorts

The KPI tab calculates monthly recurring revenue by plan, churned revenue and net revenue retention. The model is given only that table. Its commentary notes that churn rose in the lowest plan and asks whether a price change took effect. The CFO knows that the price change is in the notes and adds it to next month's driver note, because the model did not know. Feeding it known context is part of the job.

A trades firm: job margin by job type

Export jobs from the field service system alongside the ledger. Margin by job type (installation, repair, maintenance contract) goes in the table, and the commentary points at repairs, where margin dropped from 41% to 33%. Questions for the owner include whether parts prices rose and whether quotes were updated. Build the quote-against-cost variance in the spreadsheet, not in the prompt.

A realistic mistake: the quietly changed account

The client's bookkeeper created a new revenue account in March and moved some sales into it. The mapping tab did not include it, so revenue fell by 18,000 in the pack, and the model dutifully wrote about a revenue decline. The control total caught nothing because the P&L total was right; the mapping check did. Add a test to the Checks tab: the sum of mapped lines must equal the P&L total, and any unmapped account fails the pack. Then no new account can drop out unnoticed.

Setting up a new client's template with AI help

The first template for a client is the slowest, and AI can shorten it. Export the last twelve months of the profit and loss and a trial balance, replace the client name with a code, and ask the tool to propose a mapping and a KPI list for you to edit:

Here is a 12-month P&L and the chart of accounts for a [type of business]
with about [number] staff. Propose:
1. a mapping of each account to one of: Revenue, Cost of sales, Payroll,
   Marketing, Premises, Software, Professional fees, Other overheads,
   Interest and tax;
2. six KPIs a fractional CFO would watch monthly for this business, each with
   a formula using the mapped lines;
3. accounts that look misclassified, with the reason.
Do not calculate any KPI values. Output tables only.

Illustrative result: a mapping table, six KPIs such as gross margin, payroll as a share of revenue, marketing as a share of revenue, overheads per head, debtor days and months of cash, and two flagged accounts: "Consulting income" sitting under other income and "Director loan interest" under software. You review, correct and adopt. The model has done the dull classification, and the flagged accounts give you a first conversation with the bookkeeper. Spend the time you saved on the definitions tab, because a vague definition is the root of most disputes later.

Runway and burn: a quick sum you can check

Runway is simple enough that you should compute it yourself and show the working in the pack. Take the cash balance of 61,400 from the example above. Take the net cash outflow for each of the last three months: say 22,800 in April, 21,600 in May and 9,800 in June, where June includes the annual insurance premium of 6,000 from the driver notes. The trailing three-month average is (22,800 + 21,600 + 9,800) divided by 3, which is 18,067. Runway is 61,400 divided by 18,067, about 3.4 months, the figure in the draft commentary. Now strip out the once-a-year premium: the outflows become 22,800, 21,600 and 3,800, the average falls to 16,067 and runway rises to about 3.8 months. Both figures are defensible; switching between them without saying so is not, so the pack should state which basis it uses. If the pack mixes bases from month to month, the client will see runway jump around for reasons that have nothing to do with the business. Write the basis into the definitions tab and keep it.

Chasing queries without wasting the client's time

A pack often raises questions only the client can answer. A tool is good at turning your list into a short, polite message, with each query tied to a transaction. A before and after shows the point.

Before (your note): "debtors up, subbies up, cash down, check tax thing."

After (drafted, then edited by you): "Hi [first name], three quick questions on the June pack. 1) Subcontractor costs rose by 11,300; is that the bridge project, or something recurring? 2) Debtor days moved from 41 to 52; the three oldest invoices are listed below, can you confirm whether any are disputed? 3) Cash fell by 9,800, which includes the annual insurance premium of 6,000; is anything else in there I should know about? A one-line reply to each is plenty."

Send the message from your own email, and keep the replies in the client's folder. Next month those replies become driver notes, and the commentary improves without any change to the prompt.

When the pack is for a board or a lender

Some clients need a version for investors or a bank. The same table can feed a different prompt: shorter, more formal, with a list of covenants or targets and where the business stands against each. The rule does not change: only checked numbers go in, and drivers come from you. Add a line at the foot saying the commentary was prepared with the assistance of AI tools and reviewed by you, if your engagement terms or the recipient expect disclosure. Your professional body or insurer may have a view on that wording, so check before you standardise it.

Five faults to look for when reviewing a draft

  1. Invented cause. "Due to seasonal demand" with no note supporting it. Delete or replace with "driver to confirm".
  2. Quiet rounding. 6.37% written as "about 6%" in one place and "6.4%" in another. Standardise to one decimal place across the pack.
  3. Wrong direction. "Costs fell" when the number is negative because of a credit note. Read the sign.
  4. Stale comparison. A line comparing to last month's figure from a previous version of the export. Check the date on the Data tab.
  5. Borrowed phrasing. Language lifted from last month's commentary, including a driver that no longer applies. Start each month from a clean prompt.

Briefing the client in person

The pack is the start of the conversation, not the end. Use the model for preparation: from the table and your driver notes, ask for five questions an owner might raise and a plain-English answer to each, so that your meeting prep takes ten minutes. For recurring jobs, a scheduled routine can assemble the pack on a set day; see Claude scheduled workflows for Monday reports and month-end runs. If you record client meetings, settle consent and retention with each client before the first recorded briefing, not after it.

What to track about the process itself

Record, per client per month: time to produce, number of check failures, number of sentences changed at review and any client query that arrived after sending. After three months you will know where the template needs work and whether the AI draft is saving the time you expected. Keep the pricing conversation with clients on outcomes, not hours; the tool changes your cost of delivery, and your fee reflects the value of the advice. Do not quote time savings to clients before you have measured them.

If you would like help building the first template and the review routine together, my AI implementation consultation covers exactly that, and you can start by writing the definitions tab for your most demanding client.

Fractional CFO questions about AI and client packs

Should AI calculate the KPIs?

No. Calculate them with spreadsheet formulas from the accounting export, check them against the ledger, and give the model the finished table. The model's job is to explain movements in words. If it does the arithmetic, you cannot trust any figure without recalculating it yourself.

How do I keep one client's data away from another's?

Use a separate project or workspace per client, a fresh conversation for each pack, and no memory features that carry details across. Name files by client code. Never paste two clients into one prompt, even for benchmarking.

Can I connect AI directly to Xero or QuickBooks?

You can, but exports are a safer start. A monthly CSV or report export gives you a fixed snapshot to check, and limits what the tool can see. Direct connections need the client's authorisation and a clear record of what access was granted.

How long should a monthly pack take?

Once templates exist, many fractional CFOs aim for one to two hours per client for a steady-state pack, with the review being the largest share. Measure your own across three months before you quote it to clients or change your fees.

Further reads

Sources: Xero and QuickBooks Online pricing pages (USD list prices); OpenAI business pricing page and Claude pricing page (two-seat minimums, no training on business content by default). Checked November 2026.

Want your monthly pack down to a repeatable hour?

On a 1:1 call we can map your current pack for one client, build the template and review checklist, and set up the separation between clients so the same method scales to your whole book.

Book a 1:1 call with me