Skip to main content
Data direction: This is a destination — Upstack sends event and conversion data out to this platform via server-side APIs.

What it does

Taboola is a native advertising platform that displays sponsored content recommendations on publisher websites. Upstack Signal forwards storefront events — page views, product views, add-to-carts, and purchases — directly to Taboola’s Server-to-Server (S2S) Conversion API for campaign optimization. Server-side delivery means conversions reach Taboola even when the browser-side pixel is blocked by ad blockers, ITP, or cookie restrictions. Each event carries the click identifier (tblci) captured from ad clicks so Taboola can match the conversion back to the ad interaction that drove it.
Important limitation: Taboola does NOT support enhanced matching via hashed email, phone, or other PII. Attribution relies solely on the click ID (tblci) captured from ad clicks. Events without a click ID cannot be attributed and are skipped.

How it works

Upstack Signal runs as a dual-tracking layer alongside the Taboola browser pixel. The Upstack Pixel captures events in the browser and forwards each one to Upstack’s edge infrastructure, where it is enriched with the Taboola click ID from cookie storage and sent to Taboola’s S2S API as a server-side event. S2S priority for deduplication: When both the browser pixel and S2S report the same event, Taboola keeps the S2S event and deduplicates the pixel event. This makes server-side preferred for accurate attribution. API behavior: Taboola’s S2S API returns HTTP 204 No Content for all requests, including invalid ones. There is no validation feedback from the API — use Taboola Backstage Test Events for verification. Authentication: Unlike Meta, TikTok, and Google APIs, Taboola’s S2S API is unauthenticated. Events are attributed via the click ID only.

Setup

Prerequisites

  • A Taboola Backstage account with active campaigns
  • The Upstack Pixel installed on your storefront
  • Campaign URLs configured with the tblci click ID parameter

Required credentials

FieldDescriptionWhere to find
Account IDYour numeric Taboola Account IDBackstage → Account dropdown → Tracking

Configuration steps

  1. In Upstack, navigate to SettingsDestinations
  2. Click Add Destination and select Taboola
  3. Enter your Account ID (numeric only)
  4. Toggle Enable Server-Side Tracking to send events via the S2S API
  5. Click Save

Configure click ID tracking

For Taboola to attribute conversions, your campaign URLs must include the click ID parameter:
  1. In Taboola Backstage, go to Campaigns → select your campaign
  2. Add ?tblci={click_id} to your destination URL (or &tblci={click_id} if URL already has parameters)
  3. The Upstack Pixel will automatically capture and store the tblci value
The tblci parameter is case-sensitive. Ensure your URL uses lowercase tblci.

Event mapping

Upstack maps storefront events to Taboola events automatically:
Upstack eventTaboola eventKey parametersNotes
Purchasemake_purchaserevenue, currency, orderidPrimary conversion event
InitiateCheckoutstart_checkoutrevenue, currencyCheckout initiation
AddToCartadd_to_cartquantityCart additions
ViewContentview_contentProduct page views
PageViewpage_viewPage load
LeadleadrevenueLead form submissions
SignUpcomplete_registrationAccount registration
CompleteRegistrationcomplete_registrationAccount registration
SearchsearchSite search
SubscribesubscribeNewsletter/subscription signup
Every event includes the Taboola click ID (tblci) when available. Events without a click ID are skipped because Taboola cannot attribute them to any campaign.
Event names are case-sensitive. Taboola event names must exactly match the conversion name configured in Taboola Realize. Upstack sends lowercase snake_case names (e.g., make_purchase, add_to_cart).

Field mapping

Upstack fieldTaboola fieldTypeNotes
context.properties.click.tblciclick-idstringRequired. Click ID from ad click
data.valuerevenuenumberConversion value (decimal, no commas)
data.currencycurrencystringISO 4217 (USD, EUR, GBP) — case-sensitive
data.orderId or data.transactionIdorderidstringTransaction ID for deduplication
Aggregated from itemsquantitynumberTotal quantity across all items
Event timestamptimestampnumberMilliseconds since Unix epoch

FAQ

Open Taboola Backstage, navigate to TrackingTest Events, and check that events are appearing. Note that Taboola’s API returns 204 for all requests (even invalid ones), so the Test Events view is the only way to confirm events are being processed correctly.
Taboola does not support enhanced matching with hashed PII (email, phone, IP, user-agent). Attribution relies solely on the click ID (tblci). If a visitor clears cookies, uses a different device, or the click ID expires, the conversion cannot be attributed. This is a platform limitation, not an Upstack issue.
No. When both the browser pixel and S2S report the same event, Taboola keeps the S2S event and deduplicates the pixel event. Including an orderid on purchase events further improves deduplication.
Yes — event names are case-sensitive and must exactly match the conversion name configured in Taboola Realize. Upstack sends standard lowercase snake_case names like make_purchase, add_to_cart, etc.
Events without a Taboola click ID are skipped and not sent to Taboola. This is intentional — Taboola cannot attribute conversions without a click ID, so sending them would inflate your event volume without improving attribution. Ensure your campaign URLs include tblci={click_id} so the Upstack Pixel can capture click IDs.
Taboola’s S2S API returns HTTP 204 No Content for all requests, including those with invalid data. This is by design. Use Taboola Backstage Test Events to verify events are being processed correctly.

Troubleshooting

If events aren’t appearing after confirmed store traffic:Steps to fix:
  1. Verify your campaign URL includes tblci={click_id}
  2. Confirm the Upstack destination shows Active (green)
  3. Check that the Account ID matches your Backstage account
  4. Test with a real ad click — test traffic without tblci in the URL won’t generate events
  5. Check Taboola Backstage → Tracking → Test Events for any incoming events
The Account ID must be a numeric string (digits only).Steps to fix:
  1. Go to Taboola Backstage → Account dropdown → Tracking
  2. Copy the numeric Account ID (no spaces, no extra characters)
  3. Update the destination in Upstack with the correct ID
This is expected due to Taboola’s click-ID-only attribution model.To maximize attribution:
  • Ensure all campaigns include tblci={click_id} in the URL
  • Verify the Upstack Pixel is loading on all pages to capture click IDs
  • Check that first-party cookies are not being blocked by browser settings
  • Note that cross-device and returning-visitor conversions will not be attributed
Remember that Taboola’s API returns 204 for all requests, even invalid ones.Steps to fix:
  1. Verify event names match exactly what’s configured in Taboola Realize (case-sensitive)
  2. Ensure the click-id parameter is being sent correctly (hyphenated, not underscored)
  3. Check that revenue values don’t contain commas
  4. Verify currency codes are uppercase ISO 4217 (USD, not usd)
For additional troubleshooting beyond Taboola-specific issues, see Troubleshooting: Events Not Reaching Destination.

Conversion API forwarding

How Upstack Signal forwards events to ad platforms via server-to-server APIs.

Identity resolution

How Upstack matches anonymous visitors to known customers for higher match rates.

Outbrain destination

Set up Outbrain’s native advertising API — similar click-ID-only attribution model.

Events not reaching destination

End-to-end diagnostic guide when events aren’t arriving at any destination.