Economico for SaaS startups
Know what your SaaS numbers mean
MRR, recognized revenue and cash are different numbers. Keep the contracts and activity behind them in real books, and ask your own agent to show the difference.
One subscription can produce several answers
An annual contract may be signed today, billed now, paid next month and earned over the year. If those dates sit in different tools, a founder can end up with several plausible revenue figures. Economico records the declared contract, billing, recognition and payment activity together so you can inspect which number a report uses.
- Apr $1,000
- May $1,000
- Jun $1,000
- Jul $1,000
- Aug $1,000
- Sep $1,000
- Oct $1,000
- Nov $1,000
- Dec $1,000
- Jan $1,000
- Feb $1,000
- Mar $1,000
Ask before the investor asks
Your agent can read SaaS metrics, financial statements, balances and default-alive reports from the recorded ledger. Check MRR and ARR alongside burn, runway, revenue and what customers owe you. Inspect the entries and assumptions before sharing a number; Economico does not automatically import Stripe or bank data.
Show MRR, recognized revenue, burn and runway for August. Which contracts, payments and costs are included?
Let billing terms stay visible
Contract activities can express subscriptions, usage tiers, minimums and prepaid capacity. Your agent records the observed activity under those terms and can show the resulting amount due and recognition. The terms and measurements must be supplied and reviewed; the ledger does not guess what a customer used or what a vendor charged.
A SaaS startup's first quarter · in journal entries
MRR from the books, from customer one.
Scroll through TinyCRM Studio's first quarter — self-serve plans, an onboarding fee, real infrastructure costs. Subscriptions land in real books, so MRR is read, not rebuilt.
Incorporate and raise
Nora and Basil put in $20,000 and close a $100,000 pre-seed SAFE. Cash, yes — revenue, no.
5 tool calls
Economicocontracts.create✓
{ "ledgerBindings": { "money": "led_00000000000000000000000840" }, "parties": { "founder-a": "nora-chen", "founder-b": "basil-mensah" }, "templateDocumentId": "doc_01KBBKB100PW948B1STEVDN15T", "terms": { "authorize": { "shares": "12000000" }, "buy-founder-a": { "par": "50000", "premium": "950000", "shares": "5000000" }, "buy-founder-b": { "par": "50000", "premium": "950000", "shares": "5000000" } } }Economicocontracts.record✓
{ "activityKey": "buy-founder-a", "contractId": "ctr_01KBBKB100K6TYHZF5RWP45CWM", "effectiveAt": "2025-12-01T00:00:00Z", "facts": { "bank": "mercury-checking" }, "occurrenceKey": "buy-founder-a", "sourceFactId": "founder-stock:nora-chen" }Economicocontracts.record✓
{ "activityKey": "buy-founder-b", "contractId": "ctr_01KBBKB100K6TYHZF5RWP45CWM", "effectiveAt": "2025-12-01T00:00:00Z", "facts": { "bank": "mercury-checking" }, "occurrenceKey": "buy-founder-b", "sourceFactId": "founder-stock:basil-mensah" }Economicocontracts.create✓
{ "ledgerBindings": { "money": "led_00000000000000000000000840" }, "parties": { "investor": "pre-seed-angels" }, "templateDocumentId": "doc_01KBBKB100609M1Q3ZBFC8F88V", "terms": { "fund": { "amount": "10000000" } } }Economicocontracts.record✓
{ "activityKey": "fund", "contractId": "ctr_01KBBKB100ZN675ESE2TMA5TN6", "effectiveAt": "2025-12-15T00:00:00Z", "facts": { "bank": "mercury-checking" }, "occurrenceKey": "fund", "sourceFactId": "mercury:wire:pre-seed-angels-safe" }
The first self-serve customer
Juniper Bio signs up for the $499 Growth plan and pays within the week. MRR exists — as a line in the books.
5 tool calls
Economicoparties.create✓
{ "categories": [ "customer" ], "name": "Juniper Bio", "partyId": "juniper-bio" }Economicocontracts.create✓
{ "ledgerBindings": { "money": "led_00000000000000000000000840" }, "parties": { "customer": "juniper-bio" }, "templateDocumentId": "doc_01KBBKB100DX4NTC7QDJZ4JP3A", "terms": { "subscription": { "monthly": "49900" } } }Economicocontracts.record✓
{ "activityKey": "accept", "contractId": "ctr_01KBBKB1004596YS5RQH74AWY1", "effectiveAt": "2026-01-02T00:00:00Z", "evidence": { "acceptance": [ { "kind": "stripe_object", "ref": "sub_1QJuniperGrowth" } ] }, "facts": {}, "occurrenceKey": "accept", "sourceFactId": "juniper-bio:signup" }Economicocontracts.record✓
{ "activityKey": "invoice", "contractId": "ctr_01KBBKB1004596YS5RQH74AWY1", "effectiveAt": "2026-01-02T00:00:00Z", "facts": { "due_days": "14" }, "occurrenceKey": "2026-01", "sourceFactId": "TCS-INV-001" }Economicocontracts.record✓
{ "activityKey": "pay", "contractId": "ctr_01KBBKB1004596YS5RQH74AWY1", "effectiveAt": "2026-01-06T00:00:00Z", "evidence": { "payment": [ { "kind": "other", "ref": "mercury:ach:juniper-2026-01-06" } ] }, "facts": { "bank": "mercury-checking", "invoice": "TCS-INV-001" }, "occurrenceKey": "TCS-INV-001", "sourceFactId": "mercury:ach:juniper-2026-01-06" }
A founder covers the first hosting receipt
Nora pays a $40 Vercel receipt personally. TinyCRM has the expense, but the company's bank balance does not move.
4 tool calls
Economicoparties.create✓
{ "categories": [ "founder" ], "name": "Nora Chen", "partyId": "nora-chen" }Economicoparties.create✓
{ "categories": [ "vendor" ], "name": "Vercel", "partyId": "vercel", "url": "https://vercel.com" }Economicocontracts.create✓
{ "ledgerBindings": { "money": "led_00000000000000000000000840" }, "parties": { "vendor": "vercel" }, "templateDocumentId": "doc_01KBBKB100Z6Q6WNP83Y9DJ2M8" }Economicocontracts.record✓
{ "activityKey": "bill", "contractId": "ctr_01KBBKB100HT0KZ7N35DW2AQ1N", "effectiveAt": "2026-01-07T00:00:00Z", "facts": { "amount": "4000", "paid_by": "nora-chen" }, "occurrenceKey": "2026-01", "sourceFactId": "vercel:receipt:pro-2026-01" }
An onboarding fee — kept out of MRR
Maple Works buys guided onboarding for $1,500. One-time revenue, on its own line, so recurring stays honest.
1 tool call
Economicocontracts.record✓
{ "activityKey": "onboarding", "contractId": "ctr_01KBBKB100X8AFX30KRZNX698D", "effectiveAt": "2026-01-12T00:00:00Z", "facts": { "amount": "150000" }, "occurrenceKey": "onboarding", "sourceFactId": "TCS-INV-002" }
The infrastructure bills arrive
Render and Postmark bill the company, paid from checking; the receipts are already in the inbox.
4 tool calls
Gmailsearch_gmail_messages✓
{ "q": "(receipt OR invoice) from:(render.com OR postmarkapp.com) after:2026/01/01" }Gmailread_gmail_message✓
{ "messageId": "9aad00e333de6ad4" }Economicocontracts.record✓
{ "activityKey": "bill", "contractId": "ctr_01KBBKB100F7ZPN4E8DF1BN1SC", "effectiveAt": "2026-01-31T00:00:00Z", "facts": { "amount": "68000", "bank": "mercury-checking" }, "occurrenceKey": "2026-01", "sourceFactId": "render:receipt:2026-01" }Economicocontracts.record✓
{ "activityKey": "bill", "contractId": "ctr_01KBBKB100J72E7APGB699VBQ8", "effectiveAt": "2026-01-31T00:00:00Z", "facts": { "amount": "9500", "bank": "mercury-checking" }, "occurrenceKey": "2026-01", "sourceFactId": "postmark:receipt:2026-01" }
February: MRR up, still pre-profit
A second plan signs — and a $2,200 terms-of-service review lands. Early SaaS in one line.
2 tool calls
Economicoreports.run✓
{ "kind": "saas_metrics", "month": 2, "year": 2026 }Economicoreports.run✓
{ "from": "2026-01-01", "kind": "income_statement", "until": "2026-03-01" }
The quarter closes, honestly
Three plans of MRR, a quarter that's still net red — with cash and operating history ready for a defensible runway view.
2 tool calls
Economicoreports.run✓
{ "kind": "saas_metrics", "quarter": 1, "year": 2026 }Economicoreports.run✓
{ "as_of": "2026-04-01", "kind": "balance_sheet" }
Ask it what you used to export and paste
Set up Juniper Bio on the $499/month Growth plan starting today.
What's our MRR this month and last, and which contracts make it up?
Moss Health paid $12,000 for an annual plan upfront — recognize it monthly over the term.
What you'll use
The money loop, tuned for SaaS startups.
Get started
Books your agent runs. Numbers you can explain.
Hand your agent the setup guide, approve its connection, and start with one real transaction. Inspect the books as you go.