StoriesOctober 14, 20266 min read

Your AI counts robots as visits: 413 of 564 weren't people

We measured our website's real traffic for a month and 413 of 564 visits were automated programs, not people. Here's how we caught them and what changes if you, or an AI, decide based on that unfiltered number.

Pol

Fundador de AutoBoost

AI marketingData quality
Your AI counts robots as visits: 413 of 564 weren't people

Your AI marketing tool might be analyzing the wrong number without anyone noticing: of the 564 visits our website logged over the last 30 days, 413 were automated programs, not people. Almost three out of four. We found it while auditing where our traffic was coming from after publishing, and the number forced us to revisit months of decisions made on a figure that was never what we thought it was.

This isn't a rare case, and it isn't unique to AutoBoost. It's what happens to any business that posts on social media and then checks a traffic dashboard to decide where to invest time or budget, whether an AI is helping interpret the number or not.

The finding: three out of four visits weren't people

When we audited the site's traffic, the pattern was obvious once we looked calmly: spikes of "visits" landing in the exact second a link went out on LinkedIn or Facebook, not whenever a person actually had time to read it. The explanation is simple and almost nobody accounts for it: when you publish a link, the platforms themselves (LinkedIn, Meta) send a program to open it instantly to generate the preview card (the thumbnail with title and image you see in the feed). That program loads the full page, exactly like a person would, and a standard visit counter doesn't tell the two apart.

On top of that, there are other non-human visitors almost no small business filters out:

  • Crawlers from search engines other than Google (SEO tools, generative AI, aggregators).
  • Uptime monitoring programs ("is the site still alive?").
  • Security bots that automatically probe forms and links.

None of these "visitors" is ever going to become a customer. All of them add to the counter you use to decide whether a channel is working.

Why it matters, especially if an AI is deciding with that data

More and more small businesses ask an AI to analyze their metrics and tell them which channel to keep investing in: "which brings more visits, LinkedIn or Instagram?" The problem isn't that the AI reasons poorly, it's that you're feeding it dirty data. If LinkedIn automatically generates more bot traffic than Instagram (because its preview crawler is more aggressive, or because you post there more often), the AI will recommend investing more in the channel that's actually just sending you more fake traffic.

It's the same trap we already hit with channel data: in another post we told the story of how our AI couldn't tell which channel actually brought in money until we unified the dashboards. This time the data was already unified in a single dashboard, and it was still the wrong number: unifying without cleaning just centralizes the error.

There's also a second, subtler effect: part of the traffic that showed up as "no source" (what any tracker labels when it can't identify where a visit came from) was actually people arriving from Google, the system just wasn't recognizing it as such. This inflates the wrong channel from the other direction: it makes the search engine look like it brings less than it really does, which is usually the channel that converts best because the person was already looking for something specific.

How to detect a bot without blocking a single real person

We built the detection in two layers, because neither one alone is enough:

1. On arrival, from what the browser itself says

Every visit sends a header (user-agent) that identifies the program making the request. LinkedIn and Meta's preview crawlers identify themselves by name, just like well-known search engine bots. This layer catches the ones that declare themselves, which is more than it sounds.

2. Daily, from how it behaves

Bots that don't declare themselves (the ones mimicking a normal browser) get caught by pattern: a "visit" that loads the page in milliseconds, never moves the mouse or scrolls, or repeats the exact same sequence of pages many times a day doesn't behave like a person reading a blog post. This layer runs once a day over the previous day's traffic and flags, with a delay, what the first layer couldn't catch in real time.

Neither layer deletes anything: they mark the record as a bot and exclude it from dashboards, without losing the raw data in case it's needed later.

Checklist: before deciding based on your traffic data

If you manage your own social media and website, with or without AI help, check this before moving budget from one channel to another:

  • Does your visit counter tell a preview crawler apart from a person?
  • When comparing two channels, do you know whether both generate the same amount of automated traffic, or do you assume they're comparable?
  • Do you check "no source" traffic to see if it's actually a known channel (usually Google) mislabeled?
  • Does the AI (or the person) deciding where to invest see the filtered number, or the raw one?
  • Do you know what percentage of your total traffic is automated? If you don't, it's probably higher than you think.
SignalBot visitHuman visit
TimingLands within the exact second of publishingSpread over hours or days
Time on pageMillisecondsSeconds or minutes
InteractionNone (no scroll, no clicks)Scroll, clicks, sometimes a form
User-agentIdentifies a known crawler or botA normal browser
RepetitionSame exact pattern, many times a dayVariable

The decision rule

If you decide where to invest in marketing by looking at a "visits" or "impressions" number without first filtering out automated traffic, you're not comparing channels: you're comparing how aggressively each platform crawls the link you posted, which is a very different thing. And if you feed that number to an AI to recommend where to invest, the AI will be exactly as accurate as the data you gave it, not a gram more.

At AutoBoost we apply the same logic of separating real signal from automated noise in client projects, like the AI data platform that reconstructs sales across several pharmacies: before an AI reasons over a piece of data, someone has to have decided which part of that data is real. It's the same work, just that this time the data was our own traffic.

If you manage marketing with AI and don't know how much of your traffic is automated, it's probably not a small amount. If you'd like us to help you clean up that data before an AI (or you) decides based on it, get in touch.

Share article
Your AI counts robots as visits, not people | AutoBoost