3rd party pixel rule firing in launch but not seen in network call. | Community
Skip to main content
Level 5
May 25, 2023
Solved

3rd party pixel rule firing in launch but not seen in network call.

  • May 25, 2023
  • 1 reply
  • 1674 views

Quantcast pixel rule firing in the launch but not seen in network call. This code used to work when the website worked on page load but doesn't work in direct call rule.

 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Hemang35

 

Based on your code snippet, there are a few potential reasons why the Quantcast pixel might not be firing.

  1. Vendor Permission: The first condition checks whether "Quantcast" is an allowed vendor. If this condition is not met, the code inside the if statement won't run. Make sure that "Quantcast" is indeed an allowed vendor.

  2. Page Conditions: Your code has conditions for the page not being an "Order Confirmation Page" and the path not being "/store/signup/complete". If either of these conditions is true, the pixel will not fire. Make sure you're testing on a page that satisfies these conditions.

  3. User ID Variable: Your code tries to capture a User ID. If this value is not available at the time the rule fires, it may affect the functionality of the Quantcast pixel.

  4. Quantcast Library: The if-else block relies on the window._qevents object. If the Quantcast library hasn't loaded by the time this rule fires, the pixel won't fire. This could be especially relevant if you switched from a page load rule to a direct call rule. The direct call rule might be firing before the Quantcast library has loaded.

As a first step, you could try adding more detailed logging to your rule to help identify which condition might be causing the issue. For example:

 

if(_satellite.marketingPermissions.isVendorAllowed ("Quantcast") === true){ _satellite.logger.info("Quantcast is an allowed vendor"); if(_satellite.getVar("CMS Page Name") !== "Order Confirmation Page" && location.pathname !== "/store/signup/complete"){ _satellite.logger.info("Page conditions met"); var userID = _satellite.getVar("User ID"); _satellite.logger.info("User ID is: " + userID); if(window._qevents) window._qevents.push({qacct:"xxxxxxxxx",uid:userID}); else _satellite.logger.info("Quantcast library hasn't loaded"); } else { _satellite.logger.info("Page conditions not met"); } } else { _satellite.logger.info("Quantcast is not an allowed vendor"); }

 

 This should give you more detailed information in your console log about which condition is not being met.

1 reply

Hemang35
Hemang35Accepted solution
Level 5
May 25, 2023

 

Based on your code snippet, there are a few potential reasons why the Quantcast pixel might not be firing.

  1. Vendor Permission: The first condition checks whether "Quantcast" is an allowed vendor. If this condition is not met, the code inside the if statement won't run. Make sure that "Quantcast" is indeed an allowed vendor.

  2. Page Conditions: Your code has conditions for the page not being an "Order Confirmation Page" and the path not being "/store/signup/complete". If either of these conditions is true, the pixel will not fire. Make sure you're testing on a page that satisfies these conditions.

  3. User ID Variable: Your code tries to capture a User ID. If this value is not available at the time the rule fires, it may affect the functionality of the Quantcast pixel.

  4. Quantcast Library: The if-else block relies on the window._qevents object. If the Quantcast library hasn't loaded by the time this rule fires, the pixel won't fire. This could be especially relevant if you switched from a page load rule to a direct call rule. The direct call rule might be firing before the Quantcast library has loaded.

As a first step, you could try adding more detailed logging to your rule to help identify which condition might be causing the issue. For example:

 

if(_satellite.marketingPermissions.isVendorAllowed ("Quantcast") === true){ _satellite.logger.info("Quantcast is an allowed vendor"); if(_satellite.getVar("CMS Page Name") !== "Order Confirmation Page" && location.pathname !== "/store/signup/complete"){ _satellite.logger.info("Page conditions met"); var userID = _satellite.getVar("User ID"); _satellite.logger.info("User ID is: " + userID); if(window._qevents) window._qevents.push({qacct:"xxxxxxxxx",uid:userID}); else _satellite.logger.info("Quantcast library hasn't loaded"); } else { _satellite.logger.info("Page conditions not met"); } } else { _satellite.logger.info("Quantcast is not an allowed vendor"); }

 

 This should give you more detailed information in your console log about which condition is not being met.

aagk123Author
Level 5
May 25, 2023

Thank will try this