Quick answer
Postback tracking is the practice of reporting conversion events from your backend directly to the tracking platform via an HTTP request, instead of relying on a JavaScript pixel that fires in the visitor's browser. It became the affiliate-marketing standard around 2020 as Safari ITP, Firefox ETP, ad blockers, and iOS privacy controls progressively broke pixel-based tracking. By 2026, every modern affiliate platform — Trcker, Impact, Everflow, TUNE, ShareASale, CJ — defaults to postback tracking for new partner integrations because pixel-only attribution now misses 20-40% of conversions depending on audience.
What is postback tracking?
Postback tracking is a server-to-server attribution method. When a customer completes a conversion — a purchase, signup, qualified lead, subscription renewal — your application backend fires an HTTP request to the tracking platform's postback endpoint with the data needed to attribute the conversion: a unique click identifier from the original affiliate click, the conversion amount, a transaction ID, and any metadata you want to record.
The visitor's browser is involved only at the click stage. After that, the entire conversion-reporting flow runs in infrastructure you control. There is no pixel to fire, no cookie to survive, no JavaScript to execute. Your server talks to the tracking platform's server with the same reliability as your payment processing.
The name "postback" comes from the request direction: your application posts the conversion back to the tracking platform after a conversion happens. You will also see this pattern called server-to-server tracking, S2S tracking, server postback, or conversion postback. They all describe the same architectural pattern. See server-to-server tracking for the broader category and postback URL for the specific endpoint format.
How postback tracking works in practice
The end-to-end flow has three stages: click capture, click ID storage, and conversion fire.
Click capture. When a customer clicks an affiliate tracking link, the tracking system generates a unique click identifier and appends it to the destination URL — typically as a query parameter like ?click_id=a7f9c3e2. Your landing page receives both the visitor and the click ID.
Click ID storage. Your application captures the click ID and persists it server-side. The exact mechanism depends on your stack: it might be a cookie that your backend reads, a session record in Redis, or a column on your user record once they create an account. The critical property is that the click ID must be retrievable later — possibly days or weeks later — when the conversion happens.
Conversion fire. When the customer converts, your backend retrieves the stored click ID and fires an HTTP request to the tracking platform's postback URL. A typical postback request looks like GET https://track.example.com/postback?click_id=a7f9c3e2&amount=89.50&txn_id=order_12345. The tracking platform validates the click ID, looks up the affiliate who drove that click, calculates the commission based on your payout configuration, and records the conversion.
The whole flow happens server-to-server. The visitor's browser never knew about the conversion event. This is what makes postback tracking immune to the things that break pixel tracking: ad blockers, cookie restrictions, slow page loads, and the conversion happening hours or days after the click.
Why postback tracking became the standard
Pixel-based tracking was the default for two decades because it was simple to deploy. Drop a or tag on your thank-you page and the pixel fires when the page loads. The cost of that simplicity has compounded since 2020:
- Safari Intelligent Tracking Prevention (ITP) caps
document.cookielifetimes at 7 days (and as low as 24 hours in some configurations) and blocks most cross-site requests. Conversions that happen more than a week after the click are systematically uncounted on Safari. - Firefox Enhanced Tracking Protection in strict mode treats more first-party requests as third-party-equivalent. An increasing share of users have strict mode enabled by default.
- Chrome's third-party cookie deprecation, after multiple delays, now affects a meaningful portion of traffic. Cross-site tracking via cookies is no longer the default.
- Ad blockers strip the entire pixel script on a meaningful share of traffic, particularly for technical audiences.
- iOS privacy controls — App Tracking Transparency, Mail Privacy Protection, iCloud Private Relay — affect mobile conversion tracking at the OS level.
- Slow page loads cause the pixel to fail before the user navigates away, particularly on mobile.
Each of these chips away at pixel reliability. Together they make pixel-only tracking miss 20-40% of conversions on audiences with significant iOS or privacy-conscious traffic. For affiliate programs, that missed percentage is the percentage you are underpaying your partners — and they know, because they run their own analytics and see the gap. The trust damage from systematic discrepancy is what drove networks to make postback tracking the default for new integrations.
Postback tracking vs other server-side methods
Postback tracking is one form of server-side conversion tracking. The category includes a few related but distinct patterns:
Postback URLs (this article) — The simplest form. Your backend fires an HTTP GET or POST request to a fixed URL provided by the tracking platform with conversion details as parameters. Standard across all affiliate networks.
Conversions API (CAPI) — Used by ad platforms like Meta, TikTok, LinkedIn. Same architectural pattern as postbacks but with platform-specific request formats, authentication, and identifier hashing. See server-side conversion tracking for the ad-platform variant.
Server-side Google Tag Manager — A self-hosted proxy that receives events from your backend and fans them out to multiple destinations. More flexible than direct postback firing but adds infrastructure complexity. See server-side tracking tools.
Direct API calls — Some tracking platforms offer richer REST APIs for conversion reporting beyond the simple postback URL pattern. Useful when you need to send custom event data or batch conversions.
For affiliate programs, simple postback URLs are almost always the right default. The architectural simplicity matches the operational reality of the affiliate workflow, where your conversion event is one HTTP call away from being attributed correctly.
Setting up postback tracking
Implementation has three concrete tasks once your tracking platform has been set up:
- Capture and persist the click ID. Update your landing page or app entry point to read the
click_id(or whatever your platform calls it) URL parameter and store it server-side. The storage scheme depends on your stack: a server-set cookie that your backend reads, a session record, or a user-record column once authentication happens.
- Fire the postback at conversion time. In whatever code path triggers a successful conversion — order completion webhook, subscription activation, lead qualification — retrieve the stored click ID and send an HTTP request to the postback URL with the conversion details. This is typically 5-20 lines of code per conversion event.
- Handle delivery failures. Postback requests can fail for transient reasons (network issues, tracking platform downtime). Wrap the request in try/catch with retry-on-failure (3 attempts with exponential backoff is standard) and log failures so you can investigate. Don't let postback failures block your actual conversion processing.
The whole integration typically takes 2-8 hours depending on your stack and how clean the click ID storage path is. Modern affiliate platforms also provide test endpoints so you can verify the integration before going live.
Postback tracking and Trcker
Trcker is built around the postback model from the start. Click IDs are captured at the redirect step, stored against the visitor session, and matched when the conversion postback arrives. The dashboard shows every postback delivery — success, failure, retry — so you can debug integration issues at the per-conversion level. See postback URL parameters for Trcker's parameter conventions and setting up postbacks for the step-by-step setup guide.
Frequently asked questions
Is postback tracking the same as server-to-server tracking?
In affiliate marketing, yes — they are used interchangeably. Both describe the same pattern: your backend reports conversion data to the tracking platform's backend via HTTP, with no involvement from the visitor's browser. "Server-to-server" emphasizes the server-to-server nature of the data flow; "postback" emphasizes the request direction (the conversion is "posted back" to the platform after the original click). See server-to-server tracking for the broader concept.
Do I need engineering resources to set up postback tracking?
Yes — postback tracking requires backend access to your conversion event. The actual integration is typically 2-8 hours of engineering work depending on your stack. Most affiliate platforms provide step-by-step guides for common payment processors (Stripe, Braintree, PayPal) and ecommerce platforms (Shopify, WooCommerce, BigCommerce) that reduce the implementation work. If you cannot get engineering resources, a tracking pixel is the fallback — but expect 20-40% conversion loss compared to postback tracking.
What happens if a postback request fails?
The conversion goes untracked unless you have retry logic. Standard practice is to wrap each postback request in a try/catch with 3 retry attempts on failure, logged to an outbound queue so you can investigate persistent failures. Trcker shows every postback delivery attempt in the dashboard so missing conversions are immediately visible.
How long are click IDs valid?
This depends on your platform's configuration but is typically 30-90 days. Some platforms support indefinite click ID validity, particularly for B2B SaaS programs where the conversion (lead qualified, contract signed) can happen months after the original click. Store click IDs against your user record (not in a cookie) to avoid the browser-side expiration problem entirely.
Can I use postback tracking and pixel tracking together?
Yes — many programs run both for redundancy. The postback URL is the primary method, the pixel is a fallback for situations where the click ID is not captured server-side. Configure deduplication via the transaction ID so a conversion with both pixel and postback fires is counted once. The redundancy catches conversions in edge cases where one method fails.
Does postback tracking work for offline conversions?
Yes. Because the postback fires from your backend, it can report any conversion event your backend knows about — including conversions that originated offline (phone orders, in-store purchases tied back to an online click via email/phone match, qualified leads from a CRM). This is one of postback tracking's strongest advantages over pixel tracking, which is locked to events that happen in a browser.
What's the difference between postback tracking and conversion APIs (CAPI)?
The architectural pattern is identical — backend reports conversion to platform via HTTP. The differences are in the specifics: ad platforms (Meta, TikTok, LinkedIn) call their version "Conversions API" or "CAPI" with platform-specific authentication and event formats; affiliate networks call it "postback" with simpler GET-based requests. See server-side conversion tracking for the ad-platform variant.
Trcker tip
If you're moving from pixel-only tracking to postback tracking, the highest-leverage change is the affiliate program — that's where the missing 20-40% of events directly translates to underpaid partners and retention risk. Trcker's postback endpoint accepts the standard click_id, amount, and txn_id parameters out of the box, plus optional fields for event (sale/lead/signup), currency, and coupon_code. The dashboard shows every delivery in real time so debugging is fast.