Page actions
instrument / verified-with-binding-errata
LTV / CAC / Payback Unit Economics
The current ledger marks this instrument verified with errata that must be applied at binding time.
Inspectable records
Ledger state
The current ledger marks this instrument verified with errata that must be applied at binding time.
- Area
- Finance, Economics & Business (educational only — never individualized investment, tax, or legal advice)
- Tranche
- tranche-4
- Evidence ID
- t4-281
- Ledger rows
- 1
No ledger note is attached.
Review findings
The existing honest label correctly identifies this as a simplified SaaS model, but the UI or specification must explicitly define percentage input encoding, monthly periodicity, the LTV:CAC formula, and zero-denominator behavior before release.
Formula and scope findings
- The LTV:CAC ratio is named but no explicit formula is provided; it should be defined as LTV divided by CAC.
- The LTV formula is valid only as a simplified perpetuity model assuming constant monthly churn, monthly ARPU, and no discounting, expansion, contraction, reactivation, or cohort variation.
- The notation grossMargin% and churnRate is ambiguous: percentage inputs such as 80 and 5 must be converted to decimal fractions 0.80 and 0.05 before calculation.
Unit assumptions
- ARPU is recurring revenue per customer per month.
- Gross margin percentages are entered as percentage points and converted by dividing by 100; for example, 80 means 0.80.
- Monthly churn percentages are entered as percentage points and converted by dividing by 100; for example, 5 means 0.05.
- CAC and ARPU are in the same currency, and CAC is a one-time acquisition cost.
- LTV is expressed in the same currency as ARPU and CAC; CAC payback is expressed in months.
- LTV:CAC ratio is dimensionless and is calculated as LTV/CAC.
Boundary hardening
BREAK_CLAIMED · SELF_FLAGGED
The specification exposes no stated validation behavior for zero churn, so the formula can encounter undefined division. It also does not define any formula branch or explicitly resolve whether percentage inputs are decimal fractions or percentage points, producing a material payback discrepancy under the alternate convention.
Errata and corrections
Stress-test correction
{
"vector_inputs": {
"ARPU_cents_per_month": 10000,
"gross_margin_percent": 80,
"monthly_churn_percent": 5,
"CAC_cents": 24000
},
"wrong_outputs": {
"LTV_cents": 16000,
"LTV_CAC_ratio": 6.6666666667,
"CAC_payback_months": 3
},
"corrected_outputs": {
"LTV_cents": 160000,
"LTV_CAC_ratio": 6.6666666667,
"CAC_payback_months": 3
},
"method": "LTV = ARPU*margin/churn = 10000*0.8/0.05 = 160000 cents; only LTV_cents was wrong, ratio/payback were already correct (self-consistent with the $-denominated vectors in the same instrument)"
}Inspectable example
4 review vectors are recorded. One source-bound sample is shown below.
{
"inputs": {
"ARPU": 100,
"ARPU_unit": "USD/month",
"gross_margin_percent": 80,
"monthly_churn_percent": 5,
"CAC": 1200,
"CAC_unit": "USD"
},
"expected_outputs": {
"LTV": 1600,
"LTV_CAC_ratio": 1.3333333333,
"CAC_payback_months": 15
},
"working": "Gross margin fraction = 80/100 = 0.80. Monthly churn fraction = 5/100 = 0.05. Monthly gross-profit contribution = 100 × 0.80 = 80 USD. LTV = 80/0.05 = 1,600 USD. LTV:CAC = 1,600/1,200 = 1.3333333333. CAC payback = 1,200/80 = 15 months."
}Related workflows
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.json · VERIFIED_WITH_ERRATAevidence-tranche4/tranche4-results.jsonBOUNDARY_HAZARD_CATALOG.jsonSTRESS_TEST_CORRECTIONS_APPLIED.json