01Run it
Replace the <placeholders> with your own values, or use the builder below.
p202 ltv cohorts02What you get
Captured from the real binary, run against a demo store with 30 days of traffic. Switch tabs to see the same run as JSON, the shape scripts and agents parse.
$ p202 ltv cohorts cohort_month customers ltv_per_customer m0 m1 m2 m3 m4 m5_plus total_revenue ------------ --------- ---------------- ----- -- -- -- -- ------- ------------- 2026-10 81 136.8395 11084 0 0 0 0 0 11084 2026-09 33 159.7576 5272 0 0 0 0 0 5272
$ p202 ltv cohorts --json { "data": [ { "cohort_month": "2026-10", "customers": 81, "ltv_per_customer": 136.83951, "m0": 11084, "m1": 0, "m2": 0, "m3": 0, "m4": 0, "m5_plus": 0, "total_revenue": 11084 }, { "cohort_month": "2026-09", "customers": 33, "ltv_per_customer": 159.75758, "m0": 5272, "m1": 0, "m2": 0, "m3": 0, "m4": 0, "m5_plus": 0, "total_revenue": 5272 } ], "months": 6, "timezone": "America/New_York" }
03Build your command
Pick values and the command line writes itself, quoted and ready to paste.
p202 ltv cohortsSet flags below; the command updates as you type.
04Flags
1 flag, plus the global flags every command takes.
| Flag | What it does |
|---|---|
| --monthsstring | How many acquisition months, newest first (1-24, default 6) |
05For agents
Running this from an agent
- Read the same facts as JSON:
p202 commands ltv cohorts --json. - With
AI_AGENT,CLAUDECODEor another agent variable set, output is compact JSON and errors arrive on stderr as a JSON envelope with ahint. - Exit codes: 0 ok, 1 bad input, 2 auth, 3 network, 4 server error, 5 partial failure, 6 no Pro licence on the install.
{
"path": "p202 ltv cohorts",
"use": "cohorts",
"short": "LTV maturation by acquisition month — each cohort's revenue by months since first seen (m0..m4, m5_plus)",
"runnable": true,
"flags": [
{
"name": "months",
"type": "string",
"default": "",
"usage": "How many acquisition months, newest first (1-24, default 6)",
"required": false
}
]
}