HomeFree tools › Server log analyser

Server log analyser

Your access log is the only record of what search engines and AI crawlers actually did on your site, rather than what you hope they did. It is also a list of your visitors' IP addresses, which is why this reads it in your browser and uploads nothing.

Runs in your browser. Nothing is sent anywhere

Your access log

Apache or nginx, combined or common format, plain or gzipped. The file is read in this tab and never leaves it. Logs hold your visitors' IP addresses, which is exactly why this one does not upload anything.

Drop an access log here or press to choose one. Usually access.log, access_log or yourdomain.com-ssl_log, often gzipped. Large files are fine: they are read in chunks, so nothing has to fit in memory at once.

Questions people ask about this

Is my log file uploaded anywhere?

No. The file is opened with the browser's own File API and read in chunks inside the page. Nothing is transmitted, there is no server to transmit it to, and you can confirm it by opening your browser's network tab: the page makes no requests while it works. This matters more here than on the other tools, because an access log contains the IP addresses of everyone who visited you, which in most jurisdictions is personal data.

What log formats does it read?

The combined and common formats, which is what Apache and nginx write by default and what almost every shared host produces. It copes with the usual variations: a virtual host name in front of the address, a missing referer or user agent, IPv6 addresses, and quotes escaped inside a user agent string. Gzipped logs are unzipped in the browser.

Is there a size limit?

No. The file is streamed and only counters are kept, never the individual lines, so memory use stays flat whether the log is five megabytes or five hundred. Very large files simply take longer to read.

Why does it not tell me which crawlers were genuine?

Because a log cannot answer that, and a tool that claims otherwise is guessing. Any request can put Googlebot in its user agent. Confirming identity means a reverse DNS lookup on the address followed by a forward lookup on the name that comes back, and a browser cannot make DNS queries at all. So the tool flags the claims that contradict themselves, such as one address that is both Googlebot and a person browsing in Safari, and gives you the command to settle the rest.

What should I actually look for in the results?

Three things, in order. Errors crawlers hit, because a search engine handed a 404 or a 500 has spent your crawl budget on nothing. Then where the crawling went, because a site whose crawl budget is mostly parameter URLs and static files has a structural problem. Then crawling by day, where a sudden stop usually means a robots.txt change or an outage nobody noticed.

Can I see which AI crawlers are taking my content?

Yes, and they are listed separately from search engines for that reason. GPTBot, ClaudeBot, PerplexityBot, CCBot, Bytespider and others appear with their own request counts. Whether you want to allow them is a decision, not a setting: some fetch to train models, some fetch to answer a question a person just asked, and the same robots.txt rule treats both the same.