Overview Book map Friction Latency Recency RF Scorer LifeCycle Grid Hurdle Rate Campaign ROI Relative LTV Playbooks
Chapter 22 · Behavior-based modeling

LifeCycle Grid

Multiple hurdles on a Recency × Frequency map. Novo’s point: look at the data first, then place walls where the LifeCycle actually shifts — not a generic 30/60/90 template pretending to be “custom.”

CSV the scorer can actually read

One rolled-up row per customer (not raw order lines). Header row required. Column names are flexible.

Required

Recency

Last value-event date or days since that event.

last_activity_date · last_order_date · last_purchase_date

— or — recency_days · days_since_last_order

Use YYYY-MM-DD (e.g. 2026-07-15). Signup date alone is wrong — Recency = last purchase/visit/gift.

Required

Frequency

Count of repeating value events for that customer.

frequency · orders · order_count · number_of_orders · visits · units

Integer. Lifetime or consistent window — just be consistent across rows.

Recommended

Customer ID

customer_id · id · email · user_id

Optional for the grid math; required if you’ll export / act on names.

Optional

Monetary

monetary · revenue · ltv · total_spend · total_spent · sales

Not required for R×F LifeCycle Grid walls. Handy if you continue into RFM tools.

Minimum working example Copy or load template → Build grid
customer_id,last_activity_date,frequency,monetary
C001,2026-07-20,12,4200
C002,2026-06-01,4,680
C003,2025-12-15,1,49
  • Roll up first: each customer once — max(last date), sum(orders), sum($).
  • Headers: case-insensitive; spaces/dashes OK (Last Order Date works).
  • Not order-line exports unless you aggregate offline first.
  • Shopify-ish names accepted: Number of Orders, Total Spent, Last Order Date.

Natural: Fisher–Jenks (Recency) + gap/Jenks (Frequency) on this file. Manual: you type walls (defaults are only a starting template).

Ch 22: place boundaries where behavior shifts. Predefining walls before seeing the file is a template grid — not a LifeCycle Grid. Scoring needs a readable Recency + Frequency file first.