← All guides
IP fraud detection

Why affiliate networks reject leads and how to catch bad traffic before you send it

Scrubbed leads cost you payouts and network trust. Learn what gets traffic rejected and how to filter it before it reaches the offer.

Published

You ran the campaign, the leads came in, and the dashboard looked healthy. Then the network's monthly report arrived and a big slice of those leads were marked "rejected" or "scrubbed". No payout for them, and if it happens often, a lower cap, a reversal of commissions you thought were safe, or a quiet note from your affiliate manager that your account is under review.

Most rejected leads are not a mystery. Networks and advertisers run the same kinds of checks on every submission, and the leads that fail those checks share a few clear patterns. If you can see those patterns before you send the lead, you can stop paying for traffic that was never going to convert and protect the reputation of your account at the same time.

This guide explains why networks reject leads, which signals they look at, and how to filter bad traffic on your side first.

Why networks scrub leads in the first place

An advertiser pays the network for a lead because they expect a real person who might buy, sign up or answer a sales call. When a lead turns out to be fake, the advertiser pushes back on the network, and the network passes that pain down to you.

The common reasons a lead gets rejected:

  • The visitor was not where they claimed to be. The offer targets India, but the click came from a data center in another country routed through a proxy.
  • The traffic was automated. Bots fill forms faster and more consistently than people, and they never convert.
  • The address has a history. The same IP has been linked to fraudulent signups or chargebacks on other sites recently.
  • The contact details are junk. A throwaway email, a number that cannot receive calls, or details copied from a list.
  • Duplicate or incentivised submissions. The same person submitting again and again, often through a VPN to look like someone new.

Most of these leave a trace in the IP address behind the click, and the junk contact details are what email and phone checks are for. That is why the IP is the cheapest and fastest place to start filtering.

What the network sees that you do not

Networks usually score every lead in bulk after the fact. By the time you hear about a problem, the traffic is already paid for and the reversal is already on your statement. You are working blind for weeks.

The fix is to run the same kind of check at the moment the visitor arrives, before you forward anything. An IP risk check gives you:

  • a fraud_score from 0 to 100, where higher means riskier
  • proxy, vpn and active_vpn flags, so you know when someone is hiding their real connection
  • a tor flag for Tor exit nodes, which almost never belong on a lead form
  • recent_abuse, which tells you the address has been linked to fraud or abuse recently
  • bot_status, which flags traffic that looks automated rather than human
  • the country, region and city, plus the ISP, ASN and organization behind the address

That last group matters more than it looks. If an offer is restricted to Pakistan and the visitor's IP resolves to a hosting company in another country, that lead will be rejected no matter how good the form data looks.

The traffic patterns that get you scrubbed

Data center and hosting traffic

Real people browse from mobile carriers and home broadband. When the ISP or organization behind a click is a cloud or hosting provider, you are almost always looking at a proxy, a bot farm or a scraper. These clicks inflate your numbers and drag down your EPC because none of them convert.

Proxies and VPNs used to fake location

Incentivised traffic and fraud rings rely on proxies and VPNs to appear to be in the right geo. A visitor with proxy or active_vpn set on a geo-restricted offer is a strong reason to hold the lead.

Recently abusive addresses

An IP with recent_abuse set has been tied to bad behavior elsewhere. It does not prove this specific lead is fake, but it is a strong signal, especially combined with a high score.

Bots on click-redirect and form flows

If you run click-redirect traffic, bots can hit your tracking links thousands of times. bot_status lets you drop those clicks before they count against your campaign or get forwarded to the advertiser.

What to do about it

You do not need to rebuild your funnel. Add one check at the point where you decide whether to forward a lead or redirect a click.

1. Check the IP before you forward

When a form is submitted or a click lands on your redirect, send the visitor's IP to the check endpoint:

curl -H "Authorization: Bearer fn_your_key" \
  "https://fraudnova.com/api/v1/check?ip=203.0.113.24"

The response comes back with the score and flags described above. Each check costs 1 credit, whether the result is clean or risky.

2. Decide with simple rules first

Start with rules you can explain to your affiliate manager:

  • Block Tor exit nodes and any visitor flagged as a bot.
  • Hold for review anything with a score of 75 or more, or a proxy or VPN on a geo-restricted offer.
  • Let through low scores from residential or mobile connections in the right country.

The bands 0–39, 40–74 and 75–100 are a sensible starting point. Tune them per offer once you have a few days of data. A sweepstakes offer that attracts a lot of incentivised traffic may need a stricter cut-off than a finance offer with a phone verification step, because the phone step already filters out much of the junk on the finance side.

3. Log the result with the lead

Store the score and the flags next to each lead in your own tracker. When the network's report comes in, compare rejected leads against what you saw. You will quickly learn which sources and placements send the risky traffic, and you will have evidence when you want to dispute a rejection that looks wrong.

4. Cut sources, not just leads

Filtering individual leads saves the payout. Cutting the sub-IDs and placements that keep sending high-risk traffic saves the ad spend. If one source sends mostly hosting IPs or proxies, pause it.

5. Check in bulk when you audit

If you already have a list of leads from last week and want to know how bad it was, the batch endpoint accepts up to 100 IPs per request. That is a quick way to audit a source before you scale it.

A note on false positives

No signal is perfect. Some real users browse on a corporate VPN, and some mobile carriers route traffic in ways that look unusual. That is why a middle band exists. Instead of blocking everything above 40, hold the middle for a second check such as SMS or email verification, and only hard-block the top of the range. You keep most of the good leads and still protect your account.

Next step

Before you change anything in your funnel, look at what your current traffic actually looks like. Paste a few IPs from recent leads into the free IP checker and see how they score. No signup is needed.

When you are ready to filter automatically, the IP fraud detection API gives you the same signals in one request. You get 25 free credits after you verify your email, it is 1 credit per check, and there is no subscription. The full request and response format is in the API docs.

Try it free

Run one IP proxy check right now — no account, no card.

Try the free IP proxy checker — no signup See the IP fraud detection API

Also read