Wix UTM tracking: what Wix Forms can hold, and the route that does
Wix lets you add the TraceLead tag to every page, but neither Wix Forms nor a form in an Embed code element can receive the first campaign. This page says plainly why, and shows the route that does carry the campaign, click id and landing page into an enquiry: a contact page on your own subdomain.
No card needed. No lead caps on any plan.
- Wix: Documented pattern, not covered by an automated test
- How we test
Added by TraceLead's hidden fields. The name and email stay in your form.
- Channel
- Paid search
- Source / medium
- google / cpc
- Campaign
- brand-uk
- Click ID
- gclid
Wix Forms and UTM parameters: the limit
TraceLead fills hidden inputs that sit on your own page. Wix Forms are not built from such inputs, Wix's own code layer cannot reach TraceLead, and Embed code runs somewhere else entirely.
We say so rather than ship a workaround we cannot test on every release. The Wix entry in our ledger is a guide, not a tested setup.
- Wix Forms render as Wix components, not plain inputs your page code can fill.
-
Velo page code runs apart from the page's scripts, so it cannot call
tracelead(). - An Embed code element runs in a frame on Wix's own domain, which never sees the address your visitor landed on and is not one of your allowed domains.
- The TraceLead tag can still go in the site's Custom code, where it records the first touch on your domain and counts sessions by channel after consent.
- An enquiry page on your own subdomain (for example go.example.com, built with a tool whose forms render on the page) reads that first touch and fills its hidden fields.
How to set up UTM tracking on a Wix site
A documented setup in four steps. It relies on the browser sharing a cookie between your domain and its subdomain, so check it with a test entry before you rely on it.
The Wix and Squarespace guide-
Add the tag in Custom code
In Settings → Custom code → Add custom code, paste the TraceLead script tag and your consent call, apply it to all pages and place it in the Head. Custom code needs a paid plan with a connected domain.
-
Allow your domain and its subdomains
In TraceLead, add the domain the Wix site is published on to your site's allowed domains and tick Also allow subdomains, so the enquiry page on go.example.com is allowed too.
-
Link to it from Wix and test
Point the Wix site's contact buttons at the subdomain page. Then open the Wix site with
?utm_source=test&utm_medium=cpc, accept cookies, follow the link, send a test entry and check that the values arrived.
Wix lead source fields on your enquiry page
Add a hidden field per value you want on the subdomain form. They carry the first visit to the Wix site, not the visit to the contact page.
Only attribution values are written in: the channel, campaign names, click ids and landing path. Without consent the fields stay empty and the form still submits.
| Hidden field | Holds | Example |
|---|---|---|
| tl_channel | The channel the first visit came from | paid_search |
| tl_source | Where it came from | |
| tl_medium | How it came | cpc |
| tl_utm_campaign | The campaign name from your UTM tags | brand-uk |
| tl_gclid | Google Ads click id, for offline conversion import | Cj0KCQjw… |
| tl_landing_page | The first page seen, sensitive parameters removed | /pricing? |
| tl_first_touch_at | When the first visit happened | 2026-10-05T09:14:02Z |
Attribution without personal data. No names, emails, form values, IP addresses or user agents. Ever.
No privacy workarounds. Nothing before consent, no fingerprinting, no ad-blocker bypass, no cross-site identity.
Made in the UK. GBP pricing, UK consent rules in mind, and a person who answers email.
Questions, answered
Anything else? Email us and a person replies.
Can Wix Forms take UTM parameters?
Not from TraceLead. Wix Forms render as Wix components rather than plain inputs that page code can fill, so a first touch kept from an earlier page cannot be written into them.
Can I add a hidden field to a Wix form with Velo?
Velo page code runs apart from the page's scripts, so it cannot call tracelead() to read the stored first touch. A Velo field can hold a value, but TraceLead has no way to hand it one.
Can I put a Typeform, Jotform or HubSpot form in a Wix Embed code element?
You can, but the first campaign will not reach it. Wix runs Embed code in a frame on its own domain: that frame never sees the address your visitor landed on, and it is not one of your allowed domains, so the snippet inside it has nothing to hand over.
Where do I paste the TraceLead tag on Wix?
Settings → Custom code → Add custom code. Paste the tag and your consent call, apply it to all pages and place it in the Head. Custom code needs a paid Wix plan with a connected domain.
What does the tag do on a Wix site without a fillable form?
After consent it records the first touch on your domain and counts sessions by channel and campaign on your TraceLead dashboard, so you can see where traffic comes from even before enquiries carry their source.
Why does the enquiry page on a subdomain see the Wix visit?
TraceLead keeps the first touch in a first-party cookie on your registrable domain, which is shared with its subdomains when the browser allows. A visitor who lands on example.com from an ad and enquires on go.example.com arrives with that ad. Check it with a test entry: some browsers limit cookie sharing.
Does TraceLead read what visitors type into the form?
No. TraceLead never reads form answers and never stores names, emails or IP addresses. Only the attribution values are written into the form, and nothing is stored before consent.
Get the source into your Wix enquiries.
Add the tag in Custom code, then take enquiries on a page TraceLead can fill. The guide has every step.
No card needed. Cancel any time.
Wix → Settings → Custom code → Add custom code
TraceLead tag + consent call, all pages, Head
go.example.com/contact (Webflow, Unbounce, WordPress, HTML):
TraceLead tag
<input type="hidden" name="tl_channel">
<input type="hidden" name="tl_utm_campaign">
<input type="hidden" name="tl_gclid">