Skip to main content
Ad platform
Setup about 3 minutes

Taboola server-to-server conversions with SignalBridge

Taboola attributes a conversion through the tblci click ID it adds to your landing page URL. SignalBridge captures that ID, keeps it for the visitor, and when the visitor converts it sends the conversion to Taboola from its servers with a server-to-server postback. The conversion is credited to the right campaign even if the Taboola pixel was blocked or the visitor moved across domains.

This page covers the postback SignalBridge sends, the event names you need to mirror in Taboola Realize, how to connect and test it, and the limits.

By Kiril Kostov, Founder of SignalBridge. Checked against the product on .

Delivery
Taboola S2S action postback (HTTP GET) to the Taboola actions handler
Attribution key
The tblci click ID from the landing page URL, sent as click-id
Event names
Fixed names such as make_purchase and lead. Create matching events in Realize
Values sent
Revenue, currency and order ID when the event has them. Quantity is not sent
Connect with
Backstage API Client ID, Client Secret and Account ID
Consent
Events are held back when marketing consent is denied or required and not granted
Retries
Rate limits and server errors are retried with backoff, up to 6 hours between attempts
Ad spend
Synced through the Backstage API on the Pro plan and above

How it works

  1. Taboola adds the click ID

    Taboola appends tblci to every ad URL by default, so no campaign change is needed unless your system needs a custom parameter. The SignalBridge script reads tblci from the landing URL and stores it for the visitor.

  2. The visitor converts

    The conversion is captured by the SignalBridge script or the Shopify app, together with revenue, currency and order ID. It does not matter whether the visitor converts in the same session or later.

  3. SignalBridge checks the event

    Consent is checked first. A conversion without a stored tblci is not sent to Taboola, because there is nothing to attribute it to. The click ID must also look like a real Taboola ID: a placeholder, a value with spaces or one shorter than 50 characters is rejected.

  4. The postback is sent

    SignalBridge builds the S2S URL with click-id, name, revenue, currency and orderid, leaving out any value the event does not have, and sends it to Taboola. Taboola answers 204 when it accepts the conversion.

  5. Failures are handled

    Timeouts, rate limits and server errors are retried with growing delays, honouring Taboola's Retry-After. A rejected click ID or malformed request is recorded as unrecoverable and does not block later conversions.

Event names SignalBridge sends

The name in the postback must match the Event Name you set on the conversion in Realize, character for character. Create one event-based conversion per row you want to track.

SignalBridge eventTaboola event nameTypical use
PageViewpage_viewLanding or advertorial page views
ViewContentview_contentProduct detail views
AddToCartadd_to_cartItems added to the cart
InitiateCheckoutinitiate_checkoutCheckout started. Taboola's preset is start_checkout, so edit the Event Name in Realize to match
AddPaymentInfoadd_payment_infoPayment details entered
Purchasemake_purchaseCompleted order, with revenue and order ID
Lead, CompleteRegistration, SignUp, SubmitApplication, Contact, Subscribe, StartTrial, Schedulelead, complete_registration, sign_up, submit_application, contact, subscribe, start_trial, scheduleForm and signup conversions. Lead event routing can send them all as one event
Search, AddToWishlist, Downloadsearch, add_to_wishlist, downloadOther standard events
Custom eventsThe event name in lower caseCreate a matching event in Realize

What the postback carries

Taboola's S2S endpoint takes these parameters. SignalBridge sends the ones the event has.

ParameterRequiredValue
click-idYesThe captured tblci value
nameYesThe event name from the table above, exactly as defined in Realize
revenueNoOrder total or lead value, as a finite number
currencyNoThree-letter currency code
quantityNoAccepted by Taboola but not sent by SignalBridge
orderidNoYour order ID, which helps Taboola recognise repeats

Requirements

  • A Taboola Realize account with campaigns running to your site.
  • Backstage API credentials: a Client ID and Client Secret, plus your Account ID. They are in your Taboola account settings or available from your account manager.
  • An event-based conversion in Realize for each event you want SignalBridge to report.
  • The SignalBridge script on the landing pages and the rest of the funnel, or the Shopify app.

Set up Taboola by Realize

  1. Create the conversions in Realize

    In Realize open Tracking, then Conversions, then New Conversion, and choose to create conversions using code. Set the type to event, and set the Event Name to the SignalBridge name, for example make_purchase. The Event Name is what counts, not the Conversion Name.

  2. Connect Taboola in SignalBridge

    In your pixel's settings find Taboola and choose Connect Taboola. Enter the Client ID, Client Secret and Account ID, and save. SignalBridge validates them against the Backstage API before the integration turns on.

  3. Install SignalBridge on your pages

    Add the SignalBridge snippet to your landing pages and the pages after them, or install the Shopify app. For advertorial funnels that move visitors to another domain, install it on both sides so tblci is captured on arrival.

  4. Choose the lead event if needed

    For lead campaigns, use Lead event routing to send form conversions under the one Taboola event you track.

Verify it works

  1. Use Taboola's test tool

    In Realize open Tracking, then Conversions, then Test Events, and expand Server Events. Choose a campaign and generate the QR code or test link. Open it, walk through your funnel to trigger the conversion, and watch the Events Received panel.

  2. Check the event in SignalBridge

    The event stream should show the conversion with a tblci value and Taboola marked as delivered.

  3. Allow for reporting delay

    Taboola reports conversions after a delay. Compare the totals after a day rather than minute by minute.

Troubleshooting

  • Taboola does not show the conversion

    Compare the event name in SignalBridge's event details with the Event Name in Realize. They must match exactly, including case. Also confirm you set the Event Name, not only the Conversion Name.

  • No postback is sent for a conversion

    The visitor had no stored tblci. Check that Taboola's ad URL reaches your page with tblci in it and that nothing strips it, such as a redirect, before SignalBridge loads.

  • Token acquisition failed when connecting

    Re-enter the Client ID, Client Secret and Account ID. Request fresh Backstage credentials from your Taboola account manager if they keep failing.

  • Checkout starts are missing

    Taboola's preset event for this step is start_checkout, while SignalBridge sends initiate_checkout. Edit the Event Name in Realize to initiate_checkout.

  • Conversions rejected as unrecoverable

    Taboola rejected the click ID or the request. Retrying will not change that. Check how the tblci value is captured and that it has not been truncated.

  • Revenue looks wrong

    Send a currency with every value, and set the store's default currency in the pixel settings. Taboola converts revenue to your account currency.

What to know before you rely on it

Where this integration stops, so the numbers you see are read correctly.

  • Only conversions that began on a Taboola click can be sent. Without a stored tblci there is nothing to report.
  • The event names are fixed. SignalBridge does not rename them per conversion, so you adapt Realize to them.
  • Visitors who have not agreed to marketing tracking are not sent to Taboola.
  • Taboola decides attribution and optimisation. SignalBridge supplies cleaner and more complete inputs.
  • If the SignalBridge script is blocked or never loads, the click ID is not captured.

Questions about this integration

What is the tblci click ID?

It is a long case-sensitive string Taboola appends to your destination URL when someone clicks an ad. Taboola uses it to link a later conversion back to the campaign, creative and placement.

Do I need authentication for the postback itself?

The S2S endpoint attributes by click ID and event name, with no token. SignalBridge still asks for Backstage credentials, because they let it verify the account and pull campaign and spend data.

Can I keep the Taboola pixel?

Yes. Taboola documents running the pixel and S2S together as its best practice. For the same click, an event that arrives by both routes is counted once and the S2S copy is kept. That holds only when the order ID, revenue and currency match, and quantity too if your pixel sends one, because Taboola does not deduplicate events whose values differ.

Why must the event name match exactly?

Taboola only records an S2S conversion if the name in the postback equals the Event Name defined in Realize, and names are case-sensitive.

What happens if Taboola is down?

Timeouts, rate limits and 5xx errors are retried with growing delays, from about 30 seconds up to 6 hours. The conversion is stored durably first, so it is not lost while Taboola recovers.

Does consent affect Taboola?

Yes. If a visitor denies or revokes marketing consent, or consent is required and has not been granted, SignalBridge does not send the conversion to Taboola.

Can SignalBridge sync Taboola ad spend?

On the Pro plan and above, SignalBridge reads daily spend through the Backstage API so cost per acquisition and return on ad spend use real figures.

Try Taboola by Realize with SignalBridge

Every plan starts with a 14-day free trial. Connect it, send a test conversion and see the result before you decide.