- US device IDs in the graph
- 750M+
- Match rate on events
- 90%+
- Identity window, per customer
- Lifetime
- Most brands are live
- <20 min
How it flows
How a Loop Subscriptions event reaches Taboola. Captured on the server, resolved to a person, then sent.
01 Capture
Captured from Loop Subscriptions
Capture Loop Subscriptions events server-side (new subscriptions, renewals, swaps and cancellations), each as what it actually is.
See the Loop Subscriptions integration →
Loop SubscriptionsWhat it sends subscription_idthe Loop subscription across its whole lifeemail / phonesubscriber contactevent_typerenewal, swap, skip, pause, cancel or saveline_itemsproducts after any swaptotal / intervalcharge amount and billing cadence
02 Understand
Resolved to one person before it leaves
Every Loop Subscriptions event is matched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer rather than two strangers.
How resolution works →
Resolved before it is sent - IdentityMatched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer.
customer_typeNew or returning, resolved before send.- DeduplicationBrowser and server copies of a purchase are matched on its order ID, so it is counted once.
- Bot and fraud filteringAutomated traffic never reaches the model, because what you keep out of the training set matters as much as what goes in.
03 Activate
Delivered to Taboola
Forward resolved conversions to Taboola through its server-side API, so discovery traffic gets credited for the purchases it actually produced.
See the Taboola integration →
TaboolaWhat it receives hashed email / phoneidentity matching on arrivaltaboola_click_idcredit the click that drove itexternal_idstable person across sessionsorderiddedupe browser and server purchasesvalue / currencyvalue-based bidding
Which events reach Taboola
Each Upstack event is mapped to the Taboola event below before it is sent.
| Upstack event | Sent to Taboola as | Key data on the event |
| Page view | page_view | None beyond the click ID |
| Product view | view_content | None beyond the click ID |
| Add to cart | add_to_cart | quantity |
| Checkout | start_checkout | revenue, currency |
| Purchase | make_purchase | revenue, currency, orderid |
Taboola does not support matching on hashed email, phone or other personal data: attribution relies solely on the tblci click ID captured from ad clicks. Events without a click ID are skipped.
The catch
Swaps, pauses and saves produce state changes with no order attached.
Ad platforms receiving only orders see a paused subscriber as churned and start bidding to re-acquire someone who is still a customer.
Where to check in TaboolaDelivery you can audit
Taboola Ads › Tracking › Conversions
The conversions view shows the source of each event, so server-side arrivals are distinguishable.
What changes
What changes when Loop Subscriptions feeds Taboola. Two gains on the Taboola side, two on the Loop Subscriptions side.
Taboola
Server-side delivery
By default Upstack sends events to Taboola from its servers as well as through the Taboola tag, so an event an ad blocker or browser privacy setting stops in the browser still arrives from the server.
Taboola
Identity-resolved events
Events sent to Taboola carry the resolved customer whenever Upstack can identify one, matched against a 750M+ device graph.
Loop Subscriptions
Every event, server-side
Storefront and checkout events are captured from Loop Subscriptions on the server, independent of the browser.
Loop Subscriptions
One setup, every destination
Connect Loop Subscriptions once and forward to every ad platform, email tool and warehouse you run.
Setup
Live in under 20 minutes.
You need a Taboola Backstage account with active campaigns, and campaign URLs that carry the tblci click ID parameter.
Upstack dashboardExample
Loop Subscriptions Data source Connected
Taboola Destination Healthy
Read the full Taboola setup guide → -
01
Connect Loop Subscriptions
Capture Loop Subscriptions events server-side (new subscriptions, renewals, swaps and cancellations), each as what it actually is.
-
02
Add the Taboola destination
Under Settings, then Destinations, add Taboola with your numeric Account ID from Backstage, Account dropdown, Tracking. Add tblci={click_id} to each campaign’s destination URL so the Upstack Pixel can capture the click ID.
-
03
Check Test Events in Backstage
Once Upstack marks the destination Healthy, open Tracking, Test Events in Taboola Backstage. Taboola’s API returns 204 for every request, even invalid ones, so Test Events is the only way to confirm events are processed.
FAQ
Questions about Loop Subscriptions and Taboola.
Will my events be counted twice if I run both the pixel and server-side?
No. When 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.
Do event names need to match exactly?
Yes. Event names are case-sensitive and must exactly match the conversion name configured in Taboola Realize. Upstack sends lowercase snake_case names such as make_purchase and add_to_cart.
Which events does Taboola receive?
PageView as page_view, ViewContent as view_content, AddToCart as add_to_cart, InitiateCheckout as start_checkout and Purchase as make_purchase.
Which customer parameters are sent to Taboola?
Taboola does not support matching on hashed email, phone or other personal data: attribution relies solely on the tblci click ID captured from ad clicks. Events without a click ID are skipped.
How do I check that Loop Subscriptions events are reaching Taboola?
Once Upstack marks the destination Healthy, open Tracking, Test Events in Taboola Backstage. Taboola’s API returns 204 for every request, even invalid ones, so Test Events is the only way to confirm events are processed.
How long does it take to connect Loop Subscriptions to Taboola?
Most brands are live in under 20 minutes. Once Loop Subscriptions is connected, every destination receives the same resolved events, Taboola included.