Glossary

Tracking identifiers

How a click becomes a record you can act on: UTM parameters, click IDs and first-party cookies. What each one identifies, and where each one breaks.

A tracking identifier is the value that tells your system that a visit and a later lead belong to the same click. Three families do this job, and they are not interchangeable: they differ in who creates them, what they can prove, and when they disappear.

UTM parametersClick IDFirst-party cookie
Who creates itwhoever builds the ad linkyour system, when the click arrivesyour server, in the response that renders the page
Unique per clickno, a shared labelyes, one value per clickyes, it carries the click ID
Where it livesthe URLthe URL, then a server-side recordthe browser, on your own domain
What it can provethe source someone declaredwhich ad, which page, which secondthe same, and it survives the click
When it breaksa typo, a redirect, a reused labela redirect chain, an expired windownothing, as long as it is set server-side

UTM parameters: a label, not a key

UTM parameters are query-string values added to a destination URL to describe where a visit came from.

?utm_source=facebook&utm_medium=paid&utm_campaign=spring&utm_content=video_a

They are good for reporting by source and campaign in any analytics tool, with no integration, and for human-readable context when you debug a single visit.

They break in four predictable ways:

FailureConsequence
Typo in a parameterthe visit is attributed to a source that does not exist
Parameter dropped by a redirectthe visit becomes direct traffic
Same utm_content reused for two adsthe two creatives merge, invisibly
Renaming a campaign mid-flighthistory splits into two campaigns

None of these are detectable after the fact, because a UTM has no uniqueness: two visits with identical parameters are indistinguishable. It is a label shared by thousands of visits, with no server-side record behind it.

Click ID: one value per click

A click ID is a unique value generated when a user clicks an ad, stored so that a conversion occurring later can be tied back to that specific click.

Ad click → track.example.com/lp?cid=8f3a... → Set-Cookie: cid=8f3a... (first-party, HttpOnly)
Form submit → server reads the cookie → lead attributed to click 8f3a...

A click ID is only useful if it is still available when the conversion happens. That requires three things:

  1. It must be written server-side in the same response that renders the page. A cookie written by JavaScript is the one browsers now restrict.
  2. It must have a defined lifetime, the attribution window, so that a lead arriving after the window is recorded as unattributed instead of guessed.
  3. It must not depend on a redirect chain. A hop from a tracking domain to a landing page on another domain loses a share of identifiers, concentrated among users with the strictest browser settings.

A useful click ID resolves to more than “some click”: the ad it came from (ad_id), the campaign, the landing page variant, and a timestamp.

First-party: where the identifier lives

First-party tracking sets the identifier from the same domain the user is visiting, in a response from your own server.

First-party:  landing page on track.example.com → Set-Cookie from track.example.com
Third-party:  landing page on example.com      → cookie set by analytics.other.com

The privacy changes of 2017–2021 targeted specific mechanisms, and this one was not among them:

ChangeTargetsFirst-party server cookie
Intelligent Tracking Preventioncookies written by JavaScript; third-party cookiesunaffected
App Tracking Transparencycross-app identityunaffected
Third-party cookie blockingcookies from a different domainunaffected

What these changes removed is the ability to identify the same person across sites you do not own. Measuring a visit to your own page is not that.

How the three fit together

  1. The click ID is the primary key. It is what a lead is joined to.
  2. UTMs stay as readable context: they are what a human looks at when the numbers surprise someone, and what a CRM sees without integration.
  3. The first-party cookie is the transport. It is how the click ID survives the page load without depending on JavaScript.

A stack that records only UTMs cannot answer “which creative produced this lead”. A stack that records a click ID server-side can, and the UTM becomes a convenience rather than a dependency.

  • Attribution window — how long the identifier is honoured
  • fbclid — the platform’s own identifier, and its limits
  • ad_id — the platform key a click ID resolves to
  • ITP — what broke the JavaScript cookie
  • Server-side tracking — where the event is processed

Last updated: 2026-10-21

FAQ

Are UTMs enough for creative-level attribution?+

They get you close if every ad is configured correctly by hand and no redirect interferes. They fail on both counts in practice: a typo or a lost parameter silently merges two creatives, and there is no way to detect it after the fact.

Is a click ID the same as fbclid?+

No. fbclid is Meta's own identifier, appended to the destination URL by the platform. A click ID is the identifier your tracking system generates. They are usually stored together: the click ID for your attribution, the fbclid to send back to the platform.

Is first-party tracking the same as server-side tracking?+

Not exactly. Server-side tracking describes where the event is processed; first-party describes which domain the cookie belongs to. A stack can be server-side and still third-party if the cookie is set from a domain the user is not visiting.

Ready to find out what
converts, for real?

Free to start.

Start free →