[
 {
  "metric": "Install",
  "unit": "device event",
  "definition": "A first launch after download that an attribution system records. Includes reinstalls and redownloads unless filtered.",
  "can_add_to": "Other installs of the same app and window only",
  "watch_out": "Not a person and not a customer; reinstalls inside a reattribution window are often marked organic."
 },
 {
  "metric": "CPI (cost per install)",
  "unit": "USD per install",
  "definition": "Media spend divided by attributed installs.",
  "can_add_to": "n/a (a ratio)",
  "watch_out": "Depends on attribution rules; cheap installs can churn faster."
 },
 {
  "metric": "CPA (cost per action)",
  "unit": "USD per event",
  "definition": "Media spend divided by an in-app event (registration, trial, purchase).",
  "can_add_to": "n/a",
  "watch_out": "The event is a proxy; confirm it predicts value."
 },
 {
  "metric": "Media-only CAC",
  "unit": "USD per acquired customer",
  "definition": "Media spend divided by newly acquired customers (not installs, not reactivated users).",
  "can_add_to": "n/a",
  "watch_out": "Excludes fees, creative, measurement and staff."
 },
 {
  "metric": "Fully loaded CAC",
  "unit": "USD per acquired customer",
  "definition": "Media plus platform and agency fees, creative production, measurement tools and allocated staff cost, divided by newly acquired customers.",
  "can_add_to": "n/a",
  "watch_out": "The denominator must exclude reactivated and organic users."
 },
 {
  "metric": "Activation",
  "unit": "share of installs",
  "definition": "Share of installs reaching a defined first-value event within a stated window.",
  "can_add_to": "n/a",
  "watch_out": "Define the event and the window; compare only like with like."
 },
 {
  "metric": "Retention (exact day)",
  "unit": "share of cohort",
  "definition": "Share of an install cohort active on exactly day N.",
  "can_add_to": "n/a",
  "watch_out": "Lower than rolling retention; compare only at matching cohort age."
 },
 {
  "metric": "Retention (rolling or unbounded)",
  "unit": "share of cohort",
  "definition": "Share of a cohort active on day N or any later day.",
  "can_add_to": "n/a",
  "watch_out": "Rises as later data arrives; incomplete cohorts are censored."
 },
 {
  "metric": "Churn",
  "unit": "share of payers or subscribers per period",
  "definition": "Share of paying users who cancel or lapse in a period; split voluntary from involuntary (payment failure).",
  "can_add_to": "n/a",
  "watch_out": "Involuntary churn is a billing problem, not a media problem."
 },
 {
  "metric": "Gross bookings",
  "unit": "USD",
  "definition": "What users pay before store fees, refunds and taxes.",
  "can_add_to": "Other gross bookings",
  "watch_out": "Not revenue to the developer."
 },
 {
  "metric": "Net revenue",
  "unit": "USD",
  "definition": "Gross bookings minus store or payment fees, refunds, chargebacks and sales taxes; plus ad revenue earned.",
  "can_add_to": "Other net revenue",
  "watch_out": "State whether ad revenue is included."
 },
 {
  "metric": "Contribution",
  "unit": "USD",
  "definition": "Net revenue minus variable costs (cost of goods, payment costs, promotions, servers where material).",
  "can_add_to": "Other contribution",
  "watch_out": "The basis for payback; revenue is not profit."
 },
 {
  "metric": "Observed LTV",
  "unit": "USD per install or per customer",
  "definition": "Cumulative contribution (or net revenue, stated) actually realized by a cohort up to its current age.",
  "can_add_to": "n/a",
  "watch_out": "Always state cohort age."
 },
 {
  "metric": "Predicted LTV",
  "unit": "USD per install or per customer",
  "definition": "A model's forecast of cumulative value to a horizon.",
  "can_add_to": "n/a",
  "watch_out": "A forecast; publish backtest error on mature holdout cohorts and drift by segment."
 },
 {
  "metric": "ROAS",
  "unit": "ratio",
  "definition": "Revenue attributed to a campaign divided by its cost. State revenue basis (gross, net, ad revenue, contribution) and cost basis (media only or fully loaded).",
  "can_add_to": "n/a",
  "watch_out": "Attributed, not causal; the same campaign can show very different ROAS on different bases."
 },
 {
  "metric": "Incremental ROAS (iROAS)",
  "unit": "ratio",
  "definition": "Incremental revenue (treatment minus control, scaled) divided by incremental spend.",
  "can_add_to": "n/a",
  "watch_out": "Undefined only when incremental spend is zero; zero or negative incremental revenue gives an iROAS of zero or below, which must be reported with its interval, not dropped."
 },
 {
  "metric": "Incremental CAC",
  "unit": "USD per incremental customer",
  "definition": "Spend divided by customers that would not have been acquired without it, estimated against a control.",
  "can_add_to": "n/a",
  "watch_out": "Do not compute with zero or negative incremental customers."
 },
 {
  "metric": "Payback period",
  "unit": "months",
  "definition": "Cohort age at which cumulative contribution per customer first equals fully loaded CAC.",
  "can_add_to": "n/a",
  "watch_out": "If payback falls in the predicted part of the curve, it depends on the forecast."
 },
 {
  "metric": "Postback (SKAN / AdAttributionKit)",
  "unit": "one anonymous report per install, detail set by privacy thresholds",
  "definition": "Apple's privacy-preserving attribution message: up to three per install, delayed, with detail limited by crowd-anonymity tiers.",
  "can_add_to": "Never to platform-reported conversions",
  "watch_out": "Not a user; one winner per install."
 },
 {
  "metric": "Household (CTV)",
  "unit": "household",
  "definition": "A set of devices sharing an IP address or a graph-linked identity.",
  "can_add_to": "n/a",
  "watch_out": "Exposure of a household is not attention by a person, and not the installer."
 }
]