Trafficsort · free log checker

Who's really in your nginx logs?

Paste access log lines to see humans, search engines, AI crawlers, scanners and fake bots. Everything runs in your browser. Your logs are never uploaded.

Your log lines

Works with nginx's default combined format, with or without $host in front. Reads up to 200,000 lines, including .gz files. To grab recent lines on your server:

sudo tail -n 20000 /var/log/nginx/access.log

This was one server, one time.

Trafficsort does this continuously for all your sites. It verifies every bot, shows what each one costs you in bandwidth, blocks what you choose with safe nginx presets, and emails you when a new crawler or a fake-bot surge shows up. One dashboard covers up to 20 sites.

Join the waitlist
How the checker decides
  • Known crawlers are matched by user agent, then their IP is checked against the operator's published IP list. In the IP list: verified. Outside it: fake.
  • Unverified means the operator publishes no IP list this page can use (for example Bytespider), or the lists did not load. A browser cannot do reverse DNS, so Applebot, YandexBot and similar stay unverified here.
  • Scanners are flagged by probe paths and scanner tool names. On a real WordPress site, humans also visit /wp-login.php, so check the IPs before blocking.
  • Browser means the request claims to be a normal browser. That includes real people, AI browsers and scrapers that fake a browser user agent. Logs alone cannot fully separate them.
  • Bandwidth is the response body size nginx logged ($body_bytes_sent).