HandL UTM Grabber / Tracker How to collect and track UTM variables via OptimizeLeads step by step

Capture UTMs in OptimizeLeads form

Add the fields you would like to capture in Optimize Press

Don't worry if you can't make them hidden right now.

Add the following code in Footer in Tracking

var vars = ["utm_campaign","utm_medium","utm_source","utm_term","utm_content","gclid","handl_original_ref","handl_ip","fbclid","_fbc","_fbp","gaclientid","user_agent"]
for (v of vars){

window.addEventListener('message', event => {
if (event.data.handl) {
	merged = event.data
	for (v of vars){
		if (merged[v] != undefined){
			console.log(v, merged[v])
			var input = document.querySelector("[placeholder='"+v+"']")
			input.setAttribute('value', input.value);

Edit the plugin file handl-utm-grabber.js:109

Inser the lines at 109

        var merged = jQuery.extend( {'handl':true}, handl_utm )
        var frames = document.getElementsByClassName("optimize-leads-frame")
        for (frame of frames){
            frame.contentWindow.postMessage(merged, '*');
    }, 100)