Stripe UTM Tracking Integration

Track campaign attribution through Stripe payments with HandL UTM Grabber, capturing UTM parameters, click IDs, referrer data, and landing pages on purchases.

How to Track UTMs in Payment Link

UTM attribution overview

This guide explains How to Track UTMs in Payment Link with HandL UTM Grabber. It helps you capture campaign attribution on checkouts, orders, quote requests, and ecommerce conversions and keep the marketing context needed for accurate reporting across forms, bookings, signups, and sales.

As explained in the Stripe documentation on URL parameters, you can append UTM parameters to your buy link. When a customer completes the payment, these parameters will be included in the thank you page URL.

If you are using HandL UTM Grabber v3 and your customers are already returning to the same domain, you do not need to perform this setup. The UTM data will already be available in cookies. You can pass this data to your CRM, database, etc., by triggering a webhook on the thank you page (e.g., via Zapier or Make).

Track UTMs via Checkout Success Page Webhook

UTM attribution overview

This walkthrough covers sending full UTM Grabber data from Stripe 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 Stripe guide.

When a webhook makes sense

Native fields in Stripe 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.