What Taboola traffic looks like
Taboola runs two workloads that look similar on the wire: the publisher recommendation widget and the advertiser conversion pixel.
- Endpoint pattern
- Widget loader from
cdn.taboola.com(typicallylibtrc/<publisher-id>/loader.js) talking totrc.taboola.comto fetch and log recommendations; the advertiser pixel reuses the same loader but reports conversions and page views throughtrc.taboola.comandtrc-events.taboola.com;nr.taboola.comhandles user-sync and notifications;api.taboola.comserves the JSON recommendation API on publisher pages - Transport
- Script load plus beacon requests: widget logging and conversion reporting share the
trchosts - Data layer object
_tfa.push({ notify: 'event', name: 'page_view', id: ... })drives the pixel.idis the Taboola account ID,nameispage_viewor a custom conversion name likeleadorpurchase- Key parameters
- event name in
enorname· account ID in the URL path orid· page URL on each beacon - Cookies
t_gidcarries Taboola's user identity and shows up on every beacon, useful when tracing whether a user is recognized across pages
Debugging Taboola with Event Watcher
- Matches all of these hosts and names each request as Taboola with its ad-tech category badge.
- No dedicated Taboola parser. You work from the raw request view: parsed query and body parameters, cookies set and sent (including
t_gid), and the consent verdict per event. - Script Tree shows whether the loader came from the site's own code, GTM, or another third-party script.
- Grouped view by Endpoint separates
trc.taboola.comwidget logging fromtrc-events.taboola.comconversion traffic.
Taboola and consent
Marketing consentEvent Watcher checks Taboola against marketing consent. The publisher trap: sites treat the widget as "content" and load it unconditionally, so every trc.taboola.com request lands pre-consent. It is still a marketing platform setting a cross-site ID, so the extension flags it.
On the advertiser side the pixel is usually behind a GTM marketing trigger: deny marketing, reload, confirm no trc-events beacons fire. Widget traffic is a common source of pre-consent findings in a full pixel audit.
Common debugging scenarios
- Conversions not matching in Taboola Ads. Find the conversion beacon and check the event
nameagainst the conversion rule configured in Taboola. A typo'd custom event name silently reports zero. - Widget fires before consent. Filter to Taboola with the consent filter on
only violations; iftrc.taboola.comrequests carry the pre-consent badge, the loader is outside the CMP's control. - Duplicate
page_viewevents. Grouped by Event Name shows whether two scripts push_tfaevents; Script Tree identifies both initiators. - Is the user being ID'd? Inspect the Cookies section on any Taboola event for
t_gidand whether it was sent, set, or both. - Publisher and advertiser tags on the same page. Group by Endpoint to keep widget logging separate from conversion beacons before drawing conclusions.