Mailigen UTM Tracking Integration

Send WordPress UTM attribution from HandL UTM Grabber into Mailigen, including source, medium, campaign, content, term, click IDs, and referrer data.

Mailgen Form Embed UTM Tracking Integration

UTM attribution overview

This guide explains Mailgen Form Embed UTM Tracking Integration with HandL UTM Grabber. It helps you capture UTM source, medium, campaign, term, content, click IDs, referrer, and landing page data and keep the marketing context needed for accurate reporting across forms, bookings, signups, and sales.

Create the subscribe (opt-in) form on Mailgen

Select form fields and enter the custom parameters you'd like to track. You can find the list of parameters you can track here Native WP Shortcodes.

Copy HTML embed code and paste it into a text file or documents

Because we'll edit the custom fields (see the next section)

Wrap around each custom fields using our wrappers

For example:

Replace

<div class="c2">
	<input type="text" class="text" name="merge[3]" accept="text" value="">
</div>

To

<div class="c2">
	[utm_campaign_i]<input type="text" class="text" name="merge[3]" accept="text" value="%s" class="utm_campaign">[/utm_campaign_i]
</div>

See the list of wrappers for each custom parameters you created here INPUT FIELD WRAPPER.

If you integrated correctly, you are ready to collect UTMs

Send Mailigen UTMs via Zapier or Webhook

UTM attribution overview

This walkthrough covers sending full UTM Grabber data from Mailigen to Zapier, Make, or your own webhook. Handy when you need gclid, fbclid, first-touch fields, or custom params alongside the lead or order.

For the primary setup, see the main Mailigen guide.

When a webhook makes sense

Native fields in Mailigen often stop at basic UTMs. A webhook lets you push everything UTM Grabber stores without trimming values or losing click IDs.

Thank-you page script

Paste this on your confirmation page. Swap in your Zapier or Make hook URL.

<script>
var qvars = {};
window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m, key, value) {
    qvars[key] = decodeURIComponent(value.replace(/\+/g, ' '));
});
qvars = Object.assign({}, (typeof handl_utm !== 'undefined' ? handl_utm : {}), qvars);
setTimeout(function() {
    var data = new URLSearchParams(qvars).toString();
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.open('GET', 'https://hooks.zapier.com/hooks/catch/YOUR_ID/YOUR_KEY/?' + data, true);
    xmlHttp.send(null);
}, 1000);
</script>

Full pattern explained in Triggering Zapier on Thank you Page.

Quick Zapier / Make checklist

  1. Create a Catch Hook trigger and copy the URL
  2. Run a test conversion with UTMs in the landing URL
  3. Confirm gclid, utm_source, and email (if present) show up in the payload
  4. Map fields into your CRM or spreadsheet

Parameter reference: Native WP Shortcodes.

Make users: see Make Integromat integration.