DEV Community

Cover image for Why Bot Traffic Quietly Wrecks Your Channel Evaluation (and Your Budget)
toshihiro shishido
toshihiro shishido

Posted on • Originally published at revenuescope.jp

Why Bot Traffic Quietly Wrecks Your Channel Evaluation (and Your Budget)

A few days after launching my own site, I opened the analytics and saw one channel jump out: traffic from a video platform had become the single biggest source on a per-day basis. My first reaction was the obvious one — "great, that channel is working, let me lean into it."

It wasn't working. None of those visits were human. They were bots reading the URL I'd pasted into a video description, and I was about to pour effort into a channel that produced exactly zero people. This post is about why bots slip into your channel reports, what kinds of bots actually show up, the expensive misjudgment they cause, and the one simple lens — visits times dwell time — that I now use to catch them.

TL;DR

  1. Bots are 53% of all web traffic — they've passed humans. Thales's (formerly Imperva) report found 53% of all internet traffic was automated in 2025, surpassing human visits (47%) for the second year running — bad bots at 40%, good bots at 13% [1]. With generative AI, automated traffic keeps climbing.
  2. GA4 only auto-removes the known bots. It filters out bots and spiders on the IAB-managed blocklist (the known-bot list), but anything not on that blocklist — including bots that fake a browser user agent — passes straight through. You can't even see how much was excluded [2].
  3. The real loss hits both ad budget and SEO. A path full of 0-second bot sessions can look like your "fastest-growing channel." Believe it and you fund a dead ad path while underrating the boring channel that's actually making money — and on the SEO side, crawler-inflated pages pull effort toward keywords that produce nothing.

What bot traffic is, and why it lands in your channel reports

A bot is simply an automated program opening a page instead of a human. Search engines, social networks, link-preview tools, monitoring services — they all run them. Thales's (formerly Imperva) study put automated traffic at 53% of the entire internet in 2025, with humans at only 47% — the second year running that bots have outnumbered people [1].

In 2025, bots reached 53% of web traffic, surpassing humans (47%)

The reason bots end up inside your channel breakdown is that many of them get recorded as traffic with a referrer. Paste your site's URL into a social post or a video description, and a bot opens the page to build the preview card. To your analytics, that looks like "a visit from that social or video platform." So a brand-new channel appears to light up — even though no human ever arrived.

The kinds of bots that show up in your data

Not all bots are equal. Some are easy to filter, others blend right into your referral traffic.

The main types of bots that mix into your traffic

Search engine crawlers (Googlebot and friends) walk your pages to build search results. They're well-identified — their name sits in the user agent string — so tools like GA4 auto-exclude most of them.

The ones to watch are the bots that ride in on a referrer. Link-preview bots from social apps and chat tools open the pasted URL to generate a summary card. That shows up as "traffic from that platform," and some of them disguise themselves as a real browser, so analytics tools can't reliably strip them out. SEO crawlers, uptime monitors, price scrapers, and AI-training crawlers can all leak into your traffic too.

Where the real loss happens: bots throw off both ad budget and SEO

This is where it actually costs you. I nearly fell into the trap on my own site. One video-platform path looked like my highest-volume channel within a few days of launch, and I genuinely felt like it was taking off.

Then I dug in. All 9 of those sessions had a dwell time of 0 seconds. A crawler was mechanically opening the URL from my video description — not one human had visited. And I'd been treating it as my best-performing channel. The misjudgment runs along two axes:

  1. Ad investment — you judge a bot-inflated path as a "working channel" and shift budget toward a source with no humans and no revenue, while the boring channel that genuinely produces sales looks unimpressive and gets underrated.
  2. SEO — when crawlers from SEO tools and the like make one page look heavily trafficked, you keep pouring effort into pages and keywords that produce nothing, or write off a promising one as "ineffective."

Both start going wrong the moment you trust the raw traffic count at face value. (For another pitfall where search numbers go missing, see why your Search Console clicks don't add up.)

How to spot and exclude bots: read visits against dwell time

You can't get bots to zero, but you can catch them. The key is behavior. A human who opens a page stays at least a few seconds and often views more than one page. Most bots open a single page and leave at 0 seconds.

A matrix sorting channels by visits and average dwell time

Sort your channels by visits times average dwell time and their character separates cleanly:

  1. High volume, near 0-second dwell — suspect bot contamination first. Exclude it and check whether any human visits remain.
  2. High volume with real dwell — your genuine workhorse channel. Safe to invest in.
  3. Low volume but real dwell — small but real traffic. A candidate to nurture.
  4. Repeated hits to the same page at the same time — textbook machine access. Evenly-spaced, identical-page repeats are a bot signature.

GA4 does auto-exclude known bots, but only the ones on the IAB-managed blocklist (the known-bot list). Bots not on the blocklist, or bots hiding their identity, pass right through — and you can't see how much was excluded [2]. So "it's filtered automatically, I'm fine" simply doesn't hold.

Only after removing bots can you judge by revenue

The danger of bot contamination is that you'll never notice it if you only watch traffic counts. The reason I caught my own bad call was that I lined up average dwell time across channels and one path stood out as eerily 0 seconds. Had I only looked at visit counts, I'd still believe it was my best channel.

The same trap shows up in other metrics — traffic with no identifiable source getting dumped into Direct, or last-click attribution piling all the credit onto the final ad. Same root cause: deciding from the slice you can see.

So I've stopped stopping at the traffic count and instead trace each channel through to the revenue it produced. RevenueScope filters known bots up front by user-agent and server signals (about a quarter of our own traffic), and catches the cloaked ones by behavior — a single-page visit with zero dwell gets dropped — so the channels you judge are made of actual humans, scored by revenue rather than raw hits. Anchoring on revenue is the shortest path around this measurement trap.

So here's my question back to you: when one channel suddenly looks like your biggest source, do you lean into it right away — or do you check its average dwell time first and assume some of it might be bots?

(Sorry if my English sounds a bit off — Japanese native, with some help from Google Translate.)

References

Top comments (1)

Collapse
 
toshihiro_shishido profile image
toshihiro shishido

After performing a dwell-time analysis, I found that my landing page is flooded with bot traffic. It's incredibly disappointing....😢