When TrafficOX knows which visits converted, your statistics show conversions, cost per conversion, profit and ROI for every order, country and source — and automation rules can act on them.
Tracking works in three parts:
- Your landing page URL carries the
{visitor_id}macro, so every visit arrives with its TrafficOX ID. - Your tracker or site keeps that ID.
- When the visitor converts, the ID is sent back to TrafficOX — by a server-to-server postback or by a pixel.
Step 1. Add {visitor_id} to your landing page URL
In your buy order's landing page URL, pass {visitor_id} in the parameter your
tracker reads, for example:
https://example.com/offer?click_id={visitor_id}
TrafficOX replaces {visitor_id} with the visit's ID on every click.
Step 2. Create a conversion tracker
- Open Tracking and click to add a tracker.
- Fill in the form:
| Field | What to enter |
|---|---|
| Name | Any name you'll recognise |
| Tracker Type | S2S (Server-to-Server) if your tracker or backend sends the postback; Pixel (Browser) if you can only place code on your pages |
| Event Type | install, sale, signup, lead or rebill — the event this tracker counts by default |
| Count Mode | unique counts one conversion per visitor and event; multiple counts every one |
| Value, USD | The payout to record when the postback doesn't send one. Optional |
| Attribution window | In days, 90 by default. With unique, a repeat conversion from the same visitor inside this window is marked as a duplicate |
| Status | Active to accept conversions |
- Save. The tracker page shows the code to use under Tracking Code.
Step 3a. Server-to-server postback
Call this URL from your tracker or server when a conversion happens:
https://tracking.trafficox.com/s2s?visitor_id={VISITOR_ID}&tracker_id=TRACKER_ID&event=EVENT
Replace {VISITOR_ID} with your tracker's token for the ID you stored in step 1,
and TRACKER_ID with the ID shown on the tracker page — the page gives you the
full URL ready to copy.
Parameters
| Parameter | Required | What it is |
|---|---|---|
visitor_id | Yes | The ID TrafficOX passed in {visitor_id} |
tracker_id | No | Your tracker's ID. When set, the tracker must be Active |
event or goal | No | Event name: lowercase letters, digits, _ and -, up to 32 characters. Defaults to the tracker's Event Type |
value or payout | No | Conversion payout in USD, for example 1.5. Defaults to the tracker's Value, USD |
click_id | No | Your own click ID, stored with the conversion |
sub_id | No | Your own sub ID, stored with the conversion |
To report up to three events in one call, use event1/value1,
event2/value2 and event3/value3.
Tokens for popular trackers
| Tracker | Visitor ID token | Payout token |
|---|---|---|
| Keitaro | {external_id} | {revenue} |
| Binom | {externalid} | {payout} |
| Voluum | {externalid} | {payout} |
| RedTrack | {ref_id} | {offer_payout} |
| PeerClick | {externalid} | {payout} |
| BeMob | {externalId} | {payout} |
| LandingTrack | {{PID}} | {{PAYOUT}} |
| CPBLab | {!tscode!} | {!revenue!} |
Check the token names against your tracker's documentation — they depend on how you set it up.
Responses
A successful call returns 200 with the events that were accepted and any that
were rejected:
{"accepted":[{"event":"sale","value":1.5}],"rejected":[]}
| Error | Cause |
|---|---|
missing_visitor_id | No visitor_id in the request |
unknown_tracker | tracker_id doesn't exist or the tracker isn't Active |
invalid_value | The payout isn't a valid, non-negative number |
too_many_events | More than three events in one request |
no_valid_events | None of the events could be accepted |
A rejected event with reason duplicate was already counted for this visitor —
expected with unique count mode.
Step 3b. Pixel
Use the pixel when you can't send a postback from a server.
- Put the Landing Page Script from the tracker page on your landing page. It saves the visitor ID from the URL in a cookie.
- Put the Conversion Page Script on your thank-you page. It reads the cookie and reports the conversion.
Both pages must be on the same hostname — for example both on www.example.com.
The visitor ID is kept in a cookie on the landing page's exact host, so a
different subdomain can't read it.
Check that it works
The tracker page has an Event Log that refreshes every 10 seconds. Send a test conversion and watch it appear with its status:
- accepted — counted;
- duplicate — already counted for this visitor;
- invalid_click — the visitor ID matches no TrafficOX visit: it's missing, mistyped, or older than about 90 days.
Where conversions show up
- Buy order statistics: Conversions, Conv. value, Profit and ROI %.
- The dashboard's detailed stats: Conv., Cost/Conv., Conv. Rate and ROI.
ROI shows N/A until an order has at least one conversion.