How to send a monthly investor update with AI

Investor Relations3 AI tools7 steps6 friction points

A monthly investor update is a short written report — typically covering MRR, burn, runway, key wins, blockers, and asks — sent to your cap table on a recurring schedule. Most founders agree it's worth doing. Most founders also send it late, skip months, or write something vague under pressure. The update sits at the intersection of financial reporting and stakeholder communication, which means it touches your books, your metrics, and your narrative all at once.

The workflow feels like an obvious AI candidate because most of the content is formulaic: pull a few numbers, describe what happened, flag what you need. You're not inventing something original each month — you're filling a known structure with fresh data. That pattern — structured output, known format, mostly factual inputs — is exactly what large language models are good at. Founders who've tried using ChatGPT or Claude for this report often describe it as genuinely helpful, at least the first time.

ChatGPT, Claude, and Gemini can all draft a credible investor update if you paste in the right raw material. They're good at converting a bullet-point brain dump into polished prose, maintaining a consistent tone, writing a concise narrative around numbers you provide, and suggesting what risks or asks belong in a given section. The real limitation isn't the writing quality — it's everything that has to happen before and after the prompt.

Investor Relations3 AI tools7 steps6 friction points
AI walkthrough

How to do it with AI today

A practical walkthrough using ChatGPT, Claude, and other off-the-shelf LLMs — what they're good at, what you'll have to do by hand.

Tools that work for this
ChatGPTClaudeGemini
Step-by-step
1 Export your MRR, net new revenue, churn, and cash balance manually — from Stripe, QuickBooks, or your bank — and copy the raw numbers into a text file or spreadsheet tab you can paste from.
2 Open ChatGPT or Claude and paste in last month's investor update (if you have one) as a style reference, followed by your raw numbers and a short bullet-point list of the month's main events — hires, product launches, deals closed, blockers.
3 Prompt the model to draft a monthly investor update in the same structure and tone as your reference, filling in the financial section with the numbers you provided and a brief narrative paragraph for each major category.
4 Review the draft carefully. LLMs will write confidently about numbers you gave them, but they can't verify whether those numbers are right — check every figure against the source before sending.
5 Paste the draft into a second prompt asking the model to sharpen the 'asks' section: be specific about what you need from investors this month (intros, feedback, references) rather than leaving it generic.
6 Use Perplexity or a separate ChatGPT prompt to pull in one or two sentences of competitive context — a recent funding round in your space, a relevant market development — to make the competitive landscape section feel current.
7 Copy the final draft into your email client, add any charts or screenshots manually, and send to your investor list.
Prompts you can copy
Here is last month's investor update: [paste]. Here are this month's metrics: MRR $142k (+8%), net burn $61k, runway 14 months, 3 new enterprise pilots closed. Draft this month's update in the same format and tone.
Write the 'risks and blockers' section of a seed-stage SaaS investor update. Main risk: enterprise sales cycle longer than projected. Secondary risk: one key engineer is leaving at end of month. Be direct, not defensive.
We closed $42k in new ARR this month, lost one customer at $8k ARR, and expanded two accounts by a combined $11k. Write a three-sentence MRR narrative for an investor update — include net revenue retention context.
Write a two-sentence 'competitive landscape' update for a B2B logistics software company. Flexport raised a Series C last week. Our differentiation is mid-market focus and faster onboarding.
Here is a draft investor update: [paste]. Rewrite the 'asks' section to include three specific, actionable requests: one intro to a specific type of buyer, one reference check we need, and one hire we're trying to fill.
Reality check

Where this gets hard

The walkthrough above works — until your numbers change, the LLM hallucinates, or you have to re-paste everything next month.

No live connection to Stripe, Plaid, or QuickBooks — you manually export numbers before every run, and if you grab the wrong date range, the update goes out with wrong figures.
Nothing carries over between months. The tone calibration, the structure you refined, the style reference you pasted — you rebuild that context from scratch every single time.
The model has no memory of what you wrote last month, so consistency in voice, framing, and ongoing narrative threads (a fundraise in progress, a product launch you mentioned last quarter) requires you to re-paste prior updates every run.
Competitive context is only as current as what you manually search and paste in. The model's training data has a cutoff and won't know about last week's funding news unless you bring it.
Sending is entirely manual. The LLM produces a text draft; getting it formatted, attached to charts, and emailed to your actual investor list is still your job every month.
Output structure drifts. A prompt that produced a clean five-section update in February will produce something slightly different in March if you tweak the inputs even slightly — you end up re-prompting to match prior formatting.

Tired of the friction?

Starch runs the whole workflow on live data — no copy-paste, no hallucinated numbers, no re-prompting next month.

See the Starch version →
Starch alternative

The same workflow on Starch

Starch is an agentic operating system — it builds and runs persistent software against your live business data. For investor updates, that means an agent assembles the report from your actual Stripe, Plaid, and QuickBooks numbers on a schedule, without you copying anything, and sends it on whatever cadence you set.

The Investor Reporting app connects to Stripe and Plaid directly — Starch syncs your MRR, burn, and runway data on a schedule, so every update reflects live numbers, not whatever you remembered to export this week.
QuickBooks and NetSuite connect too. If your bookkeeper works in either system, Starch pulls invoices, bills, and journal entries directly — the financial section of your update reflects closed books, not a rough estimate.
The Runway Analysis app shows net burn and cash projection updated daily from Plaid bank feeds and Stripe revenue. When you're writing the runway section of your investor update, the number is already there — you're not calculating it fresh each month.
Starch drafts the narrative sections around the numbers it pulled, in the tone of your previous updates. Tell it: 'write my monthly investor update in the same voice as last month, flag the three biggest risks, and add one ask per investor segment' — and it builds that as a recurring automation.
Delivery is part of the app, not a separate step. The Email Triage app connects to Gmail so Starch can send the finished update to your investor list on schedule — no copy-pasting into your email client, no forgetting the send date.
When you want something the starter template doesn't cover — a custom competitive landscape section pulled from recent news, a per-investor summary view, a Slack ping to your co-founder before the email goes out — describe it and Starch builds it. No drag-and-drop, no code.
Get closed-beta access →
Toolkit

Starch apps for this workflow

Pick your role

See this workflow by operator

Run send a monthly investor update on Starch

You're on the list! We'll be in touch soon.