How to build a quarterly lp report as Small Investor Relations Teams

Investor RelationsFor Small Investor Relations Teams2 apps12 steps~24 min to set up

Your two-person IR team is producing a quarterly LP letter that requires pulling audited financials from QuickBooks or NetSuite, cash balance snapshots from Plaid, subscription revenue trends from Stripe, and portfolio company KPIs that live in a Notion database someone updates manually. You spend the first three days of the quarter just collecting the data. Then you write the letter in Google Docs, paste in numbers, realize the numbers changed, paste again, format charts in Slides, and email a PDF through Outlook. The institutional platforms — Juniper Square, Addepar — handle the compliance layer, not the writing layer. You still own that, and you're doing it with copy-paste.

Investor RelationsFor Small Investor Relations Teams2 apps12 steps~24 min to set up
Outcome

What you'll set up

A live-data LP report that pulls from QuickBooks, NetSuite, Stripe, and Plaid on a schedule — so your numbers are current when you sit down to write, not three days stale
A natural-language report generator that drafts the narrative sections (burn, runway, portfolio highlights, capital call status) in your fund's tone, ready for your edits rather than your authorship
A repeatable quarterly cadence with automated data refresh and email distribution to your LP list, so Q3 doesn't require rebuilding Q2 from scratch
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Starch syncs your QuickBooks data on a schedule (invoices, bills, payments, journal entries — up to 50k records per entity), syncs your Plaid transactions and balances on a schedule, and syncs your Stripe charges and subscription data on a schedule. NetSuite income statements and balance sheets also sync on a schedule for funds running NetSuite as their ERP. Outlook messages and calendar events sync on a schedule for LP communication tracking. LP portals like Juniper Square or DocSend — where no direct API connection exists — are reached through browser automation, no API needed. Juniper Square's entity data (distributions, capital accounts) can be pulled from the portal UI via browser automation and surfaced inside your report app.

Prompts to copy
Build me a quarterly LP report app that pulls our cash balances and categorized transactions from Plaid, revenue and subscription data from Stripe, and invoice and journal entry data from QuickBooks. For each quarter, draft a 600-word narrative covering: (1) fund-level cash position and burn, (2) portfolio company revenue trends, (3) capital deployed this quarter, (4) key risks and mitigants. Match the formal but direct tone from last quarter's letter, which I'll paste in as a style reference. Output a formatted report I can edit and then send via Outlook to our LP distribution list.
Set up an email triage app that flags any inbound LP message about capital calls, commitment pacing, or data room access as high priority, summarizes threads longer than 10 messages, and drafts a reply I can send in one click. Also remind me 48 hours before any LP meeting on my calendar so I have time to pull the relevant fund metrics.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect QuickBooks or NetSuite from Starch's scheduled-sync providers. Starch syncs invoices, bills, payments, journal entries, and balance sheet data on a schedule — the next time you open your LP report app, the numbers are already there.
2 Connect Plaid so Starch syncs your fund's bank account transactions and balances on a schedule. This gives you real-time cash position without logging into your bank.
3 Connect Stripe if your fund or portfolio companies use it for subscription tracking. Starch syncs charges, invoices, and subscription status so MRR and churn figures are ready to pull into the narrative.
4 Start with the Investor Reporting app from the Starch App Store as your baseline. It's pre-wired to Plaid, Stripe, QuickBooks, and NetSuite — fork it and add your fund's specific sections: capital call status, commitment pacing table, J-curve chart.
5 Paste in your last quarterly LP letter as a tone reference. Tell Starch: 'Match this tone and structure. Here is our Q2 2025 letter.' The agent uses it as a style anchor so Q3 reads like it came from the same firm.
6 Build a commitment tracker table inside the report app. Tell Starch: 'Show a table with LP name, total commitment, capital called to date, uncalled capital, and next expected call date. Pull called capital from QuickBooks payments; I'll enter commitment and pacing manually or paste from our cap table.'
7 For any data that lives in Juniper Square or your DocSend data room — distribution notices, capital account statements — tell Starch to automate your browser to log in and pull the relevant figures. Starch navigates the portal the same way you would, no API required.
8 Set up the Email Triage app to monitor your Outlook inbox for LP queries. Starch syncs your Outlook messages on a schedule, flags capital call and data room requests as high priority, and drafts replies you can review and send in under a minute.
9 Configure the quarterly report to run on a schedule — say, the fifth business day after quarter close. Starch refreshes all synced data, re-runs the narrative draft, and sends you a review copy before it goes to LPs.
10 Add a final review step: Starch sends the draft to your internal Outlook or Slack channel first. You approve, make edits, and hit send. The LP distribution list lives in the app so you're not managing a BCC chain in Gmail.
11 After the letter goes out, the Email Triage app monitors replies. LP questions about the J-curve or pacing get flagged and summarized so you're not reading 20-paragraph responses before your next call.
12 At the start of next quarter, open the same app. The data has already refreshed. You're editing a draft, not starting from a blank document.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

Q3 2025 LP Letter — October 2025 Close

Sample numbers from a real run
Fund cash balance (Plaid)4,820,000
Capital deployed Q3 (QuickBooks payments)1,350,000
Portfolio company A — MRR (Stripe)187,000
Portfolio company B — MRR (Stripe)94,500
Uncalled LP commitments (manual entry)8,200,000
Q4 planned capital call2,000,000

It's October 7th. Quarter just closed. In previous years, you'd spend the next three days logging into QuickBooks to pull a trial balance, exporting Plaid transactions, emailing portfolio companies for their MRR numbers, and stitching it all into a Google Doc. This quarter, you open your Starch LP report app and the data is already there: $4.82M cash on hand from Plaid, $1.35M deployed in Q3 from QuickBooks payment records, and MRR of $187k and $94.5k from Stripe for your two SaaS portfolio companies. You type: 'Draft the Q3 LP letter. Highlight that deployment pace is on track for the fund model, note that Portfolio Company A grew MRR 12% quarter-over-quarter, and flag that the Q4 capital call of $2M is scheduled for November 15.' Starch drafts a 650-word letter in your fund's voice — the same measured, data-forward tone from your Q2 letter you loaded as a reference. You spend 40 minutes editing, not 40 hours assembling. The letter goes out to your LP distribution list via Outlook on October 9th, two days after quarter close, which is the fastest your fund has ever sent it.

Measurement

How you'll know it's working

Days from quarter close to LP letter sent (target: under 5 business days)
Capital called as % of total LP commitments by vintage year
Fund cash runway in months (based on Plaid balance vs. QuickBooks burn rate)
LP inquiry response time (hours from receipt to reply sent)
Portfolio company aggregate MRR and quarter-over-quarter growth rate
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Juniper Square
Handles compliance, capital accounts, and LP portal access well — Starch doesn't replace it, but Juniper Square doesn't draft your narrative or connect to your bank and accounting data to generate the report; you're still writing the letter manually.
Addepar
Strong for multi-asset portfolio analytics and performance reporting, but costs $50k+ per year, assumes a dedicated IR-ops analyst, and still hands you a blank page when it's time to write the LP narrative.
Google Docs + Sheets (manual assembly)
Free and familiar, but every quarter you're manually pulling numbers from four systems, pasting into a doc, re-checking figures after they change, and managing version control — Starch automates the data pull and the first draft.
Visible.vc
Purpose-built for investor updates and easier to set up than enterprise IR platforms, but primarily for portfolio companies reporting to VCs — less suited to a fund reporting to LPs with capital call schedules and J-curve analysis.
QuickBooks + manual reporting
QuickBooks holds your financial data but has no LP letter workflow; you still export reports, reformat in Excel, and write the narrative separately — Starch keeps the data in QuickBooks and builds the reporting surface on top of it.
On Starch RECOMMENDED

One platform — investor reporting, email agent all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

We use NetSuite as our fund ERP, not QuickBooks. Does this work?
Yes. Starch syncs NetSuite invoices, expenses, journal entries, balance sheets, and income statements on a schedule — the same way it syncs QuickBooks. If you're on NetSuite, connect that instead and the LP report app pulls from it directly. The Investor Reporting App Store template lists NetSuite as a primary connection.
Our LP portal is Juniper Square. Can Starch pull data from it?
Juniper Square doesn't expose a public API that Starch syncs directly. But Starch can automate your browser to log into the Juniper Square portal and pull figures — capital account balances, distribution notices, commitment schedules — the same way you'd navigate it manually. No API needed. You'd tell Starch: 'Log into Juniper Square and pull each LP's called capital and current account balance into my report app.' It's browser automation, not a direct integration.
Is QuickBooks report-level data like P&L available?
Honestly, no — not right now. QuickBooks report views (P&L, Transaction List, Vendor Expenses) are temporarily disabled pending a fix. Entity-level data syncs normally: invoices, bills, payments, vendors, journal entries. For most LP reporting use cases — burn, capital deployed, cash position — the entity data is sufficient. We'll update this when the report views are back.
We send LP letters through a specific email template with our fund's logo and formatting. Can Starch match that?
Starch drafts the content and sends via Outlook or Gmail, but it's not a design tool for HTML email templates. The practical workflow most IR teams use: Starch drafts the narrative and number sections, you paste into your existing email template or PDF layout, and then send. If you want Starch to handle the send directly, plain-text or simple HTML formatting works well. A polished designed template is outside what Starch does today.
We're a two-person team. We don't have an IT person to set up integrations. How hard is this actually?
Connecting QuickBooks, Plaid, Stripe, and Outlook takes about 20 minutes total — you authorize each one from Starch's connection browser, same OAuth flow as connecting any app to Google. The LP report app itself you describe in plain language: 'Build me a quarterly report that pulls from these four sources and drafts a letter in this tone.' Starch assembles the app. You don't write code or configure pipelines. The ceiling is how specifically you can describe what you want.
Is Starch SOC 2 certified? Our LPs ask about data security.
Starch is not SOC 2 Type II certified today. If your LPs or compliance team requires a SOC 2 report from every platform that touches fund financials, that's a real constraint to flag. Starch syncs data from your existing systems — QuickBooks, Plaid, Stripe — rather than replacing them, so the source-of-record for LP financial data stays in your certified systems. But Starch itself doesn't carry a SOC 2 certification at this time.
Can Starch build a KPI dashboard for our GP that refreshes automatically, separate from the LP letter?
Yes — this is actually a better use case for a custom Starch dashboard than for the Investor Reporting app. Tell Starch: 'Build a dashboard showing fund cash runway from Plaid, capital deployed by quarter from QuickBooks, portfolio company MRR from Stripe, and LP commitment pacing. Refresh daily.' Starch builds it as a separate surface — the GP opens it in the morning and the numbers are current. It's a different app from the quarterly LP letter, but they pull from the same connected data sources.

Ready to run build a quarterly lp report on Starch?

Request closed-beta access. Everything is free during beta.

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