What is inside a HAR file
HAR stands for HTTP Archive. Browsers write it from their Network panel, and the format is plain JSON with one object per request. Each entry records the URL and method, the request and response headers, cookies, the query string, the status code, how many bytes moved, and a timing breakdown in milliseconds. Depending on how it was exported, it can also hold the request body (form posts, JSON sent to an API) and the full response body.
That is why support teams ask for one. A screenshot shows that a page failed; a HAR shows which request failed, what the server said back, and how long each step took.
Ways to open a HAR file
| Option | Good for | Watch out for |
|---|---|---|
| HARscope (this page) | A fast read: findings, waterfall, headers, cookies, and a redacted copy to send on | Very large files with full bodies need a few seconds and enough memory |
| Your browser's DevTools | Chrome and Edge have an Import HAR button in the Network panel; Firefox has Import HAR in its Network toolbar menu; Safari's Web Inspector has Import | No summary of problems; you scan the list yourself |
| A text editor | Searching for one string, such as a request ID | Thousands of lines of JSON, nothing visual |
HARscope reads the file with your browser's File API. The analysis runs in JavaScript on your device, and the site has no upload endpoint, so the file stays where it is.
How to read it, in order
- Start with the Findings tab. It lists failed requests, likely CORS blocks, redirect chains, mixed content, slow server responses, large or uncompressed payloads and cookies a browser will refuse, worst first. Each finding links to the requests behind it.
- Check status codes. In the Requests tab, tick Problems only. Red rows are status 0 (no response) or 4xx/5xx. A 401 or 403 near the top usually explains everything after it.
- Read the waterfall left to right. Each bar starts when the request started and is coloured by phase. Long amber sections are time spent waiting for the server. Long teal sections are downloads. A gap with nothing running means the page was busy doing something else, usually JavaScript.
- Open the request that matters. Click a row to see its URL, headers, cookies, query string, request body and response body, plus a sentence on why it was flagged. The response body of a failing API call often contains the actual error message.
- Look at Domains. If one third-party host is slow or failing, it shows up there as a single line.
When a HAR opens but looks wrong
- It has only a few requests. Recording started after the problem happened, or Preserve log was off and a navigation cleared the list. Record again with the Network panel open before reproducing.
- Response bodies are missing. Some exports leave content out. HARscope tells you when no bodies are present. Timing problems can still be read; error messages from APIs cannot.
- There are no cookies or Authorization headers. Chrome and Edge export a “sanitized” HAR by default that leaves out Cookie, Set-Cookie and Authorization headers. That is usually what you want when sharing, but it hides sign-in problems.
- It will not open at all. HARscope says why: not JSON, cut short while saving, or no
log.entries. A file that was truncated during download needs exporting again.
Times and sizes
Times are milliseconds from the first request in the file. Transferred is what went over the network including headers and compression; Size is the decoded body. A big gap between the two means compression worked. If they are nearly equal on a large text file, the server sent it uncompressed, and HARscope flags it.
Related: How to create a HAR file · HAR waterfall timings, explained · What a HAR file can tell you is wrong