See what really happens on your website
Analytics tools only see visitors who run JavaScript and accept cookies. Your server's access log sees every single request: real people, Googlebot, AI crawlers, broken links, slow pages and attack attempts. This free log analyzer turns that raw file into a clear report in seconds. Drop in a log from Nginx, Apache, LiteSpeed, IIS, CloudFront or Cloudflare and see your traffic, errors, bots and security issues, with filters that work across the whole report.
Everything happens in your browser. Server logs contain IP addresses and private URLs, so the tool never uploads them. It reads even large files in pieces on your own computer: a 200 MB log with a million lines takes only a few seconds.
How to analyze a server log
- Download your access log. On your own server it's usually
/var/log/nginx/access.log,/var/log/apache2/access.logor/var/log/httpd/access_log. On IIS look ininetpub\logs\LogFiles. On shared hosting, look for Raw Access Logs or Access logs in your control panel. - Drop it on the tool. Add several files at once, such as a week of rotated logs, and keep
.gzfiles compressed: they are unpacked on the fly. The format is detected automatically. - Read the report. Start with the overview, then open Pages, Errors, Bots, Visitors, Security, Speed or the raw log lines.
- Filter and drill down. Narrow everything to a date range, a status code, humans or a single bot, a URL or an IP. Select any row in a table to filter by it.
- Export. Every table can be downloaded as CSV, and the Log lines tab exports all requests that match your filters.
Don't have a log at hand? Press Try a sample log to explore a week of realistic traffic first.
What the report shows
Overview
Requests per day, unique visitors, the share of bot traffic, the error rate, data sent and response times, plus a traffic chart that separates people from bots and marks errors. You also see your status codes, who is visiting and your top pages and referrers, with search engines, social networks and AI assistants like ChatGPT and Perplexity labeled separately.
Pages
Every URL with requests from people and bots, errors, data and average response time. Hide images, CSS and JavaScript with one click, or group URLs that differ only by their query string.
Errors
All 404 and 410 URLs with the page that linked to them, so you can tell a broken link on your own site from a mistyped address. Server errors (5xx) are listed with their codes and when they last happened.
Bots & crawlers
The tool recognizes about 90 crawlers and bot types: Google's crawlers, Bingbot, Applebot, Yandex and Baidu, AI crawlers such as GPTBot, ClaudeBot, PerplexityBot, CCBot and Bytespider, SEO tools like AhrefsBot and SemrushBot, link previews, uptime monitors and scripts. For each bot you see requests, pages crawled, errors, data and when it last came.
Visitors & IPs
The busiest IP addresses with their user agent, error rate and first and last visit, plus the browsers, devices and operating systems of your human visitors.
Security
Requests that probe for .env files, .git folders, phpMyAdmin, WordPress logins, backups and known exploits are collected in one place. If one of those URLs answered 200 OK, the tab warns you, because a public .env or .git/config file can leak passwords. You also see which IPs sent the most requests per minute, which helps when you set rate limits.
Speed
When your log includes response times, you get the median, p95 and p99, a distribution chart and the slowest URLs. To add timing, append $request_time to your Nginx log_format or %D to Apache's LogFormat; IIS and CloudFront logs include it already.
Built for SEO: crawl budget and fake Googlebots
Search Console tells you how many pages Google crawled, but not which ones or how often. Your log does. The Bots tab shows how much of Googlebot's time goes to redirects, errors, URLs with query strings and static files, and which URLs it crawls most. That's where crawl budget is won or lost on larger sites.
Anyone can put “Googlebot” in their user agent, and scrapers often do. The tool checks each Googlebot request against Google's crawler IP ranges and lists the IPs that only claim to be Googlebot. For an exact check, paste Google's official googlebot.json IP list into the tool and it uses every published range.
Supported log formats
| Server or service | Format |
|---|---|
| Nginx, Apache, LiteSpeed, OpenLiteSpeed, Caddy, Traefik | Combined and common log format, including virtual-host prefixes and a response time at the end |
| Microsoft IIS | W3C extended log with a #Fields header |
| Amazon CloudFront | Standard logs (W3C, tab-separated) |
| Cloudflare Logpush, Caddy, Nginx JSON and similar | JSON lines with common field names |
Files can be plain text or .gz. Lines that don't fit the detected format are skipped and counted, and you can view examples of them.
Private by design
IP addresses in server logs count as personal data in many countries. Because this analyzer runs entirely in your browser, the log is never sent to us or to any third party: there's nothing to upload, no account and no storage. Close the tab and the data is gone.
Tips for useful results
- Combine several days or weeks of rotated logs for a clearer picture; one day can be misleading.
- If your site sits behind a CDN or proxy, log the visitor's real IP (for example from
X-Forwarded-For), otherwise every request seems to come from the proxy. - Check the Errors tab after every redesign or URL change to catch broken links before visitors and Google do.
- Use the Times menu to switch between the log's time zone, UTC and your own time.