KPI strip — what each metric means

Last updated: May 19, 2026

KPI strip — what each metric means

The KPI strip is the top row of metrics on every analytics view. In Single Platform mode: native platform values + native currency. In Cross-Channel mode: rolled-up values converted to target_currency via EUR intermediate. Field set verified from AggregatedMetrics interface in apps/backend/src/services/cross-channel-analytics.service.ts.

Who is this for

Anyone reading the top bar of the dashboard and wondering "what does CPM actually measure?". Reference page for the strip's metric definitions.

The 13 KPI strip metrics

Verified from the AggregatedMetrics interface:

Metric

Formula

Unit

spend

sum(ad spend over period)

currency

impressions

sum(ad views)

count

clicks

sum(ad clicks)

count

ctr

clicks ÷ impressions × 100

%

cpc

spend ÷ clicks

currency

cpm

spend ÷ impressions × 1000

currency per 1000 impressions

conversions

sum(conversion events)

count

purchases

sum(purchase events)

count

purchaseValue / revenue

sum(purchase amount)

currency

leads

sum(lead events)

count

cpa

spend ÷ conversions

currency per conversion

roas

purchaseValue ÷ spend

ratio (e.g. 2.5 = €2.50 returned per €1 spent)

(Note: not every platform reports every metric. Some are missing for platforms that don't track them natively.)

Metric groupings

Reach + delivery

  • impressions — how many times ads were shown

  • clicks — how many times users clicked

  • ctr — click-through rate (engagement quality of creative + targeting)

Cost efficiency

  • spend — total money spent

  • cpc — cost per click (depends on competition + creative + targeting)

  • cpm — cost per 1000 impressions (cost of reach)

  • cpa — cost per acquisition / conversion (the business-relevant cost)

Outcomes

  • conversions — generic conversion events

  • purchases — purchase-type conversions

  • leads — lead-type conversions

  • purchaseValue / revenue — monetary value of purchases

Profitability

  • roas — return on ad spend (the headline number for e-commerce)

Single Platform vs Cross-Channel display

Aspect

Single Platform

Cross-Channel

Currency

Each ad account's native

target_currency (workspace default)

Aggregation

Per-platform native

Cross-platform rolled-up via EUR intermediate

Attribution windows

Per-platform native

Unified attribution model (best-effort cross-platform)

Cache

None / standard

10-min Redis (cca:v2: prefix)

Delta vs previous period

If Compare to previous period is enabled: each metric shows current value + delta_pct. Green / red coloring per direction (green = improvement, red = regression).

Direction depends on the metric:

Metric

Green (good) direction

spend

depends — context-specific

impressions, clicks

up (more reach)

ctr

up (better engagement)

cpc, cpm, cpa

down (more efficient)

conversions, purchases, leads, purchaseValue

up

roas

up

UI may color them accordingly; trust the math, not just the color.

How to use the KPI strip

Daily / weekly pulse

Glance to confirm performance is on track. Watch for:

  • ROAS dropping vs prior period

  • CPA rising vs prior period

  • Spend pacing higher / lower than expected

Drill-down

Strip values are aggregates. To investigate a regression: drill into other widgets (top/flop, spend breakdown) or switch to Ads Manager (PRD-16) for row-level edits.

Executive reporting

KPI strip + comparison + brief commentary = a complete executive snapshot. Export PDF (see an-116) for monthly stakeholders.

Caveats

Postback metrics lag

conversions, purchases, purchaseValue, revenue, roas, cpa (when based on purchases) all depend on postback data (Meta API or your commerce / tracker integration). Postback lag: 24-72h.

Implication: yesterday's ROAS will be incomplete. Use last_7d minimum for ROAS / CPA decisions. See an-114.

Currency conversion variance

Cross-Channel mode converts to target_currency. Even tiny FX-rate differences can cause sub-percent variance vs the platform's native UI total. Expected behavior.

Attribution window differences

Meta's default attribution is 7-day click + 1-day view; Google's is 30-day click; TikTok's varies. Cross-channel unifies as best as possible but results may differ from each platform's native dashboard.

Common mistakes

  • Reading today's CPA / ROAS as final: postback lag means it'll change in 24-72h

  • Comparing Cross-Channel to platform UI 1:1: small variance is expected

  • Ignoring the spend column: high-volume metrics deserve more weight than low-volume in decisions

  • Treating delta_pct as direction-aware automatically: verify which direction is good for each metric

Related