Where the parameters are read from
All of them come fromwindow.location.search on the page where the tracking script resolves the referral. That has three consequences worth internalising:
- Only the query string counts. Parameters in the hash fragment (after a
#) are not read. - Only the landing page counts. Once the referral is stored, later page views do not create clicks, so UTMs picked up while browsing your site are never recorded.
- A redirect that drops the query string drops the parameters. If your landing URL bounces through a redirect that only preserves the referral code, everything else is gone by the time the script runs.
UTM parameters
The five conventional UTM parameters are read verbatim — no normalisation, no lowercasing, no trimming.Newsletter and newsletter are two different values in your reports.
Any UTM that is not on the URL is stored empty. There is no inheritance from a previous click and no fallback to a stored value.
Ad platform click IDs
When an affiliate runs paid ads to your site, the ad platform appends its own click identifier to the destination URL. Referly captures eight of them:
Note the one name that changes shape: the URL parameter is
li_fat_id, the stored field is liFatId. The other seven keep their names.
Each is stored on the click as-is. Referly does not validate them, expand them, or call back to the ad platform with them — they are there so you can reconcile a Referly click against the ad platform’s own click record when an affiliate disputes attribution, and so you can tell paid affiliate traffic apart from organic.
Affiliate networks that pass their own tracking identifier use a different parameter,
rsubID, which behaves differently: it persists in the visitor’s browser and is passed back out on conversion. That one has its own page — see external click IDs.How ad click IDs change the referrer classification
Every click gets areferrerType, and the ad click IDs feed directly into it. The classification runs in this order:
1
No referrer at all
If
document.referrer is empty, the type is direct and nothing else is checked.2
Any ad click ID present
If any of the eight parameters above is on the URL, the type is
paid. This beats the domain lists below — a Google Ads click that referred from google.com classifies as paid, not search.3
Domain matching
Otherwise the referrer hostname is matched against the search, social, and email lists, falling through to
unknown.Adding parameters to a referral link
Parameters go on the affiliate’s referral URL alongside the referral code. Order does not matter, and the referral code does not have to come first:ref by default. Everything else is passed through untouched.
Three rules to pass on to affiliates:
- URL-encode values that contain spaces or symbols.
utm_campaign=black fridaybreaks the URL;utm_campaign=black-fridayorblack%20fridaydoes not. - Keep values consistent. Reports group on the exact string, so
utm_source=YouTubeandutm_source=youtubeshow up as two separate rows. - Ad click IDs are appended by the ad platform automatically. Affiliates should never type a
gclidby hand — they only need auto-tagging switched on at the platform.
Repeat clicks and parameter values
When a visitor arrives on a referral URL for a code that is already stored in their browser, Referly records a second click and re-reads every parameter from that new URL. So the newsletter click and the paid social click that follow it are two rows with two different sets of UTMs, both credited to the same affiliate. What this does not do is rewrite history. The first click keeps its own parameters, and the conversion is stamped onto whichever click ID was in the browser when the conversion was reported. Read attribution for how that resolves.Using the parameters in reporting
All five UTM fields are indexed and available as breakdown dimensions in the performance analytics in your dashboard — pickutm_source, utm_medium, utm_campaign, utm_term, or utm_content and get clicks, referrals, revenue, and commission grouped by value. Rows with an empty value for the chosen dimension are excluded rather than bucketed into “none”, so the breakdown total can be lower than your overall click count.
The eight ad click IDs are stored and queryable but are not offered as breakdown dimensions — an identifier that is unique per click has no useful grouping. Use them for reconciliation against the ad platform, not for aggregate reporting.
Related
Click data
Every field stored on a click, and when a click is recorded at all.
External click IDs
The
rsubID parameter for affiliate networks, and how it is passed back.URL parameters
How the referral code itself is read, and configuring your URL modifier.
Attribution
Which click gets credit when a visitor arrives more than once.