FLATLAND

Escape Flatland.

Financial models as code. Built by your AI agent.

Describe your business to your AI agent. Flatland compiles it into a typed financial model where every assumption is named, every dependency is traced, and changing one thing doesn’t silently break another. Under 5 minutes.

Works with Claude Code · any MCP client

Models stored locally · Your data never leaves your machine

50 free answers/month · $0.10/answer after · no card to start
claude-code · flatland MCP
>
flatland_build_model ✓ done
9 drivers · 3 assertions
flatland_compile ✓ done
type check · resolve deps · evaluate
5 assertions passed · 0 warnings
Year 1 Revenue$144,000
Year 1 Gross Profit$112,320(78% margin)
Year 1 EBITDA$67,320
Year 3 EBITDA$335,270
HOW IT WORKS

Under 5 minutes, start to finish.

01
Get Your API Key
Start your trial at flatlandfi.com. Your API key arrives by email in seconds.
02
Connect Your Agent
$ npx flatland-setup <your-key>
Configures Claude Code or any MCP client.
03
Build Your Model
Open your agent and say: “Build me a 3-year P&L for a SaaS doing $12K MRR.” Flatland compiles a typed model you can export or iterate on.

You live in Flatland.

Your spreadsheet cell doesn’t know what it is.
Your versions aren’t controlled.
Your formulas break silently.

“I looked, and, behold, a new world!”

Flatland: A Romance of Many Dimensions — Edwin Abbott Abbott, 1884

Your business doesn’t live in two dimensions.

Your model doesn’t have to.

B
14
0.08
(what is this?)
monthly_churn
Value 0.08
Type Percentage
Feeds net_retention → arr → ebitda
Assertion > 0, < 0.20 ✓

A cell that knows what it means.

DIMENSION THREE · STRUCTURE

Your model has a shape.

A compiled model has a shape. Every assumption knows its place. Every formula traces back to typed inputs. Change one thing, and every dependency updates with it — no silent drift, no guesswork.

Assumptions
mrr$12,000
monthly_churn8.00%
gross_margin78.00%
cac$800
headcount$45,000
new_cust_mo15
arpu$400
infra_pct12%
Derived
arr$144,000
net_retention92.00%
customers30
acq_spend$9,600
ltv$60,000
Computed
gross_profit$112,320
support_cost$5,400
infra_cost$17,280
ltv_cac_ratio75.0x
Outputs
total_opex$77,280
ebitda$35,040
7 assertions passed ✓
Assumptions
mrr$12,000
monthly_churn8.00%
gross_margin78.00%
cac$800
headcount$45,000
Derived
arr$144,000
net_retention92.00%
gross_profit$112,320
Outputs
total_opex$77,280
ebitda$35,040
DIMENSION FOUR · TIME

One model. Many futures.

A scenario is an overlay, not a copy — just the drivers that change. Compile a new future instantly, without touching the base. Every assertion runs on every scenario.

flatland_scenario(base, upside, downside)
EBITDA 0 TODAY NOW Y1 Y2 Y3 ⚠ assertion failed: ebitda > 0 Y3 EBITDA $335,270 UPSIDE Y3 EBITDA $227,756 BASE Y3 EBITDA -$12,480 DOWNSIDE
Upside $335,270
Base $227,756
Downside -$12,480
⚠ assertion failed: ebitda > 0

Y3 EBITDA · flatland_scenario(base, upside, downside) ✓

DIMENSION FIVE · LEVERAGE

Not every driver moves the model.

Flatland ranks every driver by impact on any output — EBITDA, runway, LTV. One driver usually matters 10x more than the rest. Know which before you waste a week tuning something that doesn’t move.

flatland_sensitivity(target="ebitda_y3")
ranks 8 drivers · perturbed ±10%
Assumptions
monthly_churn8.00%
ΔEBITDA$42Kper 1%
gross_margin78.00%
ΔEBITDA$21Kper 1%
headcount$45,000
ΔEBITDA$8Kper $10K
mrr$12,000
cac$800
new_cust_mo15
arpu$400
infra_pct12%
Derived
net_retention92.00%
arr$144,000
customers30
acq_spend$9,600
ltv$60,000
Computed
gross_profit$112,320
support_cost$5,400
infra_cost$17,280
ltv_cac_ratio75.0x
Outputs
total_opex$77,280
ebitda$35,040
7 assertions passed ✓
Signal — drives your outcome
monthly_churn8.00%
Δ EBITDA $42K per 1%
gross_margin78.00%
Δ EBITDA $21K per 1%
headcount$45,000
Δ EBITDA $8K per $10K
Noise — negligible impact
mrr$12,000
cac$800
new_cust_mo15
arpu$400
infra_pct12%

flatland_sensitivity(target="ebitda_y3") ✓

Financial models as code.

Every assumption typed. Every dependency traced. Every change propagated instantly.

50 free answers/month · $0.10/answer after

Flatland is a financial modeling engine for AI agents. Your agent connects via MCP and builds structured, typed models — not markdown tables or prose estimates, but real computation graphs with named assumptions, scenario analysis, sensitivity ranking, and named assertions that guard against invalid assumptions. Ask your agent to model SaaS unit economics, stress-test fundraising assumptions, or run a three-statement operating model. Flatland compiles it, your agent explains it, and you export a live Excel file ready for investors. Works with Claude Code, Windsurf, and any MCP-compatible tool.

THE ENGINE

A model compiles in three passes.

TYPE CHECK
9 drivers typed
Every driver gets a type.
Wrong units don’t compile.
RESOLVE DEPS
5 edges resolved
Dependencies ordered.
Cycles detected.
EVALUATE
5 assertions passed
Every value computed.
Every assertion tested.
mrr $12,000 CURRENCY monthly_churn 8.00% PERCENTAGE gross_margin 78.00% PERCENTAGE cac $800 CURRENCY arr $144,000 CURRENCY net_retention 92.00% PERCENTAGE gross_profit $112,320 CURRENCY ebitda $67,320 CURRENCY 5 assertions passed
COMPILE
<10µs
for 9 drivers
DETERMINISM
1 : 1
IR → output
SCALE
1000+
drivers tested
THE SESSION · AGENT BUILDS 47 DRIVERS FROM A SENTENCE
claude-opus-4 · flatland MCP · saas_a_series_model
I’m raising a Series A for my B2B SaaS. We’re at $12K MRR with 8% monthly churn and $800 CAC. Gross margin 80%. I need a 3-year integrated model (P&L, balance sheet, cash flow) with proper headcount planning for eng, sales, and G&A. Include working capital assumptions and tie-out assertions. Investor will scrutinize the cash runway.

I’ll build this as an integrated 3-statement model. Adding typed drivers for each statement plus the tie-out assertions.

flatland_init ✓ done
flatland_add_driver × 47 ✓ done
8 revenue · 6 COGS · 12 OpEx · 12 BS · 8 CF drivers
47 typed drivers, 52 edges resolved
flatland_add_assertion × 12 ✓ done
Balance sheet tie · Cash flow tie · Retained earnings
+ 9 sanity constraints on margins, growth, and runway
flatland_compile ✓ done
type check · resolve deps · evaluate
47 drivers typed · 52 edges · 12 assertions passed · 142ms

Your 3-statement model is ready. Let me show you the full compiled output, then we can stress-test the assumptions.

THE MODEL · THREE STATEMENTS · FULLY INTEGRATED · COMPILED
claude-opus-4 · flatland MCP · saas_a_series_model
Income Statement Y1Y2Y3
Subscription Revenue $144,000 $264,960 $487,526
Services Revenue $18,000 $31,800 $55,200
Total Revenue $162,000 $296,760 $542,726
Total COGS ($32,400) ($59,352) ($108,545)
Gross Profit $129,600 $237,408 $434,181
Gross Margin 80.0% 80.0% 80.0%
Product & Engineering ($45,000) ($95,000) ($168,000)
Sales & Marketing ($28,000) ($65,000) ($140,000)
General & Administrative ($15,000) ($28,000) ($48,000)
Total OpEx ($88,000) ($188,000) ($356,000)
EBITDA $41,600 $49,408 $78,181
EBITDA Margin 25.7% 16.6% 14.4%
Net Income $28,950 $32,556 $51,886
Balance Sheet Y1Y2Y3
Cash & Equivalents $44,995 $65,951 $104,012
Accounts Receivable $13,500 $24,730 $45,227
Prepaid Expenses $2,000 $3,000 $4,000
Fixed Assets, Net $13,000 $21,000 $29,000
Total Assets $73,495 $114,681 $182,239
Accounts Payable $6,500 $12,730 $23,227
Deferred Revenue $15,000 $27,000 $50,000
Total Liabilities $21,500 $39,730 $73,227
Common Stock $23,045 $23,045 $23,045
Retained Earnings $28,950 $51,906 $85,967
Total Equity $51,995 $74,951 $109,012
Total Liab & Equity $73,495 $114,681 $182,239
Cash Flow Statement Y1Y2Y3
Net Income $28,950 $32,556 $51,886
Depreciation $2,045 $3,496 $5,175
Δ Working Capital ($2,000) ($5,000) ($11,000)
Operating Cash Flow $28,995 $31,052 $46,061
CapEx ($10,000) ($13,000) ($15,000)
Investing Cash Flow ($10,000) ($13,000) ($15,000)
Equity Issuance $23,045 $0 $0
Financing Cash Flow $23,045 $0 $0
Net Change in Cash $42,040 $18,052 $31,061
Ending Cash $44,995 $65,951 $104,012
Assertions 12 / 12 ✓
BS_tieTotal Assets == Total Liab + Equity
CF_tieEnding Cash on CF == Cash on BS
Retained_earningsRE == prior RE + Net Income
Gross_margin_targetGM > 60% (all years)
EBITDA_positiveEBITDA > 0 (all years)
Cash_runwayCash > 0 (all years)
+ 6 more passing
Summary
Total Revenue$162K$297K$543K
Gross Profit$130K$237K$434K
EBITDA$42K$49K$78K
Net Income$29K$33K$52K
+ Balance Sheet · + Cash Flow · + 12 assertions — view on desktop
THE STRESS TEST · CHANGE ONE THING · EVERYTHING UPDATES
claude-opus-4 · flatland MCP · saas_a_series_model
What if churn doubles and we have to delay our Series A by 6 months? Does the model survive?

I’ll create a downside scenario with those overrides.

flatland_scenario("downside_doubled_churn") ✓ done
Overrides: churn_monthly = 0.16 · equity_financing_y1 = 0
flatland_compile ✓ done
Scenario compiled · 12 assertions evaluated · 2 failed
Scenario: Downside — churn doubled, raise delayed
Base Downside
Y3 Revenue $542,726 $298,500
Y3 EBITDA $78,181 ($42,180)
Y3 Ending Cash $104,012 ($58,200)
Runway sufficient insolvent at M22
Assertions 10 / 12 ×
×EBITDA_positiveEBITDA_y3 < 0 (violated: -$42,180)
×Cash_runwayCash_m22 < 0 (violated: -$8,100)
BS_tiestill balances
CF_tiestill ties
+ 8 others passing

At these assumptions, the model insolvents at month 22. Your strongest defensive lever is churn — a 1% improvement reclaims $42K of year-3 EBITDA. Margin is second. Delaying the raise is unsurvivable without churn improvement.

Want to run sensitivity on the 12 drivers most tied to cash runway?

Scenario: Downside
Y3 Revenue$543K$299K
Y3 EBITDA$78K($42K)
Y3 Cash$104K($58K)
RunwaysufficientM22 insolvent
Assertions: 10 / 12 × · BS_tie & CF_tie still pass
THE DELIVERABLE · EVERY FORMULA LIVE
saas_a_series_model.xlsx flatland export
ƒx =B8-B11
A
B
C
D
1
Y1
Y2
Y3
2
INCOME STATEMENT
3
  Subscription Revenue
$144,000
$264,960
$487,526
4
  Services Revenue
$18,000
$31,800
$55,200
5
  Total Revenue
$162,000
$296,760
$542,726
6
7
  Hosting
($19,440)
($35,611)
($65,127)
8
  Payment Processing
($12,960)
($23,741)
($43,418)
9
  Third-party Services
($6,480)
($11,870)
($21,709)
10
11
  Total COGS
($38,880)
($71,222)
($130,254)
12
  Gross Profit
$123,120
$225,538
$412,472
13
  Gross Margin
76.0%
76.0%
76.0%
14
15
  Product & Engineering
($45,000)
($95,000)
($168,000)
16
  Sales & Marketing
($28,000)
($65,000)
($140,000)
17
  General & Administrative
($15,000)
($28,000)
($48,000)
Assumptions P&L Balance Sheet Cash Flow Scenarios

Every cell references another. Nothing hardcoded.
Your investor can audit every number.

ƒx =B8-B11
 Y1
Total Revenue$162,000
Total COGS($38,880)
Gross Profit$123,120
Gross Margin76.0%
Product & Engineering($45,000)
Sales & Marketing($28,000)
view desktop for the full export
FLATLAND
$0.10/answer
50 free answers/month · no card to start
Rolling out the new pricing in waves. Drop your email and we’ll send your API key when we open the door.