Attribution Tracker

Free, or Pro from $4 a month

Records where every visitor came from and attaches it to the form they submit, so a lead in your inbox arrives with its campaign on it.

Free version coming to WordPress.org. Pro adds what is listed below, billed once a year at $48 for one site.

The Status screen: what is running, what this browser has stored, and every token a form can use.

The problem

A form submission tells you somebody is interested. It does not tell you which advert, email or search brought them, and by the time they convert the referrer is long gone. Most teams answer this by pasting hidden fields into every form by hand and hoping nobody edits them.

How this handles it

Capture happens once, in the visitor's own browser, and is kept in a first party cookie until they convert. First touch and last touch are stored separately, because the campaign that found somebody is rarely the one they bought through. Nothing about a visitor is ever printed into the page, so a full page cache or an edge CDN can serve the same HTML to everybody and the attribution still works.

Every screen, as it actually looks

Screenshots from a running install, not mockups. These are the same images on the WordPress.org listing.

The Status screen: what is running, what this browser has stored, and every token a form can use.
The Status screen: what is running, what this browser has stored, and every token a form can use.
Adding the tracking fields to a Gravity Forms form. They fill themselves, and editors never touch them.
Adding the tracking fields to a Gravity Forms form. They fill themselves, and editors never touch them.
Settings: how long attribution is kept, the cookie name, and any extra parameters you want tracked.
Settings: how long attribution is kept, the cookie name, and any extra parameters you want tracked.
The debug panel on the front end, showing exactly what was captured and how it was classified.
The debug panel on the front end, showing exactly what was captured and how it was classified.

What actually arrives

One lead, submitted for real through each supported form plugin by somebody who arrived on a Google advert and came back three weeks later through an email. These are the results, unedited. Note that the first touch and the last touch are different, which is the whole point.

A Gravity Forms entry. The plugin manages the hidden fields, so the campaign is stored on the entry itself and is there forever, next to the message.
A Gravity Forms entry. The plugin manages the hidden fields, so the campaign is stored on the entry itself and is there forever, next to the message.
The Contact Form 7 notification. Contact Form 7 stores nothing, so the values go into the mail through the plugin's own mail tags: the lead arrives with its campaign on it.
The Contact Form 7 notification. Contact Form 7 stores nothing, so the values go into the mail through the plugin's own mail tags: the lead arrives with its campaign on it.
The WPForms notification, filled by smart tags. WPForms Lite keeps no entries at all, which makes the email the only place a submission exists.
The WPForms notification, filled by smart tags. WPForms Lite keeps no entries at all, which makes the email the only place a submission exists.
And before any form is involved: the debug panel, showing what this browser is holding and how the plugin classified it.
And before any form is involved: the debug panel, showing what this browser is holding and how the plugin classified it.

Free against Pro

Free

  • First and last touch stored separately
  • UTMs, ad click IDs, referrer, landing page and channel
  • Six form plugins: Gravity Forms, Contact Form 7, WPForms, Fluent Forms, Ninja Forms and Elementor Pro
  • Attribution recorded on every WooCommerce order
  • 90 day retention and one custom parameter
  • A debug panel that shows what was captured and why

Pro, $4 a month

Billed once a year at $48 for one production site. There is no monthly plan; the figure above is the year divided by twelve.

  • Revenue and orders by source, medium, campaign or channel
  • First touch against last touch, side by side
  • Form conversions reported alongside revenue
  • Attribution column and filters on the WooCommerce orders list
  • CSV export of exactly the report on screen
  • 730 day retention and up to 100 custom parameters

A sixth of the price of HandL UTM Grabber for one site

Less than a third at every licence size. The free version does the tracking, the classification and the form fields, and it is cache safe: nothing about a visitor is printed into the page, so a full page cache serves everybody the same HTML and the attribution still arrives.

LicenceGhizo LabsHandL UTM GrabberTheir terms
One site$48 a year$299 a yeartheir Starter, one site
Ten sites$108 a year$1,199 a yeartheir Premium, the smallest plan that covers ten
Twenty five sites$180 a year$1,199 a yeartheir Premium, twenty five sites

Their prices as published on HandL UTM Grabber, checked 27 September 2026. Prices change; ours are on this page.

Thirty days to change your mind

No questions asked, and the free version is there so you can check before paying anything at all.

Six form plugins, done properly

Gravity Forms, Contact Form 7, WPForms, Fluent Forms, Ninja Forms and Elementor Pro. Each one uses the token syntax its own users already know, and each has a server side fallback so a submission cannot arrive empty.

Nothing leaves your site

No telemetry and no external requests. Your visitor data stays in your database, which is one fewer thing to explain in a privacy review.

The other two plugins

Each one solves a different problem, and none of them needs the others.

Dynamic Content

Shows a different phone number, WhatsApp number or call to action depending on how the visitor arrived, so you can tell which campaign generated the call.

Responsive Focal Point

Lets an editor pick the part of an image that must never be cropped out, and set a different point per breakpoint when one is not enough.

Try the free version first

It is finished, and on its way to WordPress.org. If it does what you need, stop there. If you want more, the licence is $4 a month.