There is no UTM collected HandL UTM Grabber works well with cache enabled websites. In most of the cases, you do not need to any server-side adjustments. Because our plugin leverages tracking client-side. However, if you feel that the tracking is not working, please do the appropriate steps based on your setup and server configuration. WP Engine is my webhost - HandL UTM Grabber Guide UTM attribution overview This guide explains WP Engine is my webhost - HandL UTM Grabber Guide. 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. If you are on WP Engine, you need to contact WP Engine support and let them know that you want to whitelist the following QUERY ARGS & COOKIES to prevent caching. COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid //and all the custom parameters created by you QUERY ARGS utm_campaign utm_source utm_term utm_medium utm_content gclid //and all the custom queries you are capturing Usually, this process takes couple of hours to complete. Hoever, you may want to wait longer for changes to completely take effect. Still having problems? Let us know, clicking the chat bubble at the bottom right of the page. I have WP Rocket installed for HandL UTM Grabber UTM attribution overview This guide explains I have WP Rocket installed for HandL UTM Grabber. It helps you configure HandL UTM Grabber correctly so campaign attribution works reliably across WordPress and keep the marketing context needed for accurate reporting across forms, bookings, signups, and sales. **HandL UTM Grabber works well with cache enabled websites. In most of the cases, you do not need to the following adjustments. Because our plugin leverages tracking client-side. However, if you feel that the tracking is not working, please do the following steps.** Before whitelisting the following COOKIES, please make sure to remove UTM query strings from our ignore list. And then continue with the following. You can do this by installing and activating the following small plugin . If you have WP Rocket installed, you need to go to "Advanced Rules" and put the following entries under "Never Cache Cookies" section. utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid After this is implemented, make sure you start with a clean cache (incognito preferred) or hard refresh your browser and test again. It should work. Still having problems? Let us know, clicking the chat bubble at the bottom right of the page. Common Troubleshooting Tips - HandL UTM Grabber Guide UTM attribution overview This guide explains Common Troubleshooting Tips - HandL UTM Grabber Guide. 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. Check whether request is returned from cache Visit your website making sure UTMs are appended to the URL. Open up the developer console and navigate to "Network" tab and select the page request (usually at the top) and Select "Headers" in the right panel. Check the cache related headers, if your server does not have any cache you should see "Cache-Control: max-age=0, no-cache, s-maxage=10" If there is cache, you should see something like "if-modified-since" or other cache related headers. This will tell you whether caching is coming from server side (Varnish, CloudFlare) or WordPress site (such as WP Rocket, WP Super Cache etc). Your solution will vary depending on where the cache is coming from. You can whitelist the cookie paramters or/and query arguments used in HandL UTM Grabber V3 or you may have to add the page in the exclusion page altogether. I am with FlyWheel - HandL UTM Grabber Guide UTM attribution overview This guide explains I am with FlyWheel - HandL UTM Grabber Guide. 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. If you are on FlyWheel, you need to contact FlyWheel support and let them know that you want to whitelist the following QUERY ARGS & COOKIES to prevent caching. COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid //and all the custom parameters created by you QUERY ARGS utm_campaign utm_source utm_term utm_medium utm_content gclid //and all the custom queries you are capturing Usually, this process takes couple of hours to complete. Hoever, you may want to wait longer for changes to completely take effect. Still having problems? Let us know, clicking the chat bubble at the bottom right of the page. I have SiteGround (SG) installed for HandL UTM Grabber UTM attribution overview This guide explains I have SiteGround (SG) installed for HandL UTM Grabber. It helps you configure HandL UTM Grabber correctly so campaign attribution works reliably across WordPress and keep the marketing context needed for accurate reporting across forms, bookings, signups, and sales. I'm hosting with Pair - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm hosting with Pair - HandL UTM Grabber Guide. 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. I'm hosting with Pantheon - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm hosting with Pantheon - HandL UTM Grabber Guide. 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. I'm using CloudFlare (CF) - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using CloudFlare (CF) - HandL UTM Grabber Guide. 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. Make sure the caching level is set as "Standard" shown in the image below I'm using HummingBird WP plugin - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using HummingBird WP plugin - HandL UTM Grabber Guide. 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. Make sure "Cache URL queries" turned off end exclude the following COOKIES and all the custom parameters created by you. COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid //and all the custom parameters created by you Kinsta is my webhost - HandL UTM Grabber Guide UTM attribution overview This guide explains Kinsta is my webhost - HandL UTM Grabber Guide. 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. If you are on Kinsta, you need to contact Kinsta support and let them know that you want to whitelist the following QUERY ARGS & COOKIES to prevent caching. COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid HandLtestDomainName //and all the custom parameters created by you QUERY ARGS utm_campaign utm_source utm_term utm_medium utm_content gclid //and all the custom queries you are capturing Usually, this process takes couple of hours to complete. Hoever, you may want to wait longer for changes to completely take effect. Still having problems? Let us know, clicking the chat bubble at the bottom right of the page. Customer Provided Feedback "I have found that the guide you have about Kinsta and the custom cache rules where we need to ask Kinsta to implement specific rules to let Handl work, are not enough. I'm sharing with you a screenshot from the Kinsta dashboard which shows that Kinsta Edge Caching (saving HTML on Cloudflare Edge PoPs) is not compatible with custom cache rules, and thus Handl customers with Kinsta should also turn off Edge Caching. It's logical since Handl rewrites HTML based on query parameters and custom cookies and the HTML in Cloudflare edge are static and not even triggering the HandL plugin." This feedback was provided by a customer and included in our documentation as is. I use WP Super Cache - HandL UTM Grabber Guide UTM attribution overview This guide explains I use WP Super Cache - HandL UTM Grabber Guide. 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. There is known caching issues with WP Super Cache plugin. We'll update this document as we have more information. In the mean time, you can try the adding the following code in your functions.php function handl_add_wpsc_cookie_banner() { do_action( 'wpsc_add_cookie', 'utm_campaign' ); do_action( 'wpsc_add_cookie', 'utm_medium' ); do_action( 'wpsc_add_cookie', 'utm_term' ); do_action( 'wpsc_add_cookie', 'utm_content' ); do_action( 'wpsc_add_cookie', 'utm_source' ); } add_action( 'init', 'handl_add_wpsc_cookie_banner' ); I'm using W3 Total Cache - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using W3 Total Cache - HandL UTM Grabber Guide. 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. Please do the following changes in the plugin Go to Performance > Rejected cookies and copy/paste the following text in there and save utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid It should look like this. I'm on CloudFront - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm on CloudFront - HandL UTM Grabber Guide. 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. Please do the following changes in v Create a new policy in CloudFront and attach it to your distribution. You can include the following cookie exceptions utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid It should look like this. I'm using LiteSpeed caching plugin - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using LiteSpeed caching plugin - HandL UTM Grabber Guide. 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. If you are using the LiteSpeed caching plugin, you should do the following settings in your WP to effectively capture UTMs. Go to Settings Copy the list below and add it in "Do not cache cookies" field COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid //and all the custom parameters created by you Copy the list below and add it in "Do not cache query strings" field QUERY ARGS utm_campaign utm_source utm_term utm_medium utm_content gclid //and all the custom queries you are capturing That's it. You are ready to go collecting UTMs :) I've NitroPack plugin - HandL UTM Grabber Guide UTM attribution overview This guide explains I've NitroPack plugin - HandL UTM Grabber Guide. 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. 1) Ignored parameters Make sure "Include the default ignored parameters" is disabled. 2) Excluded Cookies (Now Obsolete, see Variation Cookies below instead) Add the following cookies and all the custom parameters you created in "Excluded Cookies" section. COOKIES utm_campaign, utm_source, utm_term, utm_medium, utm_content, gclid, first_utm_campaign, first_utm_source, first_utm_term, first_utm_medium, first_utm_content, handl_original_ref, handl_landing_page, handl_ip, handl_ref, handl_url, organic_source, gaclientid //and all the custom parameters created by you 2) Variation Cookies With Excluded ones (the method above), NitroPack wouldn't generate any cache for the pages containing your cookies. While with Variation cookie, a new optimization would be created based on the different cookie values. Still having problems? Let us know, clicking the chat bubble at the bottom right of the page. I'm hosted on CloudWays - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm hosted on CloudWays - HandL UTM Grabber Guide. 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. You should exclude cookies from varnish cache via the Cloudways platform. Navigate to Application Management > Application Settings > Varnish Settings. Add the following cookies in there COOKIES utm_campaign utm_source utm_term utm_medium utm_content gclid first_utm_campaign first_utm_source first_utm_term first_utm_medium first_utm_content handl_original_ref handl_landing_page handl_ip handl_ref handl_url organic_source gaclientid //and all the custom parameters created by you I'm using WP Fastest Cache - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using WP Fastest Cache - HandL UTM Grabber Guide. 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. Exclude COOKIES In order for HandL UTM Grabber to work more efficiently, you may want to whitelist some of the COOKIES our plugin uses so they are not cached. You can do so very easily following the steps Go to the settings for the WP Fastest Cache plugin Click on the “Exclude” tab. Click the "Add New Rule" button associated with "Exclude Cookies" Type the cookie name you use from Native WP Shortcodes in the text box. Click "Save". I'm using Wordfence - HandL UTM Grabber Guide UTM attribution overview This guide explains I'm using Wordfence - HandL UTM Grabber Guide. 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. Wordfence has a feature called Live Traffic that serves an extra blank pageview to every new(?) visitor to check if they are a bot or real traffic.It is reported by our clients that HandL UTM Grabber must have been picking up the wordfence pageview as the first pageview as handl_url . Proposed Solution: Turn off Live Traffic (switched from ALL to Security Only) https://www.wordfence.com/help/tools/live-traffic/#traffic-logging-mode I've WP Optimize - HandL UTM Grabber Guide UTM attribution overview This guide explains I've WP Optimize - HandL UTM Grabber Guide. 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. Add these thhree lines of code under Cookies which, if present, will prevent caching (one per line) utm_* handl_* HandLtestDomainName