Pulse and counting rules
The Pulse is the one-page answer to "how is this project doing?": a story sentence, four numbers
with their change against the previous period, the sources that brought the leads, open recommendations
and the newest leads. The same numbers appear in the cockpit, the weekly report and in Claude
(pulse_get).
GET /v1/projects/{project}/pulse?preset=7d&cmp=previous&model=last_clickScopes: analytics:read; cost fields and recommendations need ads:read (otherwise null), the
newest leads need leads:summary.
The four numbers
| Number | Definition |
|---|---|
| Leads | Leads created in the period (project time zone), without spam and test leads. Leads entered by hand (WhatsApp, phone) count too. |
| Ad spend | Spend of all connected ad accounts in the period, in the project currency. Accounts a client connected through a connection link count only after you confirm them. |
| Cost per lead | Ad spend ÷ all leads. The detail line shows "ads only: …" (spend ÷ leads from paid sources). A source row divides its own spend by the leads credited to it under the active counting rule. |
| Qualified | Every lead not marked disqualified – the same number as qualifiedLeads (and sources[].qualified = sources[].qualifiedLeads); the quiz grade is only a hint. Without lead qualification the fourth tile shows interested visitors instead. |
Every number carries change (relative, 0.27 = +27 %) and isNew when the comparison period has
no data. Interested means a relevance score at or above the project's engagedPlus threshold
(default 30) – the same threshold as in the behaviour pages.
The Pulse needs a minimum before it recommends anything: 3 leads or 300 € spend in the period.
Below that state is too_little and the response says how much is missing.
Counting rules
Most inquiries come on the second or third visit. The counting rule decides which visit – and so which campaign – gets the lead. It applies everywhere: Pulse, leads, sources, cockpit, recommendations and explanations.
Rule (model) | Who gets the lead |
|---|---|
last_click – Last click (dashboard default) | The last visit before the inquiry that did not come in directly (bookmark, typed URL). Without one, the inquiry visit. Same as "last non-direct click" in other tools. |
first_touch – First contact | The first visit of the journey. |
linear – Evenly | Every visit of the journey an equal share. |
position – Start & finish | 40 % first, 40 % last, 20 % shared by the visits in between. |
time_decay – Recent weighted | Visits closer to the inquiry weigh more. |
session – Inquiry visit only | Only the visit in which the inquiry was sent. API default (existing clients keep their numbers). |
last_touch (the very last visit, direct or not) stays available in the API and MCP; the dashboard
does not offer it. The dashboard always sends model explicitly, so set it in your own API calls too.
Visit metrics (visits, interested visitors, cost per visit) are always per visit and do not change with the counting rule.
When few leads have more than one visit (fewer than 5 such leads, or under 10 % of all leads), the split rules give the same numbers as Last click; the dashboard greys them out but still computes a shared link that uses one.
How sure is an assignment
Each lead's origin carries a confidence:
| Confidence | Meaning |
|---|---|
click_id | The visit carried the platform's click id (gclid, fbclid, li_fat_id, ttclid). |
consent_vid | Same browser after consent (stored visitor id). |
identity | Same person by hashed e-mail or phone across devices. |
manual | Linked by hand. |
utm | Only campaign parameters, no click id. |
daily_hash | Same visitor on the same day by the cookieless daily hash. |
referrer | Only the referring site. |
none | Origin unknown. |
The Pulse sums this as attributionQuality ("12 of 14 sure"): click id, consented visitor id,
identity and manual links count as sure.
Why did a number change
GET /v1/projects/{project}/explain?metric=cpl (MCP explain_metric) answers with the formula
("4,210 € ad spend ÷ 14 leads = 301 € per lead"), the two largest drivers of the change (more spend
vs. fewer leads, split by campaign) and how sure the underlying assignments are. Without a previous
period there are no drivers.
Quality of your visitors
pulse.get (MCP pulse_get) also returns quality, the card „Qualität Deiner Besucher“: seriously
interested visits, of which hot, and „Leads pro 100 ernsthaft Interessierte“ with rolling 7-day
sparklines and the source switch „Alle | Werbung | Ohne Werbung“. It appears in stages as data
grows; no number repeats the KPI cards above. Details: Traffic quality.
Visits per day, the change sentence and the chips for search and same-day returns come from
GET …/traffic/summary and the change engine (Visitors and traffic).
Related
- Visitors and traffic
- Recommendations and alerts
- Journeys – how visits are linked into one journey
- Attribution and channels