Analytics — honest numbers onlyOWNER: SPLIT — metric definitions are ENGINE (one metric id = one label = one formula, everywhere), the chart surface is PRODUCT (Mav’s map, 2026-08-09). Folo’s /admin/analytics is the reference implementation — its honesty pattern is the house rule: never fake a number; every missing tile names exactly what’s missing and why. Privacy note: activity counts are sessions, not people — no cross-site person tracking; DAU becomes people-based only when the events pipeline lands with consented identity. folo.link scope (§17): this page READS each product’s event stream and read-model side-by-side — one product at a time via the Reading selector, or both named lanes via Compare; it changes NOTHING — there is no mutating control on this surface.
One metric id, one label, one formula — and AWAITING SOURCE beats a fake number, every time.
Demo dataAwaiting source
ReadingReading Folo events — the consumer surface’s stream. Tiles and charts below are Folo-scoped; no other product’s events are mixed in.
Compare: Folo × Fanogram — two labelled series
Two-window compare over the same read-model shape shared across products — the SPLIT contract in action: because the metric definitions are engine-owned, a side-by-side never shows one label with two arithmetics. Both sides are always named and render as two labelled series — the toggle never blends them into one number.
Paid conversion
26.0%
live · visitors → first paid action
SCOPE: Folo · LIVE · window: 28d · source: that platform’s lane of the one ledgerARPU
$4
live · revenue ÷ active payers
SCOPE: Folo · LIVE · window: 28d · source: that platform’s lane of the one ledgerDAU / MAU
AWAITING SOURCE
Needs the behavioural-events pipeline — sessions exist, people don’t. Counting sessions as people would overstate DAU (privacy note in the header ⓘ).
SCOPE: Folo · named reason · never faked · Folo reference wordingStickiness
AWAITING SOURCE
DAU÷MAU — blocked by the same events source as DAU/MAU; shipping it from sessions would silently change the formula.
SCOPE: Folo · named reason · never fakedD30 retention
AWAITING SOURCE
Needs the events pipeline plus a membership history — a cohort with no day-zero definition is a guess.
SCOPE: Folo · named reason · never fakedActive payers
7,302
paid at least once in window
SCOPE: Folo · DEMO DATA · window: 28d · source: that platform’s lane of the one ledgerFolo → Fanogram upgrade rate
3.1%
DEMO DATA · window: 28d · source: SSO identity joinGenuinely cross-platform — and here is why it may render unscoped (§17-1): numerator = FG activations, denominator = Folo active creators, joined on SSO identity — the one legitimately shared key. The metric IS the bridge between the two products; scoping it to either side would destroy its meaning. It is the only cross-product number on this page, and it is a read — nothing on this surface writes.
Activity trend · sessions per day · SCOPE: Folo
Live source pending9,412
Jul 14Jul 28Aug 10
∿
Shape is demo; the pipe isn’t built. DAU/MAU trend, acquisition mix, activation funnel, retention cohort grid and cross-product upgrade rate all carry this stamp on live Folo — each with its own one-line reason, never a bare dash.
Dimensions honesty index
What this surface can and cannot slice by today.
✓
Signup cohortlive — feeds the table below
✓
Countrylive — from account records
…
Acquisition sourcepending — needs events pipeline
✕
Hour of dayMISSING — not modelled anywhere yet · ledger #257
ARPU / LTV by signup cohort SCOPE: Folo The one fully-live tableOn live Folo this is the only fully-live card on the analytics page — every other card is stamped LIVE SOURCE PENDING with a named reason. Kept as the anchor: real cohorts, real arithmetic, engine-owned formulas (ARPU = net revenue ÷ cohort size; LTV = cumulative net per signup).
| Cohort | Signups | Payers | ARPU | LTV to date | Trend |
|---|---|---|---|---|---|
| 2025-12 | 3,104 | 812 | $5.10 | $31.40 | |
| 2026-01 | 4,882 | 1,201 | $4.70 | $24.90 | |
| 2026-02 | 4,015 | 989 | $4.40 | $19.20 | |
| 2026-03 | 5,240 | 1,318 | $4.20 | $15.80 | |
| 2026-04 | 4,611 | 1,102 | $4.00 | $12.10 | |
| 2026-05 | 5,872 | 1,464 | $3.90 | $8.90 | |
| 2026-06 | 6,043 | 1,510 | $4.10 | $6.20 | |
| 2026-07 | 6,388 | 1,622 | $4.30 | $4.30 | |
| 2026-08 | 2,109 | 498 | $3.80 | $3.80 | partial month |
| Hour-of-day cut | MISSING dimension — hour-of-day is not modelled in the read-model yet (ledger #257); listed here so the gap is a row, not a silence. | ||||
≡
Demo rows in the live table’s exact shape (2025-12 → 2026-08). Cohort figures are per-product — cross-product money never sums (standing rule; see Finance).