Affiliate conversions not tracking? A step-by-step troubleshooting guide
Affiliate Conversions Not Tracking? A Step-by-Step Troubleshooting Guide
Affiliate conversions not tracking is almost never a mystery — it's a break in one of five links in the chain: the click isn't being recorded, the click ID isn't being passed, the affiliate network isn't firing a postback, the postback is malformed, or the conversion is landing in the tracker but being attributed to the wrong click. Work through those five in order and you'll find the fault in minutes instead of burning budget guessing. This guide walks the whole chain, from the moment a visitor hits your landing page to the moment a conversion shows up (or doesn't) in your tracker, with the specific things to check at each stage.
Before anything else: stop sending paid traffic to the broken path. Every hour you keep buying clicks against a campaign where conversions aren't recording is money spent with no usable data. Pause the campaign, fix the chain, test it end to end, then turn it back on. The testing section below shows how to do that without spending a cent on a real conversion.
First, work out which side of the chain is broken
There are two systems involved in every affiliate conversion: the affiliate network (or merchant/offer) that records the sale or lead, and your tracker that records the click and receives the conversion. The fastest diagnostic is to compare what each side sees for the same period.
- Does the affiliate network show the conversion? Log into the network's reporting. If the conversion is there but your tracker shows nothing, the problem is downstream of the network — the postback isn't firing, isn't reaching your tracker, or is being rejected. Skip to the postback section.
- Does the network show no conversion at all? Then either the conversion genuinely didn't happen, or the network never received a valid click from you. Check the network's click report for the same window. If clicks are missing too, the problem is upstream — your tracking link, your click ID, or your traffic source.
- Do both sides show conversions but the numbers disagree? That's an attribution or deduplication problem, not a tracking break. See why your affiliate network and your tracker report different conversions.
This single comparison tells you which half of the chain to investigate. Everything below is organised around that.
Check 1: Is the click being recorded at all?
If your tracker shows zero clicks for a campaign that's definitely receiving traffic, nothing downstream can work. Conversions can't attach to a click that was never logged.
Open your tracker's click log and filter by campaign. Then check, in this order:
- Is the tracking link the one you think it is? Copy the destination URL straight out of the traffic source's ad settings and compare it character for character with the tracking link in your tracker. A truncated link, a stray space, or a link that got rewritten by an ad platform's URL checker will silently send traffic somewhere that isn't your tracker.
- Is the traffic hitting the landing page but not the tracker? If your traffic source points directly at your landing page instead of at your tracking link, clicks bypass the tracker entirely. The tracking link must be the first thing the visitor hits.
- Is a redirect or cloaker eating the click? Any intermediate redirect between the ad and your tracker can drop query parameters. Test by loading the full tracking URL in a browser and watching where it lands.
- Is the tracker receiving the click but rejecting it? Check for fraud or bot filters. Some trackers discard clicks they judge to be bots or datacenter IPs before they appear in reports. If you're testing from a VPN or a cloud server, your own test click may be filtered out — test from a normal residential connection.
In Adtraxo, the click log for each campaign shows the incoming click with its sub-ID values, geo and device. If clicks appear there, the first link in the chain is intact and you can move on. If they don't, the problem is between your traffic source and your tracking link — fix that before touching anything else.
Check 2: Is the click ID actually being passed through?
The click ID is the thread that ties a conversion back to the click that caused it. If it's missing or broken, the conversion may still be recorded by the affiliate network but your tracker has no idea which click to credit — so it either drops the conversion or attributes it to the wrong one.
Here's the mechanism. Your tracker generates a unique click ID and appends it to the offer URL as a parameter the affiliate network understands — commonly click_id, sub1, aff_sub, or similar, depending on the network. When the conversion happens, the network sends that same value back to your tracker in the postback. Same value in, same value out. If the parameter name is wrong, or the value gets lost in a redirect, the loop never closes.
What to check:
- Confirm the exact parameter name your affiliate network expects. This is network-specific and documented in the network's tracking setup page. Using
sub1when the network expectsaff_sub1is a common cause of missing click IDs. - Fire a test click and inspect the destination URL. After the tracker redirects you to the offer, look at the address bar. Your click ID value should be visible in the URL as the correct parameter. If it's absent, the tracker isn't passing it or the offer URL is stripping it.
- Check for multiple redirects. Each hop is a chance to drop parameters. A clean tracker-to-offer redirect preserves them; a chain through a link shortener or an intermediate affiliate link may not.
- Watch for URL encoding problems. Special characters in a click ID can break the parameter. Most trackers generate safe alphanumeric IDs, but custom setups can introduce issues.
If you're unsure whether your click ID setup is sound, what is a click ID, and why conversions go missing without one covers the full mechanics. On Adtraxo, click ID passing and postback conversion tracking are Pro features — the sub1–sub5 parameters carry your click ID and any extra segmentation (traffic source, creative, landing page variant) through to the network and back. If you're on the Free plan and conversions aren't appearing, that's the first thing to confirm: postbacks and sub-IDs require Pro.
Check 3: Is the postback firing — and reaching your tracker?
This is where most "affiliate conversions not tracking" cases actually live. The affiliate network recorded the conversion, but the postback — the server-to-server call that tells your tracker about it — either didn't fire, fired to the wrong URL, or was rejected.
A postback URL looks roughly like this:
https://your-tracker.com/postback?click_id={click_id}&payout={payout}&status={status}
The {...} macros are placeholders the affiliate network fills in with real values when a conversion happens. If a macro name is wrong, the network either sends a literal {click_id} string or drops the parameter — and your tracker can't match the conversion to a click.
Work through these checks in order:
- Is the postback URL saved correctly in the network? Copy it out of the network's settings and compare with what you intended. A missing
https://, a typo in the domain, or an extra space at the end will break it. - Are the macro names exactly right? Networks use different tokens. One network's click ID macro is another's
{sub1}. Check the network's documentation for the exact spelling and braces. - Is the postback URL pointing at the right tracker domain? If you use a custom tracking domain in Adtraxo, make sure the postback URL uses that domain (or the default one consistently). A mismatch between the domain that recorded the click and the domain receiving the postback can cause matching failures.
- Is the tracker rejecting the postback? Check your tracker's postback log for incoming requests and their response codes. A 200 means it was accepted; a 400 or 404 means it arrived but was rejected or routed wrong. Adtraxo logs incoming postbacks so you can see exactly what the network sent — including the raw query string — which is usually enough to spot a bad macro immediately.
- Is the network even attempting the postback? Some networks only fire postbacks for certain conversion statuses (approved vs pending) or require you to enable server-side postback in the offer settings. Confirm the postback is switched on for the specific offer, not just the account.
If the postback is arriving but being rejected, postback not firing: the checks to run, in order goes deeper on the specific failure modes. And if you're not sure whether postback or pixel is the right tool for your setup, postback URL vs tracking pixel — which should an affiliate use? explains the trade-offs.
Check 4: Are conversion types and payout values configured correctly?
A postback can arrive perfectly and still produce a useless record if the conversion type or payout value is wrong. Two failure patterns are common.
Conversion type mismatches
Many offers have more than one conversion event — a lead (email submit, form fill) and a sale (purchase, upsell). If your postback doesn't specify which type, or specifies the wrong one, the conversion may be logged under the wrong event or rejected. If you're running an offer with both, track them as separate events so you can see lead-to-sale rates rather than a single blurred number. How to track leads and sales as separate conversion events shows the setup.
Payout values arriving as zero or wrong
If conversions show up in your tracker but every one reports a payout of 0, your ROI numbers are fiction. This happens when:
- The payout macro isn't included in the postback URL at all.
- The macro name is wrong, so the network sends nothing or a literal placeholder.
- The network sends payout in a different unit (cents vs dollars) than your tracker expects.
- The offer has variable payouts and the postback only sends a default value.
Check a recent conversion in your tracker's log and look at the recorded payout. Compare it to what the affiliate network reports for the same conversion. If they differ, fix the payout macro. How to pass payout values in a postback so your ROI numbers are real covers the exact macro setup and unit handling.
Check 5: Is the conversion being attributed to the wrong click?
Sometimes conversions are tracking — just against the wrong click, wrong campaign, or wrong sub-ID. The symptom is a campaign that shows conversions it shouldn't, or two campaigns where one is starved of credit.
Common causes:
- Click ID collision or reuse. If your tracker reuses click IDs or the network echoes a generic value, conversions attach to whichever click matches first.
- Sub-ID mix-ups. If you're passing traffic source in sub1 and creative in sub2, but one traffic source's ad template puts them in the wrong order, attribution scrambles. Standardise the sub-ID map across every traffic source — PropellerAds, EvaDav, RichAds, Taboola, MGID, solo ads — and document it.
- UTM parameters competing with sub-IDs. If you're using both, make sure they're not overwriting each other in the redirect. UTM parameters vs sub-IDs — which should you use on affiliate links? explains when each is appropriate.
In Adtraxo, the per-campaign analytics break conversions down by geo, device and sub-ID, so a misattributed conversion usually shows up as an impossible pattern — conversions from a geo you don't target, or a sub-ID that shouldn't be converting. That's your signal to check the parameter mapping.
How to test the whole chain before you pay for traffic
Never launch a campaign on an untested conversion path. The goal is to prove, end to end, that a click generates a click ID, the click ID reaches the network, the network fires a postback with that same ID, and your tracker records a conversion with the right payout — all before real money is spent.
Here's the sequence:
- Generate a test click through your tracking link. Load the full tracking URL in a browser (residential connection, not a VPN). Note the click ID your tracker assigns.
- Confirm the click ID appears on the offer page. Inspect the destination URL. The click ID should be visible in the correct parameter.
- Trigger a test conversion. Most affiliate networks offer a test conversion tool or a test postback button in the offer settings. Use it. If the network doesn't provide one, you can manually fire the postback URL with a real click ID substituted for the macros — but only into a test campaign, never a live one.
- Check your tracker received it. The conversion should appear in the tracker's conversion log within seconds, matched to the click ID from step 1, with the correct payout.
- Verify the payout and conversion type. Confirm the recorded payout matches the offer and the conversion is logged under the right event type.
- Repeat with a second click to confirm deduplication works and the second conversion doesn't overwrite or double-count the first.
If any step fails, fix it before moving on — don't launch and hope. The full testing procedure, including how to fire a manual postback safely, is in how to test a postback URL before you send paid traffic. Adtraxo's postback log makes step 4 trivial: you can see the incoming request, the click ID it carried, and whether it matched a click.
Common configuration mistakes that break conversion tracking
These come up repeatedly across traffic sources and networks. Run through them as a final sweep:
- Postback URL saved on the wrong offer. Networks with multiple offers sometimes apply a postback globally and per-offer. A per-offer override with a stale URL breaks that offer only — easy to miss.
- Custom tracking domain not configured. If you set up a custom domain in your tracker but the postback URL still points at the default domain (or vice versa), clicks and conversions can end up on different domains and fail to match. Adtraxo supports custom tracking domains on Pro — if you've set one up, make sure the postback URL uses it consistently.
- Traffic source stripping parameters. Some ad platforms rewrite destination URLs. If your sub-IDs or click ID parameter disappear between the ad and the tracker, check whether the platform has a URL parameter setting that needs the tokens added explicitly.
- Fraud filters rejecting legitimate conversions. If Adtraxo's fraud detection (IP velocity, datacenter IP, bot UA, uniqueness conflict, invalid referer) is flagging real conversions, review the flagged clicks. The filters are designed to catch bots, but unusual legitimate traffic — shared IPs, corporate networks — can occasionally trip them. Check the flagged log before assuming a conversion is fake.
- Testing from a filtered environment. Your own test click from a VPN or cloud IP may be discarded by fraud filters before it appears. Always test from a clean residential connection.
When to suspect the affiliate network rather than your setup
Occasionally the break is on the network's side: postbacks delayed by hours, a network-wide outage, or a specific offer not firing postbacks. The tell is that your setup was working yesterday and nothing changed today. Before tearing your configuration apart, check the network's status page or support channel, and test with a different offer on the same network. If a second offer tracks fine, the problem is isolated to the first offer's settings — not your tracker.
This is also where discrepancies between network and tracker reports become visible. If the network shows conversions hours before your tracker does, that's latency, not a break. Clicks, conversions, fraud detection — all in one tracker.Track your affiliate campaigns for free
Not ready for an account? Get the Tracking Domination Playbook — free, just your email.