Cross-domain tracking checklist
When a visitor moves between domains the browser treats it as a new session with new storage, so the conversion gets credited to a referral from your own site rather than to the campaign that paid for it. Cross-domain linking passes the identifiers in the URL and fixes the ordinary case. The checks that matter are whether the parameter survives every redirect in the real path, and whether referral exclusions are set — and when the second domain can't be tagged at all, the answer is server-side, not more configuration.
Free30 minutesNo obligation
Cross-domain · what breaks
Where teams get this wrong — Cross-domain
- 01
Configuring linking and never testing the hop
Redirects strip parameters, and the config screen won't tell you.
- 02
Forgetting referral exclusions
Your own domain keeps appearing as a traffic source.
- 03
Assuming a hosted checkout can be tagged
Many allow nothing. That changes the whole approach.
Cross-domain · the fix
What a correct implementation looks like — Cross-domain
Both domains configured, both directions
In every relevant container and property.
The linker parameter verified on arrival
In the URL when the second domain loads, not just on departure.
Referral exclusions set
So your own domain stops counting as a source.
A server-side path where tagging isn't possible
From the order record instead.
Cross-domain · architecture
The checks and why each matters — Cross-domain
Cross-domain failures are almost always one of these five, and the fifth changes the approach entirely.
- 1
Domain configuration
Both domains listed, both directions. Missing one direction is a common half-configuration.
- 2
Linker parameter survival
Present in the URL when the second domain loads. This is the check that actually proves it works.
- 3
Redirect chains
Every hop is a chance to lose the parameter. Test your real path, not a clean one.
- 4
Referral exclusions
Without them your own domain appears as a traffic source and campaign credit is lost.
- 5
Untaggable second domains
Hosted checkouts and booking engines often allow nothing. Then the conversion has to come from the order record server-side.
- 6
POST-based transitions
A form POST carries no URL parameters at all. Linking cannot help; the identifier must travel another way.
Cross-domain · diagnose
Common mistakes and how to validate each — Cross-domain
Ordered by how often we find them. Each one has a specific check rather than a general instruction to be careful.
- 01
Configuration checked instead of the hop
Walk the journey and read the URL on arrival. That's the only proof.
- 02
A redirect in the middle
Follow every hop in the real path. Shorteners and SSO bounces strip query strings routinely.
- 03
Referral exclusions missing
Check your top traffic sources. Your own domain appearing there is the signature.
- 04
Only one direction configured
Test the return journey too, if visitors come back.
- 05
Assuming the second domain can be tagged
Ask before designing. If it can't, the whole approach changes.
Cross-domain · prove
How to prove your implementation is right — Cross-domain
Against your own records and a live payload, not against a preview screen.
Source of truth
your backend order records, with the original click ID attached
- Linker parameter confirmed present on arrival at the second domain.
- Every redirect in the real path tested.
- Self-referral traffic reduced to near zero.
- A live conversion walked end to end across both domains.
- Checked on a live conversion, not in preview mode.
- Reconciled over a fully closed window, matched per record.
- Re-checked 30 days later.
Cross-domain · free audit
What we check in the free audit
- Configuration checked instead of the hop
- A redirect in the middle
- Referral exclusions missing
- Only one direction configured
- Assuming the second domain can be tagged
Checked against
your backend order records, with the original click ID attached
Free30 minutesNo obligation
Cross-domain · when not to buy
What this reference deliberately leaves out — Cross-domain
Stated openly, because a reference that's silent about its own gaps is the dangerous kind.
- Each analytics platform implements cross-domain linking slightly differently. The principle is universal; the configuration isn't.
- iframe embedding is a related but distinct problem with different solutions, covered separately.
- Mobile app to web transitions have their own mechanisms and aren't covered here.
- Vendor documentation is the authority, not this page. Where the two disagree, the vendor is right and we'd like to know so we can correct it.
- Parameter names and behaviour change. Anything here is accurate as we last verified it; verify against the current documentation before you rely on it for a build.
Cross-domain · what we deliver
The checklist — Cross-domain
Both domains listed in cross-domain configuration
And in both directions.
The linker parameter present on arrival
Read the URL on the second domain.
Every redirect in the real path tested
Shorteners and login bounces strip parameters.
Referral exclusions configured
On every relevant property.
Self-referral share measured
The clearest single indicator that this is broken.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
Repairs and verifies your existing browser-side setup against this reference, on a live conversion.
- Implementation checked against the spec
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Money events sent from your own records through a first-party container on your subdomain, built to this specification.
- First-party server container on your own subdomain
- Events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, documented to this standard.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring so the next break surfaces in days
FAQ
Cross-domain questions, answered
Because the second domain saw a visitor arrive with no prior session. That's the textbook symptom of a broken cross-domain hop.
Then the conversion comes from the order record server-side, with the click ID captured before the visitor left your site.
They can, easily. Shorteners and login bounces strip query parameters, so test your real path rather than a clean one.
A POST carries no URL parameters, so linking can't help. The identifier has to travel in the form data or via the server.
Free · 30 min
Prove your domain hop keeps the session
Free30 minutesNo obligation
