How Postback URL’s work (And how to fix them)

Understanding the Postback URL mechanism is the first step toward flawless tracking. Once you will master the postback URL data flow, everything will become much clearer, which will allow you to make huge progress toward your Data-Driven Marketing journey.As opposed to image pixel tracking, the postback URL requires data to move from one server to another. This is why Postback URL is also called Server to Server tracking (S2S).

Let’s break down the click flow:

  1. The tracking mechanism starts with a click.
  2. When a visitor clicks on your ad, the traffic source server will do two actions
    1. Append a “clickid” to the TrackingDesk campaign URL.
      https://anyurl.foo/?clickid=80129830128301238
    2. Record the clickid value into its server as it will be used as the reference to record a conversion – if such clickid was at the origin of the conversion.
      NB: For TrackingDesk to be able to record the clickid value, the traffic source parameters need to be configured in TrackingDesk
  3. Upon receiving the click, TrackingDesk will run four actions
    1. Record the traffic source clickid
    2. Generate an event id (the TrackingDesk clickid) 015123hlhjk1h23kj12h3k1jh3
    3. Redirect the visitor to the offer link configured in the campaign.
    4. During the redirect action, TrackingDesk will inject a unique event id into the offer link query string (aff_sub)
      Examples:
      Affiliate Platform Query String Tracking Link
      Hasoffers aff_sub https://hasoffers.foo?aff_id=23&offer_id=123213&aff_sub=015123hlhjk1h23kj12h3k1jh3
      ClickBank tid https://hop.clickbank.net/?tid=015123hlhjk1h23kj12h3k1jh3
      Cake s2 https://cakelink.foo?s2=015123hlhjk1h23kj12h3k1jh3

       

  4. When a conversion happens, the affiliate network will inject the event id and the commission amount into the TrackingDesk postback URL.
    [spacer height=”20px”]
    https://trackingdesk.com/?h=015123hlhjk1h23kj12h3k1jh3&a=2.34
     [spacer height="20px"]
  5. TrackingDesk will record the conversion and match it with the initial click attributes associated with the event id.[spacer height=”20px”]
  6. TrackingDesk will then fire the traffic source postback URL while injecting the values associated with the initial click.[spacer height=”20px”]
    1. clickid= 80129830128301238
    2. payout=2.34
      Traffic Source postback URL with placeholders

      https://trafficsource.foo/?clickid=*TS_var_1*&payout=*payout*
      [spacer height="20px"]
      https://trafficsource.foo/?clickid=80129830128301238&payout=2.34 

How do you actually know that the values are injected in the traffic source postback URL?

After all, you need to wait for the traffic to generate some clickid’s and conversions to be 100% sure that there is no broken link, no?

There is a fairly simple (and free) tool that will allow you to see the exact values being injected in the postback. It’s called RequestBin

What is RequestBin?
RequestBin is a service that allows users to collect and analyze HTTP requests. RequestBin can be used to see what HTTP clients are sending and to look at webhook requests.

Step by step guidelines:

  1. Head to Requestbin
  2. Create a “requestbin”[spacer height=”20px”] requestbin
  3. You will be redirected to a page where your Requestbin will show up[spacer height=”20px”]requestbin_url
  4. Take your traffic source postback URL and replace the base URL with the Requestbin url[spacer height=”20px”] Example:
    https://trafficsource.foo/?clickid=*TS_var_1*&payout=*payout*[spacer height=”20px”] – https://requestb.in/1j2zufn1?clickid=*TS_var_1*&payout=*payout*[spacer height=”20px”]
  5. In TrackingDesk, replace  the postback URL with the Requestbin URL (as if it was the traffic source postback URL)[spacer height=”20px”]request_bin_postback
  6. Create a campaign for the Traffic Source [spacer height=”20px”]https://servedbytrackingdesk.com/cWiADMDjs_yFyvYno?clickid={clickid}
  7. Replace the {clickid} with a value [spacer height=”20px”]https://servedbytrackingdesk.com/cWiADMDjs_yFyvYno?clickid=1231231231312321
  8. Open a new browser window
    1. Activate the developer mode – press f12 – and set the following options[spacer height=”20px”]
      1. Network
      2. Preserve log
      3. Clear
      4. Paste the campaign url in the browser[spacer height=”20px”]devmode
  9. Hit the Campaign URL
  10. You will see the requests made by your browser.
  11. Now you need to scroll up until you find the 3rd-4th step of the request[spacer height=”20px”] requestbin_eventid[spacer height=”20px”]
  12. Copy the event_id value
  13. Head to your TrackingDesk profile page to run a manual conversion import
  14. Select the conversion type
  15. Paste the event id in the import field and Import the conversion
  16. Return to the Requestbin and refresh the page to inspect the values that have been sent to the Postback URL
    [spacer height=”20px”] requestbinresult[spacer height=”20px”]
  17. If the clickid value is similar to the value that you have set during the click you know that the placeholder ment to be replaced by the traffic source clickid is correct and you can update the postback URL with the traffic source base URL.[spacer height=”20px”]

Take away:

Requestbin is a great tool for “non” developers to visualize HTTP requests. Once you start using it, you will realize how easy it is to identify errors or fine-tune postback URLs.

You came across some useful tools? Share them below as we always love to help our users!