9 solo ad red flags that mean you're buying bot traffic

11 min readUpdated Sep 21, 2026

9 Solo Ad Red Flags That Mean You're Buying Bot Traffic

Most solo ad red flags show up in your tracking data before they show up in your refund request. If you've ever paid $150 for 100 clicks and got zero opt-ins, the problem usually isn't your landing page — it's that a chunk of those clicks were never human. The nine red flags below are the ones I check on every order, in order of how fast they surface. The first three you can catch in under five minutes with nothing but a tracking link and a sub-ID.

Solo ads are one of the few traffic channels where you're buying from an individual seller with no platform-level quality control. That's the whole appeal — cheap clicks, real lists, direct relationships. It's also why solo ad red flags matter more here than on any ad network. On PropellerAds or RichAds you at least get a fraud filter. On a solo ad buy, your tracking is the fraud filter.

What are the most common solo ad red flags?

Here's the short version, then we'll go through each one with the specific number or pattern that gives it away:

  1. Click volume arrives in a spike, not a curve
  2. Zero or near-zero sub-ID distribution
  3. Click-to-opt-in rate below 10%
  4. Traffic from datacenter IP ranges
  5. Identical user agents across hundreds of clicks
  6. Geo mismatch between what you bought and what you got
  7. Time-on-page under 3 seconds on every click
  8. Seller won't accept a custom tracking domain
  9. The click count lands suspiciously close to a round number

Any single one of these can be innocent. Three or more on the same order, and you're almost certainly paying for bot traffic.

Red flag 1: clicks arrive in a spike instead of a curve

Real email traffic has a shape. When a seller sends to their list, you see a ramp — a burst in the first 30–60 minutes, then a long tail over 6–24 hours as people check email on their phones, open a second time, or forward it. The tail is usually 20–40% of total clicks.

Bot traffic doesn't have a tail. It has a cliff. You'll see 80 clicks in a 12-minute window and then nothing. Ever.

Pull the hourly breakdown in your tracker and look at the distribution. If 90%+ of clicks land inside a window shorter than the seller claimed the send would take, that's your first solo ad red flag. Legitimate senders stagger sends across hours or days specifically to avoid spam filters — they can't physically deliver 300 real clicks in 8 minutes.

Red flag 2: no sub-ID distribution

This is the fastest test you can run and the one most buyers skip. Pass a unique sub-ID on every solo ad order — sub1=sellerA_order_0412 — and check what comes back on the click level.

On a real send, sub-IDs vary. Different list segments, different send times, different tracking links in different email positions. You'll see multiple distinct values or at least a spread across your sub1–sub5 parameters.

Bot traffic hits one URL with one parameter set. If every click comes back with identical sub-ID values and no variation, the clicks were generated by a script pointed at your link. If you're not passing sub-IDs at all, you've already lost the ability to audit the order — Udime tracking setup and any other marketplace follows the same rule: sub-IDs or it didn't happen.

Red flag 3: click-to-opt-in rate under 10%

Solo ad traffic converts to opt-ins at wildly different rates depending on niche, but the floor is real. Across hundreds of solo ad orders, a genuine list with a relevant offer lands between 15% and 45% opt-in. Below 10% means the clicks weren't from people who wanted your thing — or weren't from people at all.

Here's the useful part: bot traffic doesn't fail at 9%. It fails at 0–2%. If you bought 200 clicks and got 1 opt-in, you don't need a statistical argument. You need a refund request.

For a full breakdown of where the line sits by niche and price point, see what is a good solo ad conversion rate in 2026.

Red flag 4: datacenter IPs in your click log

Real subscribers open email from residential and mobile IPs. Bots run from AWS, DigitalOcean, OVH, Hetzner, and a long tail of cheap VPS providers.

You can't eyeball this manually — you need IP-level data on every click. Adtraxo's fraud detection flags datacenter IP ranges automatically and tags each click, so a solo ad order that's 60% datacenter IPs shows up as a red block in your dashboard instead of something you have to reverse-engineer from a CSV.

Some legit traffic does come from corporate networks and VPNs. But if more than 20–25% of clicks originate from known hosting ASNs, the order is contaminated.

Red flag 5: identical user agents across hundreds of clicks

This one catches the lazy bot farms. Pull your click log and sort by user agent string.

Real traffic has variety — Chrome on Android, Safari on iOS, Edge on Windows, a handful of oddballs. You'll see dozens of distinct UA strings across a few hundred clicks.

Bot traffic often shows a single UA repeated 200 times, or a suspiciously narrow set of three. Watch specifically for:

  • Headless browser signatures (HeadlessChrome, PhantomJS, Puppeteer)
  • Ancient UA strings that don't match current browser versions
  • Mobile UA strings paired with desktop screen resolutions

Adtraxo's bot UA detection flags these on ingest, which means you see the problem while the campaign is running instead of after the seller has been paid.

Red flag 6: geo mismatch between what you bought and what arrived

You paid for US traffic. Your tracker says 40% of clicks came from India, Vietnam, and Nigeria.

This is one of the most common solo ad red flags because it's easy to hide — sellers buy cheap international traffic and resell it as tier-1. Check the geo breakdown per campaign. A small percentage of out-of-geo clicks is normal (VPNs, travelers). A 30%+ mismatch is not.

Adtraxo breaks down every campaign by geo and device, so you can compare the country mix against what the seller promised line by line.

Red flag 7: time-on-page under 3 seconds on every click

Humans read. Even bad landing pages get 8–15 seconds of attention before someone bounces. Bots load the page, fire the pixel, and leave.

If your analytics show a median time-on-page of 1–2 seconds across 150 clicks, those clicks were scripted. Pair this with a 0% scroll depth and you have a clean case.

Red flag 8: the seller refuses a custom tracking domain

Legitimate sellers don't care what domain your tracking link uses. They paste it into their email and send.

Sellers running bot traffic sometimes push back on custom tracking domains because their setup depends on redirect chains they control. Any resistance to "here's my tracking link, here's my sub-ID structure" is a solo ad red flag worth walking away from.

Adtraxo supports custom tracking domains on the Pro plan, which matters here for two reasons: branded links get higher click-through from real subscribers, and a domain you own can't be spoofed or intercepted mid-chain.

Red flag 9: the click count lands on a suspiciously round number

You ordered 200 clicks. You got exactly 200. Not 197, not 214 — 200.

Real sends don't hit exact numbers. Clicks depend on opens, timing, and how many people were awake. A seller who delivers precisely the number you paid for, every single time, is generating clicks to a target rather than reporting what actually happened.

This is the weakest of the nine on its own, but it's a strong confirmation when combined with any of the others.

How to prove bot traffic before you pay the seller

Red flags are circumstantial. To get a refund — or to justify never buying from that seller again — you need evidence. Build it in this order:

  1. Set up tracking before the send. Unique tracking link, sub1 tagged with seller and order ID. No exceptions.
  2. Capture click-level data. Timestamp, IP, user agent, geo, referer, sub-IDs. If your tracker doesn't store this per click, switch trackers.
  3. Run the fraud checks. Datacenter IP percentage, UA uniqueness, IP velocity (same IP clicking multiple times), invalid referers.
  4. Compare against the seller's claim. Delivered clicks vs. promised clicks, geo vs. promised geo, send window vs. actual click window.
  5. Document it. Screenshot the dashboard, export the CSV, write a two-paragraph summary. Sellers refund faster when you lead with data.

This is exactly the workflow Adtraxo was built for on the solo ad side. Click-level fraud flags, per-campaign geo and device breakdowns, and sub-ID reporting all live in one dashboard — so "prove it" takes ten minutes instead of an afternoon in spreadsheets. The guide to spotting fake solo ad clicks walks through the same evidence chain in more detail.

What to do when you find red flags

Don't argue. Document and move on.

Send the seller a short message with the numbers: click count, opt-in rate, datacenter IP percentage, geo mismatch. Ask for a refund or a replacement send to a different list. Sellers who run clean traffic will usually make it right — their reputation is the business. Sellers running bots will stall, deflect, or blame your landing page.

Either way, log the result. Over 10–15 orders you'll build a scorecard that tells you which sellers are worth repeat business. That process is covered in how to build a solo ad seller scorecard from your own data, and the negotiation angle — using your tracking numbers to get better rates or free test sends — is in how to negotiate with solo ad sellers using your own tracking data.

If you're still choosing where to buy in the first place, start with the best solo ad marketplaces in 2026 and how to vet a solo ad seller before you spend a dollar. And if you're weighing solo ads against paid networks entirely, solo ads vs paid ads for list building runs the cost-per-lead math. The full buyer's workflow lives in the solo ad buyer's playbook.

Frequently asked questions

How many solo ad red flags are enough to request a refund?

One hard flag — datacenter IPs above 25%, a click-to-opt-in rate under 5%, or zero sub-ID variation — is enough to open a refund conversation. Two or more soft flags (round click counts, no tail on the click curve, refusal of a custom tracking domain) together are equally strong. Lead with the numbers, not the accusation.

Can a solo ad seller fake clicks without me noticing?

Only if you're not tracking properly. If you use a plain link with no sub-IDs and no click-level data, yes — bot clicks look identical to real ones in your opt-in count. Once you pass sub-IDs and capture IP, user agent, and timestamp per click, faking traffic without leaving evidence becomes very difficult.

What's a normal click-to-opt-in rate for solo ads?

Between 15% and 45% for a well-matched offer and list, with the median landing around 25%. Anything below 10% is a warning sign and anything below 5% is almost certainly bot traffic. Niche matters — B2B and finance run lower than make-money-online and health.

Do I need a custom tracking domain for solo ads?

It's not mandatory, but it helps on two fronts. A branded domain gets better click-through from real subscribers, and it removes any dependency on a redirect chain the seller controls. If a seller refuses to accept your tracking link, treat that as a red flag on its own.

How do I track solo ad clicks properly?

Generate a unique tracking link per order, tag it with a sub-ID that identifies the seller and order date, and store click-level data including IP, user agent, geo, referer, and timestamp. Adtraxo handles all of this out of the box, including fraud detection on the Pro plan, so you can audit any order in minutes.

Stop guessing whether your solo ad clicks were real. Set up a tracking link with sub-IDs, turn on fraud detection, and let the data tell you which sellers are worth buying from again. Start free at adtraxo.com — 10 links and 5,000 clicks a month costs nothing, and Pro at $49/month gives you unlimited everything plus the fraud detection that catches most of these red flags automatically.

Track your affiliate campaigns for free

Clicks, conversions, fraud detection — all in one tracker.

Get started free →

Not ready for an account? Get the Tracking Domination Playbook — free, just your email.