Skip to content
TraceLead

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
What your enquiry page receives Sample data

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
Arrived from

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
  1. 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.

  2. 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.

  3. Build the enquiry page on a subdomain

    Publish the contact page with a tool whose forms render on the page, on a subdomain of the same domain: Webflow, Unbounce, Leadpages, WordPress or a plain HTML page. Put the same TraceLead tag on it and add hidden fields named tl_ plus the field.

  4. 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
tl_channel The channel the first visit came from
tl_source Where it came from
tl_medium How it came
tl_utm_campaign The campaign name from your UTM tags
tl_gclid Google Ads click id, for offline conversion import
tl_landing_page The first page seen, sensitive parameters removed
tl_first_touch_at When the first visit happened

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.

The whole install v1.4.0
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">