You Track 20 Numbers. Investors Care About 3. Here's What They Look At.
Your dashboard has a hundred metrics. Daily active users. Activation rate. Time to first value. Feature adoption. Engagement cohorts. Customer health score. Renewal rate. Upsell velocity. All of it noise. When a VC sits across a table from a SaaS founder, they ask three questions: What's your unit economics? How fast do you pay back customer acquisition? Are customers worth more than you spent to acquire them? Translated: LTV/CAC ratio, CAC payback period, and gross margin. If these three numbers look good, everything else is a detail.
Velocity X ships these three metrics on every SaaS dashboard. One tile. Three numbers. No vanity metrics. This post walks the formulas, the Supabase queries, why investors worship these numbers, and how to benchmark your startup against the world-class cohort.
CAC: The Customer Acquisition Cost — What You Paid to Win Them
Customer Acquisition Cost (CAC) is the blended cost of acquiring a single customer. Take your total sales and marketing spend for a month, divide by the number of new customers acquired that month. If you spent $50,000 on ads, $20,000 on a salesperson, and $5,000 on content, that's $75,000 total. You closed 75 customers. CAC = $75,000 / 75 = $1,000 per customer. Simple.
Most founders underestimate this number. They count ad spend and forget about their salary, the designer building landing pages, the ops person managing campaigns, and the SaaS platforms they rent. The real CAC is 2–3× what most teams calculate. That's why Velocity forces you to segment by channel and include all-in costs.
CAC = (Sales + Marketing Spend) / (New Customers Acquired). Segment by channel (ads, direct sales, partnerships, content). Benchmark: under $500 is strong for self-serve, $1K–$3K is typical for mid-market SMB, $5K+ is enterprise (where sales cycles are 6+ months and closed contracts justify it).
LTV: The Lifetime Value — What They're Worth
Lifetime Value (LTV) is the total profit you'll make from a customer before they churn. It depends on three things: average monthly recurring revenue per customer (ARPU), gross margin (the percentage of that revenue that's profit after COGS), and how long they stick around (average customer lifetime in months).
The formula is simple: LTV = ARPU × Gross Margin % × Customer Lifetime (months).
If your ARPU is $500/month, your gross margin is 70% (common for SaaS), and customers stay for 36 months on average, your LTV = $500 × 0.70 × 36 = $12,600. That's the profit pool you have to work with for acquisition, support, and growth.
The trap: many founders use annual gross margin (revenue minus cloud infrastructure costs) and miss the rest. You've also got support costs, payment processing (2–3%), chargebacks, refunds, and customer success overhead. Those eat another 15–25% of gross. The real LTV for a $500/month customer might be $500 × 0.50 × 36 = $9,000 (50% blended margin after all opex). That's still healthy — but it's the math that matters.
Gross Margin % = (Revenue − Cost of Goods Sold) / Revenue. For SaaS, COGS is infrastructure (AWS, databases, hosting). Benchmark: 70%+ is world-class, 60%+ is healthy, under 50% is a red flag (your product is too expensive to run).
LTV/CAC Ratio: The Magic Multiple
Divide LTV by CAC. If LTV is $12,600 and CAC is $1,000, your ratio is 12.6:1. That's insane—you're making $12.60 for every $1 you spend on customer acquisition. Wall Street wants at least 3:1. At 3:1, you've got headroom for sales/marketing overhead, team costs, and growth. Below 3:1, your unit economics are broken. You're acquiring customers at a loss relative to the value they generate.
Most early-stage SaaS starts around 1:1 (you're barely breaking even on customer acquisition). By product-market fit, you should hit 3:1. By scale, best-in-class companies hit 5:1 to 10:1 (Slack, Datadog, Stripe). The ratio compounds your growth: if you can double your ARPU or halve your CAC, your unit economics jump to 6:1, 8:1, or higher. That gives you the margin to spend aggressively on growth.
LTV/CAC Ratio = LTV / CAC. Benchmark: >3:1 is fundable, >5:1 is scalable, >8:1 is exceptional.
CAC Payback: How Fast You Break Even
CAC payback is the number of months it takes for a customer to generate enough revenue to cover their acquisition cost. If CAC is $1,000 and monthly revenue is $500, payback = $1,000 / $500 = 2 months. After month 2, that customer is profit.
This is the metric VCs push hardest. A 2-month payback means you reinvest profits immediately, and capital compounds. A 12-month payback means cash is tied up for a year before you can redeploy it. A 24-month payback usually means the startup runs out of runway before the unit economics flip.
CAC Payback (months) = CAC / (ARPU × Gross Margin %). If CAC is $1,000, ARPU is $500, and gross margin is 70%, payback = $1,000 / ($500 × 0.70) = $1,000 / $350 = 2.9 months. Under 12 months is the golden rule. Under 6 months is world-class.
Payback also drives your capital efficiency. If payback is 3 months and you raise $1M, you can deploy it on customer acquisition and reinvest the returns into the next cohort. The math compounds. If payback is 18 months, you're trapped—half your cohort hasn't paid back by the time your cash runs out.
The Dashboard: Three Numbers That Predict Success
Velocity displays LTV/CAC ratio, CAC payback (months), and blended gross margin % in a single card. Each metric trends over time (monthly or quarterly lookback). When you open the dashboard, you instantly see: are my unit economics broken (ratio <2:1)? Am I reinvesting fast enough (payback <6 months)? Are margins healthy (>65%)? If any of those three is red, you know where to dig.
The SQL: Calculate Unit Economics Across Cohorts
The query segments customers by acquisition month, sums their ARR and churn, calculates LTV, then pulls CAC from a separate spend table:
WITH customer_cohorts AS (
SELECT
DATE_TRUNC('month', created_at)::date AS acquired_month,
customer_id,
SUM(amount_cents) / 100 AS total_revenue_lifetime,
COUNT(DISTINCT DATE_TRUNC('month', created_at)::date) AS months_active,
AVG(amount_cents / 100) AS arpu
FROM subscriptions
WHERE status = 'active' OR (status = 'cancelled' AND cancelled_at >= now() - interval '36 months')
GROUP BY acquired_month, customer_id
),
cohort_ltv AS (
SELECT
acquired_month,
COUNT(DISTINCT customer_id) AS cohort_size,
AVG(total_revenue_lifetime) AS avg_ltv,
AVG(arpu) AS avg_arpu,
AVG(months_active) AS avg_customer_lifetime_months,
ROUND(100.0 * (1.0 - COUNT(DISTINCT CASE WHEN status = 'cancelled' THEN customer_id END)::numeric / COUNT(DISTINCT customer_id)), 1) AS retention_percent
FROM customer_cohorts
GROUP BY acquired_month
),
cac_by_month AS (
SELECT
DATE_TRUNC('month', date)::date AS spend_month,
SUM(amount_cents) / 100 / COUNT(DISTINCT customer_acquired) AS blended_cac
FROM marketing_spend
GROUP BY spend_month
)
SELECT
c.acquired_month,
c.cohort_size,
ROUND(c.avg_ltv, 2) AS ltv,
ROUND(m.blended_cac, 2) AS cac,
ROUND(c.avg_ltv / NULLIF(m.blended_cac, 0), 1) AS ltv_cac_ratio,
ROUND(m.blended_cac / NULLIF(c.avg_arpu, 0), 1) AS payback_months,
ROUND(c.retention_percent, 1) AS retention_percent
FROM cohort_ltv c
LEFT JOIN cac_by_month m ON c.acquired_month = m.spend_month
ORDER BY c.acquired_month DESC
LIMIT 24;
This query cohorts customers by sign-up month, calculates their lifetime revenue and average lifetime, then joins against marketing spend to compute CAC per cohort. The result is a 24-month cohort table showing which acquisition months had the best unit economics. Early cohorts might show 2:1 ratio; recent cohorts (with less lifetime data) show 4:1+ because they haven't churned yet (survivorship bias). Velocity adjusts for this by projecting LTV based on early-stage churn curves.
Reading the Card: Three Colours, One Decision
LTV/CAC ratio appears in green if >3:1, amber if 2–3:1, red if <2:1. Payback appears in green if <6 months, amber if 6–12, red if >12. Gross margin appears in green if >70%, amber if 60–70%, red if <60%. A founder who glances at this card for 10 seconds should know: can I scale this unit economically? When do I break even on each customer? Am I profitable at the gross level?
Six FAQs
Should I include trial sign-ups in CAC?
No. CAC is the cost to acquire a paying customer. Trial sign-ups are top-of-funnel; until they convert and pay, they're part of your activation funnel, not your CAC. If 10 trials convert and 90 bounce, your cost per paying customer is the total marketing spend divided by the 10 conversions, not 100 sign-ups. Velocity segments by conversion status, so this happens automatically.
What if CAC is negative (word-of-mouth)?
If you're growing purely through word-of-mouth or organic search with zero spend, CAC is technically zero or negative (you're paid to acquire). In that case, LTV/CAC ratio is infinite — you've unlocked unicorn-tier unit economics. But don't kid yourself: someone is working on that word-of-mouth (your founder, your product team, your content creator). Allocate a portion of salary as "CAC" to be honest about economics. Most all-organic companies are more expensive to acquire than they think.
How do I handle enterprise sales (6–12 month cycles)?
Allocate sales spend to the contract close date, not the start date. If a deal takes 9 months to close, assign the salesperson's 9 months of work (salary + benefits) to the month of close. This defers your CAC but is more accurate. Separately, track "CAC payback from contract start" vs. "CAC payback from revenue recognition" to understand cash flow vs. accounting. Most enterprise SaaS has a 6–18 month payback because of the sales cycle.
What if LTV is negative (customers pay once and churn)?
Then you don't have recurring revenue. You have a transactional product, and LTV/CAC ratio doesn't apply. Instead, calculate payback as revenue / CAC (how many sales do you need to break even per customer?). If LTV is negative, your business model is broken for a typical SaaS — you're selling something that doesn't recur. Pivot to subscriptions or rethink your product.
How do I calculate LTV if I don't know customer lifetime yet?
Use historical churn rate to project it. If 5% of customers churn monthly, average customer lifetime = 1 / 0.05 = 20 months. Multiply ARPU × Gross Margin % × 20 to estimate LTV. This is an estimate, but it's better than guessing. As you accrue more data (18+ months of history), replace the estimate with actual customer lifetime. Velocity does this automatically—early cohorts use projected LTV, mature cohorts use actual LTV, and the card displays a weighted blend.
Should I include expansion revenue in CAC payback math?
Yes, but separately. If a customer has $500 base ARPU and expands to $700 after 6 months, use the $500 for payback (base offer). Once payback is achieved, expansion is gravy. Some founders double-count expansion upfront; that's wrong. CAC payback is about breaking even on the acquisition offer, not the upside expansion. Calculate payback conservatively on base ARPU, then celebrate expansion as a margin multiplier afterward.
The Bottom Line
LTV/CAC ratio tells you if your unit economics work at scale. CAC payback tells you how long capital is trapped before it compounds. Gross margin tells you if the unit can sustain growth. If ratio >3:1, payback <12 months, and margin >60%, you have fundable unit economics. If all three are excellent (ratio >5:1, payback <6 months, margin >70%), you can scale without apology. Velocity ships all three on the dashboard so you stop guessing and start optimizing. Build the queries today, populate the card, and obsess over the unit economics. Everything else — churn, activation, feature adoption — is optimization on top of a solid foundation.
Want to dig deeper into how these metrics compound over time? Check MRR, churn, and NRR to see how monthly recurring revenue shapes LTV over customer lifetime. Or view Velocity pricing to see how CAC, LTV, and payback ship alongside every other unit economics dashboard.