# How to track lead source in Quill Forms

Match every Quill Forms response with the marketing source and journey behind it. Conversational forms with the attribution context they were missing.

Source: https://sourceloop.ai/help/track-lead-source-in-quill-forms/
Updated: 2026-05-28

---

Quill Forms is the WordPress form plugin built explicitly as a Typeform alternative, conversational layouts, generous free tier, polished feel, and a growing add-on library. The thing missing from the equation, like every form plugin, is marketing attribution. SourceLoop adds that without changing any of your Quill setup.

Three steps, under ten minutes, attribution flowing on every submission afterwards.

## What SourceLoop captures from Quill Forms

For each Quill Forms submission, SourceLoop attaches:

- **Acquisition channel** of the visitor (organic, paid, referral, social, direct)
- **Full UTM parameter set** from the landing URL
- **Pages visited** in order before the submission
- **Time on site** before the form fill
- **Number of distinct sessions** preceding conversion
- **Email + name** captured from the Quill Forms fields
- **First-touch landing page** of the visitor's history
- **Source attributed to the converting session**
- **Device, country, browser**

## Before you start

You'll need:

- A **SourceLoop workspace** ([free trial](https://app.sourceloop.ai/sign-up))
- **WordPress admin** access (or another way to add markup to `<head>`)
- A **Quill Forms** form embedded on a published WordPress page

## Step 1: Install SourceLoop's snippet on your WordPress site

From SourceLoop, click **Setup -> Tracking code** in the sidebar and copy the snippet.

![SourceLoop Setup page with the tracking code snippet ready to copy](/help/screenshots/sourceloop-tracking-code-script.png)

Add it to the `<head>` of your WordPress site:

- A header-injection plugin (Insert Headers and Footers, WPCode)
- Your active theme's `header.php` immediately before `</head>`
- A "Custom Code" panel inside any SEO plugin
- Google Tag Manager firing on All Pages

Make sure the snippet loads on every page where a Quill Form might appear.

## Step 2: Confirm the form is on a published page

Quill Forms doesn't require any per-form switch to integrate with SourceLoop. Once the snippet loads, every Quill Form on every published page that includes the snippet becomes attributable.

A quick verification pass:

- The Quill Forms form is on a **published** page or post
- The form **collects an email**, used by SourceLoop as the lead key
- Aggressive script-defer rules aren't reshuffling SourceLoop after the form's submit handler

> **Submissions on draft / private pages can't be attributed**
> Draft posts, scheduled future posts, and private pages typically don't expose the SourceLoop snippet to anonymous visitors. Submissions on those pages reach Quill Forms but show up without a marketing source in SourceLoop.

## Step 3: Run a verification submission

Open your Quill Forms page in an **incognito tab** with `?utm_source=test&utm_medium=verify&utm_campaign=quill-check` glued to the URL. Submit a real entry using an email you control.

Within seconds, the 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 Quill Forms submissions in SourceLoop

### Contacts Hub

Every Quill Forms response becomes a contact row at [app.sourceloop.ai/contacts](https://app.sourceloop.ai/contacts). Drill into a contact to see the visitor's full pre-submission browsing path.

![SourceLoop Contacts Hub showing a Quill Forms submission with the lead's full journey](/help/screenshots/sourceloop-lead-journey-demo.webp)

### Attribution dashboard

For the channel rollup, [app.sourceloop.ai/dashboards/traffic](https://app.sourceloop.ai/dashboards/traffic) groups Quill Forms submissions by source, medium, and campaign so you can quickly see what's converting.

![SourceLoop attribution dashboard with Quill Forms submissions grouped by source and campaign](/help/screenshots/sourceloop-attribution-dashboard.webp)

### Funnel reports

Build a funnel at [app.sourceloop.ai/funnels](https://app.sourceloop.ai/funnels/) with "Quill Forms submission" as the final step. Slice by source, content, or device to find the highest-converting routes.

![SourceLoop funnel report ending in a Quill Forms submission conversion step](/help/screenshots/sourceloop-funnel.png)

For paid campaigns, mirror Quill Forms submissions back to **Google Ads, Meta, and LinkedIn as offline conversions** so the auction algorithms train on real form fills. [Connect your Google Ads account](/help/connect-google-ads/) walks through the setup.

## Frequently Asked Questions

### Does this work with the free Quill Forms plugin?

Yes. Tracking runs in the browser and works the same on Quill Forms' free version as on any Pro tier.

### Quill Forms is built as a Typeform-style conversational experience. Does that affect tracking?

No. Whichever Quill Forms layout the visitor sees, classic or one-question-at-a-time, the final submission event carries the attribution data exactly the same.

### I use Quill Forms with payment fields (Stripe). Are paid submissions tracked?

Yes. Once the payment completes and Quill Forms records the submission, SourceLoop attaches attribution to the lead. The payment flow itself runs inside Quill Forms, untouched.

### My Quill Forms send data to Mailchimp, ActiveCampaign, and Slack. Does any of that change?

No. Your existing Quill Forms integrations continue to fire as configured. SourceLoop captures attribution independently on its end without disrupting any outbound flow.

### Can SourceLoop track multi-step Quill Forms with conditional logic?

Yes. The number of steps and the logic between them runs entirely inside Quill Forms. SourceLoop only attaches attribution to the final submission, so all flow variants get captured the same way.
