Attribution

Bot and referrer spam: how to filter your analytics

Ownlytics team · · 6 min read

Bot and referrer spam are visits that no buyer made: scripts that load your pages, or fake referrer entries that exist only to get you to click. You cannot block all of them, but you can spot most with five checks and stop letting them steer your decisions.

yourapp.comToday7d30d9 online
SourceVisitorsSalesRevenue
Ggoogle.com4,43314$686
Xx.com3,1009$441
?free-seo-traffic.example2,2040$0
?buy-visitors.example1,3700$0
Ynews.ycombinator.com9803$147

Fig.Spam referrers: plenty of visitors, no sales. Sample data, not a real site.

What counts as bot traffic and what counts as referrer spam?

They are two different problems, and the fix differs.

Bot traffic is real HTTP requests from software. Some bots are useful (search crawlers, link preview fetchers). Others scrape, probe for login pages, or run uptime checks. Most simple bots do not run JavaScript, so a JavaScript tracking script never sees them. The ones that do run it, such as headless browsers, are the ones that can still show up in your charts.

Referrer spam is a fake or misleading source. Someone sends a request that claims to come from a page of theirs, hoping you see the domain in your sources list and visit it. It can also be a legitimate-looking link that sends a burst of low-quality visits.

Neither is a reason to distrust analytics entirely. They are a reason to look at traffic quality, not just traffic volume.

How can you tell a visit is probably fake?

Real people are messy. Bots are uniform. Look for these five patterns in your own data.

  1. A spike with no cause. A tenfold jump in a single day, with no post, launch or email behind it, is rarely a surprise fan base.
  2. Zero depth. Every visit lands on one page, stays for 0 seconds, never scrolls. Real visitors vary. If scroll and reading time (see engagement) are flat across the spike, be suspicious.
  3. One odd source or country carrying the surge. Check whether the extra visitors share a referrer, a device type or a location that has never mattered before.
  4. Round-the-clock regularity. Humans have waking hours. A steady flow at 3 a.m. in your main market is a flag. The peak hours view makes this pattern easy to see.
  5. Traffic without revenue, forever. Any source that sends many visits and never a sale is not proof of a bot, but it is proof that the visits do not matter for decisions.

The most reliable bot test for a seller is a payment test. If a source sends thousands of visits and zero customers over weeks, treat its visits as noise whether or not they are technically bots.

Example (made-up numbers for illustration)

Your site normally gets about 400 visits a day. One Tuesday it gets 3,400.

SourceVisitsAvg. reading timeSales
Normal sources combined4101m 40s3
One unknown referrer2,9900s0

The unknown referrer accounts for 88% of the spike, every visit read for no time at all, and nothing sold. You would exclude that referrer when judging the day, and you would not conclude that your pricing page suddenly became popular.

What should you do about it?

Work from the cheapest fix to the most involved.

yourapp.comToday7d30d9 online
Visitors3,619+42.1%
Revenue$2,226+67.0%
Conversion0.41%+8.4%
Revenue/visitor$0.11+17.6%
1.4k7000
SourceVisitorsSalesRevenue
Xx.com6,2479$441
Ggoogle.com4,43314$686
@newsletter1,1307$343
Ynews.ycombinator.com2,0153$147
Cchatgpt.com1,4114$196
↗Direct · typed or bookmark1,2092$98

Fig.The dashboard after filtering them. Sample data, not a real site.

What about the visits you cannot filter?

Some of it will stay. Headless browsers that look like real devices are hard to separate from real visitors, and any tool that promises perfect filtering is overselling. The practical goal is not zero bots. It is that bots stop distorting your choices.

That is why we suggest tying decisions to outcomes. Conversion rate and revenue per visitor stay meaningful even when raw visits are inflated, because a bot adds to the denominator but never to the revenue. If revenue per visitor falls sharply on a day with a spike, that tells you the spike was probably not customers.

When this doesn't apply

If your site has little traffic, a handful of bot visits can change the percentages, but not the story. Do not spend an afternoon scrubbing 20 visits. Likewise, if you only care about payments and use a revenue-first view, you can let the traffic charts be approximate and trust the sales list instead.

Also note that AI crawlers and AI assistants are not spam. Some visits that look automated are users clicking citations from assistants. We cover that separately in how to track ChatGPT referrals.

At a glance

SymptomLikely causeFirst move
Sudden unexplained spikeScripted traffic or a bad referrerCheck the breakdown by source and country
Zero reading time, zero scrollHeadless botJudge the day by sales, not visits
Strange domain in referrersReferrer spamDo not click it; ignore it in reports
Traffic at odd hours onlyAutomated checksReview peak hours; block at the edge if steady
Visits that never buyLow-quality sourceRank sources by revenue
Your own visits inflating numbersNo self-exclusionExclude your browser and IP

Keep the signal clean

If you want to see sources ranked by revenue next to visits, the live demo shows how that comparison looks on a sample site.

FAQ

Do bots affect my conversion rate?

Yes. Bots add visits but not purchases, so they lower your conversion rate and revenue per visitor. This is another reason to read those numbers alongside the source breakdown and to look at a period without a spike.

Is referrer spam dangerous?

The spam entry itself is just a line in a report. The risk is visiting the domain behind it, which may be a scam or carry malware. Ignore it and rely on revenue-ranked sources.

Can I stop all bot traffic?

No. You can block known bad actors at your edge and exclude your own visits, but sophisticated automated browsers will still sometimes pass. Aim to make them irrelevant to your decisions rather than to remove them completely.

Does a visit with zero reading time always mean a bot?

No. Real people bounce too, especially from social links. Look at the whole pattern: a source where almost every visit has no scroll, arrives in a burst, and never buys is the suspicious one.

See the live demo · View pricing

Keep reading