Skip to main content

All steps are complete, but events still aren't coming through

"I already added the code in the head but it's still not fetching in Signals Gateway."

In almost all cases, this comes down to something in how the script was installed on your site — not an issue on our end. Setup and installation of the tracking script are fully managed by you; our team isn't able to access or troubleshoot the technical implementation on your website. The steps below will help you find and fix the issue yourself.

Run a quick diagnostic check

Open your browser's developer console (F12 → Console tab) on your website and paste this:

(function(){var c=typeof cbq==='function',f=typeof fbq==='function',x=typeof xbq==='function',h=null,id=null;document.querySelectorAll('script').forEach(function(s){var t=s.textContent||'';var m=t.match(/cbq\(['"]setHost['"],\s*'"['"]\)/);if(m)h=m[1];var p=t.match(/cbq\(['"]init['"],\s*'"['"]\)/);if(p)id=p[1]});if(!h&&c&&cbq.queue){cbq.queue.forEach(function(a){if(a[0]==='setHost')h=a[1];if(a[0]==='init'&&!id)id=a[1]})}console.log('%cSignals Gateway Check','font-weight:bold;font-size:14px');console.log('cbq loaded:',c?'YES':'NO');console.log('fbq loaded:',f?'YES':'NO');console.log('wrapper active (xbq):',x?'YES':'NO');console.log('tracking host:',h||'NOT FOUND');console.log('pixel id:',id||'NOT FOUND');if(h){var sdk=performance.getEntriesByType('resource').some(function(r){return r.name.indexOf(h+'/sdk/')===0});console.log('events.js loaded:',sdk?'YES':'NO');var img=new Image();img.onload=img.onerror=function(){console.log('tracking domain:','REACHABLE')};setTimeout(function(){if(!img.complete)console.log('tracking domain:','TIMEOUT - check DNS')},5000);img.src=h+'/favicon.ico?t='+Date.now()}else{console.log('tracking domain:','CANNOT CHECK (no host found)')}})();


What the results mean

Output

What it means

What to do

cbq loaded: NO

The script isn't actually on the page, even if you added it

Re-check where the code was placed — see Where the code needs to go below

tracking host: NOT FOUND

Script is present but incomplete, or blocked by a cookie consent tool

Try again after accepting cookies on the page

events.js loaded: NO

The script didn't load from your tracking domain

tracking domain: TIMEOUT

Your tracking domain isn't resolving

Same as above — this is a DNS issue

Everything shows YES / REACHABLE

The script is working correctly

See Still not resolved below

Where the code needs to go

The most common reason code "added to the head" still doesn't fire:

  • It needs to sit directly in your site's <head> HTML — not inside a tag manager container, a CMS "custom code" block that only loads conditionally, or a section/template partial that doesn't render on every page.

  • If you're using a tag manager (like Google Tag Manager), the tag needs to fire on All Pages with high priority, and shouldn't be gated behind a cookie consent trigger.

To confirm it actually rendered: right-click your site → View Page Source (not Inspect) and search for cbq('setHost'. If you don't see it there, the code isn't loading — even if it's saved in your CMS or theme editor.

Check for a script conflict

A common cause when the code is installed correctly but events still don't come through is a conflict with another script on your site — most often a duplicate Meta pixel.

In your page source (right-click → View Page Source), search for:

  • A second instance of connect.facebook.net/en_US/fbevents.js outside our snippet — this means you have a duplicate Meta pixel installed

  • More than one instance of cbq( — there should only be one

In the browser console, check:

  • typeof xbq — should return 'function'. If it returns 'undefined', something re-declared the Meta pixel after our snippet loaded

  • Any red errors mentioning cbq, fbq, or your tracking domain

What you see

Likely cause

What to do

xbq is undefined, but fbq exists

A duplicate, standalone Meta pixel is overriding our script

Remove the standalone Meta pixel — our snippet already includes Meta pixel functionality

cbq loaded: NO, but the snippet is in your page source

A cookie consent tool (OneTrust, Cookiebot, etc.) is blocking it until visitors accept cookies

Test again after accepting cookies

events.js loaded: NO, but your tracking domain is reachable

An ad blocker or privacy extension may be blocking the request

This only affects those individual visitors — there's no workaround

Console error: cbq is not a function

The snippet loaded asynchronously via a tag manager and fired before it was ready

Make sure it fires on All Pages with high priority, not gated behind a consent trigger

Still not resolved

Since setup is self-managed, we're not able to debug your site's code directly — but if you've worked through the steps above and are still stuck, contact support with:

  • Your tracking domain settings

  • A screenshot of the diagnostic output from the console script above

We'll do our best to point you in the right direction based on what the diagnostic shows.

Did this answer your question?