UTM tracking in Amplitude
Amplitude's browser SDK can automatically capture the five standard UTM parameters and store them as event properties and as initial and latest user properties. This supports acquisition-channel breakdowns and first-touch attribution in Amplitude charts without custom tagging beyond the link itself.
Initial vs latest UTM
Amplitude's browser SDK can be configured to capture UTM parameters automatically. It typically stores both an initial set (the first UTM values seen for the user, e.g. initial_utm_source) and a latest set (the most recent), so you can analyse either first-touch acquisition or the most recent campaign touch.
The SDK reads UTM from the page URL on load. As with any client-side capture, a redirect or privacy tool that removes the query string before the SDK runs leaves the values empty for that load.
- Standard UTMs captured as event properties
- Initial UTM user properties for first-touch attribution
- Latest UTM user properties for most-recent-touch analysis
Using UTM in charts
Group or filter Amplitude event segmentation, funnels, and retention charts by the UTM properties to compare channels. The initial UTM user properties are the right choice for attributing a conversion to the acquisition channel rather than the page where the event fired.
Keep values lowercase and consistent. Amplitude treats differing casing as distinct property values, which fragments a single channel across rows in a chart.
How it appears in analytics and logs
A populated utm_source on an Amplitude event means the SDK read the parameter from the page URL on that load. The initial_utm_source user property reflects the first tagged arrival; empty values mean the landing URL carried no UTM or it was stripped before capture.
Diagnostic use case
Segment Amplitude charts and funnels by acquisition channel using captured UTM properties, and attribute downstream events to the channel that first acquired the user.
What WebmasterID can help detect
WebmasterID records the campaign arrival server-side, so you can reconcile Amplitude's first-touch UTM properties against the tagged hits that actually reached your origin and detect links that lost their UTM before the SDK ran.
Common mistakes
- Confusing initial UTM (first touch) with latest UTM (most recent touch).
- Expecting capture after a redirect removed the query string.
- Casing drift splitting one channel across several property values.
- Putting personal data into UTM values that reach Amplitude exports.
Privacy and accuracy notes
Amplitude stores UTM values as plain properties describing the campaign. Avoid personal data in UTM parameters, since the values appear in event properties, user properties, and exports.
Related pages
- UTM tracking in Mixpanel
Mixpanel's JavaScript SDK automatically captures the five standard UTM parameters from the page URL and stores them as properties on tracked events, and can persist the first values as user profile properties. This makes UTM the basis for acquisition-channel breakdowns in Mixpanel without extra instrumentation, provided you understand when the values are read and how they persist.
- UTM tracking in PostHog
PostHog's web SDK automatically captures the five standard UTM parameters and stores them on events, and records initial UTM values as person properties so you can attribute later events to the acquisition channel. This supports channel breakdowns in PostHog insights without custom tagging beyond the link.
- UTM limits for multi-touch attribution
UTM tags are excellent at labelling a click, but a customer journey has many touches and UTM only stamps the ones that pass through tagged links. This page is an honest account of the last-non-direct caveat and the limits of building multi-touch attribution on UTM alone.
- Attribution analytics
Compare first-touch and latest-touch campaign attribution.
Sources and verification notes
- Amplitude Docs — Browser SDK marketing attributionBrowser SDK captures UTM as initial and latest user properties.
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.