Skip to content
SourceLoop
Web form tracking

How to track lead source in HTML Forms

Wire up source attribution for every HTML Forms entry so each submission carries the campaign, channel, and visitor journey that produced it.

On this page
  1. What SourceLoop captures from HTML Forms
  2. Before you start
  3. Step 1: Drop SourceLoop’s snippet into WordPress
  4. Step 2: Confirm the form is on a tracked page
  5. Step 3: Run a verification submission
  6. Where to see HTML Forms submissions in SourceLoop
  7. Contacts Hub
  8. Attribution dashboard
  9. Funnel reports

HTML Forms is the no-frills WordPress plugin for developers who’d rather write their own HTML than wrestle with a visual builder, free, open-source, lightweight, and famously fast. What it doesn’t do (and doesn’t claim to) is tell you which marketing campaign produced each submission. SourceLoop adds that piece without rewriting any of your HTML.

Three steps, around five minutes total, attribution flowing on every submission afterwards.

What SourceLoop captures from HTML Forms

Each HTML Forms submission lands in SourceLoop with this context:

  • The visitor’s acquisition channel (organic, paid, referral, social, direct)
  • UTM parameters parsed from the landing URL
  • Pages visited in chronological order before the submission
  • Time on site ahead of the form fill
  • Number of distinct sessions before the lead converted
  • Email + name extracted from the form fields
  • First-touch landing page the visitor first arrived on
  • Source attributed to the converting session
  • Device, country, browser

Before you start

You’ll need:

  • A SourceLoop workspace (free trial)
  • WordPress admin access (or another way to add markup to <head>)
  • An HTML Forms form active on a published WordPress page

Step 1: Drop SourceLoop’s snippet into WordPress

Inside SourceLoop, head to Setup -> Tracking code in the sidebar and copy the snippet.

SourceLoop Setup page with the tracking code snippet ready to copy

Add it to your WordPress <head>. The typical paths:

  • A standalone header plugin (Insert Headers and Footers, WPCode)
  • Your active theme’s header.php just before </head>
  • Tag manager firing on All Pages
  • For developer-built themes, the wp_head hook is the right place

Whichever path, the snippet must run on every page that hosts an HTML Forms form.

Step 2: Confirm the form is on a tracked page

HTML Forms doesn’t require any per-form configuration to play nicely with SourceLoop. Once the snippet loads, every HTML Form on every page that includes the snippet is attributable.

Quick sanity pass:

  • The form is on a published page or post
  • The form includes an email field (SourceLoop uses email to identify the lead)
  • Aggressive script-defer rules aren’t reshuffling SourceLoop after your form’s submit handler runs

Step 3: Run a verification submission

Open your form’s page in an incognito tab, append ?utm_source=test&utm_medium=verify&utm_campaign=htmlforms-check to the URL, and submit a test entry with an email you control.

Within seconds, the new lead should appear at the top of the Contacts Hub in SourceLoop with the three test UTM values pinned to the record.

Where to see HTML Forms submissions in SourceLoop

Contacts Hub

Every HTML Forms submission becomes a contact row at app.sourceloop.ai/contacts. Drill into a contact for the visitor’s complete pre-submission journey.

SourceLoop Contacts Hub showing an HTML Forms submission with the lead's full journey

Attribution dashboard

For the broader read, app.sourceloop.ai/dashboards/traffic groups HTML Forms submissions by source, medium, and campaign so you can see what’s converting at a glance.

SourceLoop attribution dashboard with HTML Forms submissions grouped by source and campaign

Funnel reports

In app.sourceloop.ai/funnels, configure a funnel ending in “HTML Forms submission”. Cut by source, landing page, or device to find the highest-converting paths from first visit to form fill.

SourceLoop funnel report ending in an HTML Forms submission conversion step

If paid acquisition is in your mix, forward HTML Forms submissions to Google Ads, Meta, and LinkedIn as offline conversions so the bidding algorithms train on real lead generation, not vanity clicks. Connect your Google Ads account walks through the setup.

Frequently asked questions

  1. HTML Forms is a free open-source plugin. Does that affect SourceLoop compatibility?

    No. SourceLoop tracks submissions in the browser, independent of how the form plugin is licensed or distributed. The free plugin works exactly the same as any commercial plugin.

  2. I built my form with raw HTML inside HTML Forms. Will it still get tracked?

    Yes. That's exactly the kind of form the plugin is built for, and SourceLoop attaches attribution to the submission regardless of how custom the HTML is, as long as the form posts back to the page on your site.

  3. My HTML Form submits to Mailchimp via the plugin's integration. Does the Mailchimp subscriber still get the source data?

    SourceLoop creates an attribution-rich contact record on its own side, independent of Mailchimp. If you want Mailchimp itself to receive UTM data, add hidden form fields for the UTM values and map them to Mailchimp merge fields, alongside (not instead of) SourceLoop.

  4. Can I track HTML Forms submissions inside a WordPress page builder (Gutenberg, Beaver, Bricks)?

    Yes. The page builder you use to place the form's shortcode is irrelevant. As long as the SourceLoop snippet loads in `<head>` on the page, the submission gets attributed.

  5. Does this work if my form posts via AJAX vs full page reload?

    Yes. Both submission paths are captured the same way.

Track every conversion to its true source

Capture and send full attribution data from every signup, lead, booking, and sale to your CRM and ad platforms, so you know exactly what's driving revenue.

Without SourceLoop

Untagged

Kayden Floyd

kayden@abc.com

  • SourceUnknown
  • MediumUnknown
  • CampaignUnknown
  • Landing pageUnknown
Journey
No touchpoints captured

With SourceLoop

Auto-tagged

Kayden Floyd

kayden@abc.com · Acme Co.

  • Channel Paid Social
  • CampaignFree_demo
  • Landing page/pricing
Journey
Synced to HubSpot Google Ads Meta