Documentation
Marketing attribution
Channel resolution, multi-touch models, lookback, funnel stages, ROAS, pause/boost, and the Attribution report.
Intently attributes conversions to marketing channels using first-party signals you already collect: UTMs, paid click IDs, and referrers. Premium feature key: marketing_attribution.
Open the report at Attribution. Setup lives under Attribution settings.
How a channel is chosen
Resolution priority for each touchpoint:
- Explicit UTM (
utm_source/utm_medium/utm_campaign, …) - Paid click IDs (
gclid,fbc/fbclid,ttclid,msclkid,li_fat_id,ScCid, …) - Referrer (organic search, AI assistants, social, generic referral)
- Direct
Browser cookies alone (_fbp, _pin_unauth) are not treated as paid evidence. Only click IDs such as fbc / fbclid or gclid classify paid ads.
Same-site referrers (internal navigation) resolve to direct, so they do not steal last-touch credit from a paid landing.
Paid channels (examples)
| Signal | Channel key |
|---|---|
Google UTM / gclid | google_ads |
Meta UTM / fbc | meta_ads |
Microsoft / msclkid | microsoft_ads |
TikTok / ttclid | tiktok_ads |
LinkedIn / li_fat_id | linkedin_ads |
UTM sources like facebook + medium cpc canonicalize to meta_ads so you do not split meta_paid vs meta_ads.
Email, SMS, AI assistants
utm_medium=email(ornewsletter) → channelemailutm_medium=sms(ortext) → channelsms- Referrers from ChatGPT, Gemini, Perplexity, Claude, Grok, Copilot → dedicated AI channels
Click IDs stick in localStorage for 90 days so later pages without query params still carry the paid landing.
Credit models
On a conversion, Intently loads the visitor’s touchpoints inside the lookback window and distributes credit:
| Model | Behavior |
|---|---|
| Last touch | 100% to the final touch (default) |
| First touch | 100% to the first touch |
| Last non-direct | 100% to the last non-direct touch (skips bookmark/direct) |
| Linear | Equal split across touches |
| Linear paid | Equal split across paid ad touches only |
| U-shaped | 40% first / 40% last / 20% middle |
| Time decay | Exponential decay (7-day half-life); newer touches get more |
| First / last touch (source) | Filter to one paid channel (e.g. Meta), then first or last within that source |
Lookback windows: switch 1 day → lifetime (LTV) on the report or in settings. Credit recomputes on the stored journey, no re-ingest.
Model comparison on /attribution runs the core models on one dataset load so you can see revenue spread and whether the top channel changes.
Journey inspector: expand any conversion to see per-touch credit % under the active model, plus a credit-by-model matrix.
What the report shows
- KPI cards: conversions, revenue (primary currency), Stripe vs on-site, touchpoints, verified delivery %
- Period-over-period deltas vs the previous equal-length window
- Funnel stage board — visit → lead → demo → deal → closed-won with step rates and per-source breakdown (see below)
- Channel table with sessions, conversions, revenue, delivery proof
- Campaigns workspace — spend, ROAS, and pause / +20% with confirm on Meta, Google, Microsoft (Ad spend & ROAS)
- Pipeline vs ad spend time series on Attribution
- Recent deals with first-touch / last-touch source toggle
- Cohort experience gaps (converter vs non-converter behavior) — deeper workspace: Experience
- Pause / scale suggestions panel (same thresholds as campaign ops signals) (Ad spend & ROAS)
- Export JSON / CSV
Mixed currencies: channel totals use the primary currency (largest absolute revenue share). Others are listed but not summed into one number.
Funnel stage board
On Attribution, the funnel board maps attributed activity into pipeline stages:
| Stage | What counts |
|---|---|
| Visits | Unique sessions with an attributed touchpoint in range |
| Leads | Lead / form / signup / registration-style conversions |
| Demos | Demo, meeting, discovery, book-call-style conversions |
| Deals | CRM opportunities created in range |
| Closed won | CRM deals marked won in range |
Lead vs demo classification uses conversion type names (exact matches like lead, form_submit, plus patterns such as mql / demo / meeting). Connect CRM pipeline for Deals and Won. Step rates and per-channel rows help spot where a source drops off before revenue.
This is the Attribution stage board — not a separate custom funnel builder (that product path was retired).
Readiness
Settings → Attribution (and the readiness API) score setup items: tracking, touchpoints, conversions, destinations, delivery proof, Stripe, and ad spend. Aim for tracking + conversions before trusting ROAS.