DERVALO.FORUMDERVALO.FORUM
Forum
Articles
For beginnersCase studiesTraffic sourcesNetworks & offersTools & servicesNewsAll articles
Services
PWATrackersAuto-uploadPaymentsSPYAntidetectDomainsCloakingProxies
All services
BlogNews
ForumArticlesServicesBlogNews
DERVALO.FORUM
Forum for media buyers

Case studies, funnels, traffic sources, services and tools for traffic work.

Stay in the loop

Get fresh case studies, discussions and useful materials.

Open Telegram →
Platform
Forum›Articles›Blog›Services›
Community
Our channel›Our chat›Support›
Resources
Privacy policy›Terms of use›
© DERVALO.FORUM 2026. All rights reserved.
Privacy policyTerms of use
All articles
Tools & services

Postbacks and S2S conversion tracking: subids, macros, Keitaro setup and Meta Conversions API

September 24, 2026· 3 views
Postbacks and S2S conversion tracking: subids, macros, Keitaro setup and Meta Conversions API
Contents
  1. What a postback is and how S2S differs from a pixel
  2. How the tracking chain works
  3. Subid, macros and tokens: keeping them straight
  4. Setting up a postback: Keitaro example
  5. 1. Offer link
  6. 2. Postback URL in the network
  7. 3. Status mapping
  8. 4. Testing
  9. Postback back to the source: why and how
  10. Delayed and multiple conversions
  11. Common mistakes
  12. FAQ
  13. What is a postback in simple terms?
  14. Do I need a postback if the pixel is installed?
  15. What is the difference between subid and clickid?
  16. Which tracker for S2S?

A postback is a message from the affiliate network to your tracker saying that a specific click produced a conversion. Without it you see spend in the ad account and payouts in the network, but you don’t know which creative, which ad and which audience segment made the money. This guide explains postbacks and S2S tracking in plain language: how subids and macros work, how to wire the chain “source → tracker → network → back to source”, and why you need Meta Conversions API even when the pixel is already installed.

What a postback is and how S2S differs from a pixel

There are two ways to pass conversion data. The pixel (client-side) is JavaScript on the thank-you page that fires in the user’s browser. It depends on the browser: ad blockers, iOS tracking restrictions, disabled JS — and the conversion is lost. Estimates put pixel under-reporting at 15–40% of events.

An S2S postback (server-to-server) is an HTTP request from the network’s server to the tracker’s or ad network’s server. The user’s browser is not involved, so blockers and iOS restrictions don’t matter. The conversion is sent when the network confirms it — so delayed events can be passed too: approval after three days, a redeposit after a week.

In affiliate marketing S2S is the standard. The pixel remains for ad-network optimisation (Facebook and Google learn on events); S2S is for counting money.

How the tracking chain works

  1. The user clicks an ad. The ad network inserts its macros into the link: ad ID, campaign ID, placement, its own clickid.
  2. The tracker receives the click, generates its own clickid (subid in Keitaro, clickid in Binom), stores all source parameters and redirects to the offer.
  3. In the offer link the tracker inserts its clickid into a parameter the network understands (usually sub1, aff_sub, s2s).
  4. The user performs the action. The network calls the tracker’s postback URL, returning the same clickid, status and payout amount.
  5. The tracker matches the conversion to the click — now you see which creative and placement produced it.
  6. Optionally the tracker sends the conversion back to the ad network (source S2S postback) so Facebook, TikTok or a push network optimises on real conversions rather than clicks.

Subid, macros and tokens: keeping them straight

The same entity has different names in different systems, and that is the main source of errors.

What it isIn the trackerIn the networkIn the source
Unique click IDsubid / clickid / {subid}sub1, aff_sub, clickid, s2s{click_id}, {cid}, fbclid
Creative IDsub_id_1… / t1…sub2…sub5{ad.id}, {creative_id}, {banner_id}
Payout amount{payout} / {revenue}{payout}, {amount}, {sum}value, {revenue}
Statuslead / sale / rejected{status}, approved / hold / rejectEvent: Lead, Purchase

The rule: one clickid travels through the whole chain unchanged. Tracker created it — network stored it — network returned it — tracker found it. If at any step the parameter is truncated, renamed or lost in a redirect, the conversion hangs unattached to a click.

Setting up a postback: Keitaro example

The scheme is identical for any tracker; parameter names differ.

1. Offer link

In the tracker’s offer settings: https://track.network.com/click?offer_id=123&aff_id=456&sub1={subid}&sub2={sub_id_1}&sub3={sub_id_2}. Here {subid} is the tracker’s clickid, and sub2/sub3 carry creative and placement IDs so you see them in the network’s stats too.

2. Postback URL in the network

The tracker gives a template like https://your-tracker.com/postback?subid={sub1}&status={status}&payout={payout}. Note: {sub1}, {status}, {payout} here are the network’s macros; it fills them in when calling. Every network has its own macro list — check its docs or ask your manager.

3. Status mapping

The network sends its statuses (pending, approved, rejected, trash); the tracker expects its own (lead, sale, rejected). The mapping is set in postback settings. A typical error: all conversions land in “lead” and never move to “sale” because the approval status isn’t mapped.

4. Testing

Most networks have a “test postback” button. Send it, check the tracker logs that the request arrived, the clickid was found and the status recognised. If not, 90% of problems are: wrong clickid parameter, HTTP instead of HTTPS, or the network’s IP blocked by the tracker server’s firewall.

Postback back to the source: why and how

Ad networks optimise on the events they see. If Facebook only sees clicks, it brings you clickers. If it sees deposits, it starts looking for people like depositors. So conversions from the tracker must be sent back.

Push, popunder and native networks accept a simple S2S postback: https://network.com/postback?cid={external_id}&payout={payout}, where {external_id} is the network’s clickid passed to the tracker in step one.

Meta uses the Conversions API (CAPI): a server request to the Graph API with the event, value, time and hashed user data. The key requirement is passing fbclid/fbc and fbp stored by the tracker at click time — otherwise Meta can’t match the event to an impression. Deduplication with the pixel is via an identical event_id. Modern trackers (Keitaro, Binom, Voluum, RedTrack) support CAPI out of the box.

TikTok — Events API; Google — offline conversions by gclid. Same logic: a server event with the source’s click ID.

Delayed and multiple conversions

In nutra an order is first “on hold”, then after 1–3 days “confirmed” or “rejected”. In gambling registration is followed by a deposit, then redeposits. All of these are postbacks with one clickid and different statuses. The tracker must update the conversion, not create a duplicate. In Keitaro this is lead → sale statuses with payout update; in Binom, events of different types. Make sure update-by-existing-clickid is enabled, or your stats will double.

Common mistakes

  • Clickid doesn’t reach the offer. A prelander that doesn’t pass parameters: the user clicks from the prelander to the offer and the subid stays on the first link. Pass parameters through the prelander button or use the tracker’s direct redirects.
  • One sub for everything. Creative, placement and campaign stuffed into one parameter with underscores. Reports become impossible. Use separate sub2–sub5.
  • Payout not passed. The tracker has a fixed payout while the network cuts rates by GEO or KPI — tracker ROI lies. Pass the amount from the postback.
  • Time zones. Tracker in UTC, network in GMT+3, you compare “yesterday” and see a 20% gap. Align zones in settings.
  • Unprotected postback. A postback URL is public by nature. Enable network IP whitelisting or a secret key, or conversions can be “drawn” from outside.

FAQ

What is a postback in simple terms?

An automatic notification from the network to your tracker: “click number X produced a conversion worth Y”. It lets you attribute revenue to a specific ad.

Do I need a postback if the pixel is installed?

Yes. The pixel loses events to blockers and browser restrictions and can’t pass delayed statuses (approval, redeposit). Pixel for ad-network learning, S2S for accounting.

What is the difference between subid and clickid?

Essentially none — it is the unique click identifier. Systems name it differently: subid in Keitaro, clickid in Binom and Voluum, aff_sub in networks.

Which tracker for S2S?

Any modern one: Keitaro and Binom are self-hosted with full control; Voluum and RedTrack are cloud, easier to start. Comparison and promo codes in the tracker catalog and the Keitaro vs Binom breakdown.

Numbers don’t match between tracker and network? We dissect such cases on the forum.

Share:Telegram
Contents
  1. What a postback is and how S2S differs from a pixel
  2. How the tracking chain works
  3. Subid, macros and tokens: keeping them straight
  4. Setting up a postback: Keitaro example
  5. 1. Offer link
  6. 2. Postback URL in the network
  7. 3. Status mapping
  8. 4. Testing
  9. Postback back to the source: why and how
  10. Delayed and multiple conversions
  11. Common mistakes
  12. FAQ
  13. What is a postback in simple terms?
  14. Do I need a postback if the pixel is installed?
  15. What is the difference between subid and clickid?
  16. Which tracker for S2S?

Tools mentioned

KeitaroKeitarofrom $25/moBinomBinomfrom $69/moRedTrackRedTrack14-day trialVoluumVoluumfrom $199/mo
Discuss on the forum
Got a question or your own experience? Start a topic — the community will answer.
Go to forum

Read next

PWA Apps in Affiliate Marketing: What They Are, Why They Matter and How to Run Traffic in 2026
PWA Apps in Affiliate Marketing: What They Are, Why They Matter and How to Run Traffic in 2026
September 23, 2026
Proxies for Affiliate Marketing: Mobile, Residential and Datacenter — What to Choose and What to Pay
Proxies for Affiliate Marketing: Mobile, Residential and Datacenter — What to Choose and What to Pay
September 23, 2026
Antidetect Browsers in 2026: How Browser Fingerprinting Works and How Not to Burn Your Accounts
Antidetect Browsers in 2026: How Browser Fingerprinting Works and How Not to Burn Your Accounts
September 23, 2026