Bot detection is the set of techniques used to determine whether a request to a website or service originates from a real human or from an automated program (bot).
According to Imperva's 2024 report, almost 50% of internet traffic comes from non-human sources (bots). Bad bots (scraping, credential stuffing, DDoS attacks, and more) make up nearly one-third of all traffic.
For URL shortening services, bot detection is also important. Fraudulent bot clicks corrupt click analytics. If a campaign's shortened URL is mass-clicked by bots, the actual user count is overestimated and marketing decisions are made on false data.
Primary detection methods include behavioral analysis (mouse movements, scroll patterns, click intervals), fingerprint analysis (whether browser characteristics match typical human profiles), rate analysis (abnormally high request frequency from a single IP), JavaScript challenges (filtering bots that cannot execute JavaScript), and CAPTCHAs (challenges designed to be easy for humans and hard for programs).
Sophisticated bots mimic human behavior, so no single method is sufficient. Services like AWS WAF Bot Control, reCAPTCHA Enterprise, and Cloudflare Bot Management provide machine-learning-based bot detection.