Form tracking
UTM tracking and lead source attribution for online forms
SourceLoop attaches UTM parameters, click IDs (GCLID, fbclid, li_fat_id), referrer, landing page, and the visitor's full journey to every form submission. Works with HubSpot, Webflow, Typeform, WordPress, and 30+ form builders.
Free 7-day trial. No credit card required.
Used by 750+ marketing teams, agencies, and SaaS companies
Attribution stack
Everything behind every form submission, captured automatically
Most form trackers stop at the form. SourceLoop captures the source on the first visit and keeps it tied to the lead all the way through to your CRM.
Every submission carries the source that drove it.
Traffic, conversions, and revenue, broken down by channel.
See every touch that led to the form.
Lands in your CRM, attribution mapped.
How it works
Three steps to track form submissions with full attribution
One script tag, no per-form setup, no hidden UTM fields.
-
<script src="https://cdn.sourceloop.ai/sl.js" defer></script>
01Install the snippet
Drop one script tag in your <head> or install via Google Tag Manager. Five minutes, no engineer required.
- 02
We listen to every form
SourceLoop detects submissions on any form, captures the visitor's full journey, and packages it with the lead data.
- A
shivam@acme.com
- Source Google / CPC
- Campaign search_ad
- Channel Paid Search
03Lead lands in your CRM tagged
Within seconds, the lead appears in your CRM with attribution fields populated, ready for routing, scoring, and reporting.
Form tracking by platform
Track form submissions across HubSpot, WordPress, Webflow, and 25+ more
Same snippet, every form, every platform.
-
Webflow
-
Typeform
-
HubSpot Forms
-
Jotform
-
Tally
-
Paperform
-
Formstack
-
Wufoo
-
Google Forms
-
Gravity Forms
-
WPForms
-
Ninja Forms
-
Contact Form 7
-
Formidable Forms
-
Fluent Forms
-
Forminator
-
Mailchimp
-
Kit (ConvertKit)
-
Klaviyo
-
ActiveCampaign
-
Unbounce
-
Leadpages
-
Cognito Forms
-
Squarespace
-
Wix Forms
-
Shopify
-
Marketo
-
Pardot
-
ClickFunnels
-
Carrd
FAQ
UTM and lead source tracking, FAQ
How do I track UTM parameters in HubSpot, Webflow, or WordPress forms?
Install the SourceLoop snippet once on your site. We read UTM parameters from the URL the visitor first lands on, store them in a first-party cookie, and attach them to every form submission, regardless of form builder. No hidden form fields, no per-form configuration. HubSpot, Webflow, Gravity Forms, WPForms, Contact Form 7, Fluent Forms, and Formidable all work the same way.
Why do my UTMs disappear after a form submission?
Most forms only see the URL of the page the form sits on, not the URL the visitor originally landed on. By the time a lead fills out a long-form, scrolls through pricing, and comes back to convert, the UTM is gone. SourceLoop captures it on the first page view and persists it across the whole session, so it's still attached when the form fires.
Can I track GCLID and Google Ads click data on my forms?
Yes. We capture GCLID, Wbraid, and Gbraid (Google's enhanced conversion identifiers) on landing, persist them through the session, and attach them to the lead. You can then sync those identifiers to Google Ads as offline conversions for smart-bidding optimization.
How is this different from a hidden UTM field on the form?
Hidden fields break the moment a lead bounces between pages, opens the form in a new tab, or comes back from email. They also miss first-touch attribution if you only fill them on the form page. SourceLoop captures the full journey from the first visit and persists it, so first-touch, last-touch, and multi-touch attribution all work even when the form sits five clicks deep.
Do I need to change my existing forms?
No. SourceLoop listens to form submissions on the page automatically. We support hidden iframes, fetch, XHR, postMessage, and shadow-DOM submissions, so it works whether your form builder posts to its own endpoint, your CRM, or a Zapier webhook.
Does it slow down my site or affect Core Web Vitals?
The snippet is under 8 KB gzipped, loads asynchronously, and runs after page load. Zero impact on LCP, FID, INP, or CLS.
Does this work with consent banners and GDPR?
Yes. We integrate with OneTrust, Cookiebot, Iubenda, Osano, and custom CMPs. When a visitor declines analytics or marketing cookies, we collect only minimal aggregated data in line with GDPR and the ePrivacy Directive. All cookies and local storage are first-party on your domain.