归因
/
5 min read
UTM tagging and campaign attribution
How to tag your links with UTM parameters so Zalify can credit orders to the right campaigns — and how to fix campaigns that show up as direct.
Ana's attribution is UTM-based: it credits orders and revenue to channels and campaigns by reading the UTM parameters on the links visitors click to reach your site. If a visitor arrives on a link tagged utm_source=facebook&utm_campaign=spring-sale, their session — and any revenue from it — is attributed to that source and campaign. If they arrive on an untagged link, Ana has nothing to read, and the visit falls back to what the browser reveals on its own — often nothing, which is what "direct" means. Attribution is therefore only as good as your link tagging. For the conceptual overview of how Zalify assigns credit across channels, see Understand attribution in Zalify.
Attribution needs two things working: the Zalify pixel capturing sessions (Installing the Zalify pixel) and order data flowing in to supply the revenue (Connecting Shopify).
How Ana attributes an order
- A visitor clicks a link to your site. The pixel records the UTM parameters on the landing URL, along with the referrer.
- The visitor browses, possibly across several sessions.
- When they place an order, the order syncs to Zalify and Ana credits it to the campaign and channel from the captured UTMs.
Tag your links with UTMs
UTM parameters are five standard query parameters you append to any URL you share:
| Parameter | What it identifies | Example |
|---|---|---|
utm_source | Where the click comes from | facebook, google, newsletter |
utm_medium | The type of channel | paid-social, cpc, email |
utm_campaign | The specific campaign | spring-sale-2026 |
utm_term | Keyword (optional, mainly paid search) | running-shoes |
utm_content | Variant of the ad or link (optional) | video-ad-a |
A fully tagged URL looks like:
https://yourstore.com/collections/sale?utm_source=facebook&utm_medium=paid-social&utm_campaign=spring-sale-2026
To tag a campaign:
- Decide the
source,medium, andcampaignvalues before launch — and write them down. - Build the tagged URL (any UTM builder works, or append the parameters by hand).
- Use the tagged URL as the destination everywhere that campaign runs — ad platform, email links, bio links.
- Click the link yourself and confirm the parameters survive to your landing page's address bar.
Three rules keep the data clean:
- Be consistent.
facebook,Facebook, andfbare three different sources in your reports. Pick one convention (lowercase, hyphens) and stick to it. - Tag everything you pay for or send. Emails sent from Zalify, ads, sponsorships, affiliate links.
- Never tag internal links between pages of your own site — that overwrites the visitor's real arrival data mid-visit.
Campaign names and the Campaigns feature
The utm_campaign values you use are how campaigns appear in attribution reporting, and they connect your links to the Campaigns feature — naming campaigns there and using matching UTM values in your links is what ties spend, creative, and revenue together in one view. Agree on a campaign naming pattern (for example channel-theme-date) before you launch, not after the data is already split across variants.
Why is my campaign showing as direct?
"Direct" is not a channel — it's the absence of information. Work through these causes in order:
- The links aren't tagged. The most common cause by far. Check the actual destination URL in your ad platform or email tool — not the link you meant to use.
- A redirect strips the parameters. Link shorteners,
http → httpsredirects,/page → /page/rewrites, and domain redirects can all drop query strings. Click your ad or link and watch the final URL in the browser: if the UTMs are gone on arrival, the pixel never saw them. - The ad platform uses auto-tagging instead of UTMs. Google Ads' auto-tagging adds a
gclid, not UTM parameters. Add explicit UTMs to your final URLs as well. - The visitor came back later by typing your URL or from a bookmark. Their buying session genuinely has no UTMs. Whether the earlier tagged visit still gets credit depends on the attribution window.
- The visitor switched devices. They clicked the ad on their phone but bought on their laptop — the buying browser never carried the UTMs.
- Dark social. Links shared in chat apps and some email clients arrive with no referrer; without UTMs they're indistinguishable from direct. Tag any link you distribute, even "organic" shares you post yourself.
- The pixel isn't on the landing page. If the tagged landing page doesn't load the pixel, the UTMs are never captured even though the visit shows up once the visitor navigates deeper. See the Pixel not tracking checklist.
A quick end-to-end test: click your own tagged ad or email link, complete a test order, then check that the order shows under the right campaign.
What's next
- Understand attribution in Zalify — the conceptual overview of visit journeys and channel credit.
- See attributed revenue in context in the Analytics Overview.
- Watch individual tagged visitors arrive in the Visitors feed.