HAR File Analyzer
Inspect a recorded network session in your browser. Open a local HAR file, filter its requests, compare recorded timings and sizes, then choose which fields to remove from a HAR or CSV export.
No file selected. Maximum 50 MB (50,000,000 bytes), 20,000 entries and 64 JSON nesting levels. Plain UTF-8 JSON only.
Time window is the inclusive recorded start offset from the first known timestamp. Numeric filters exclude entries with an unavailable value. Filters do not change the source.
These choices apply to both export buttons. No file content is saved in browser storage.
Unknown extensions and comments are omitted. Redaction is not complete anonymization: hostnames, paths and retained headers may still identify a session. Review the output before sharing it.
Choose a local HAR file, or analyze the original example.
- Matching requests
- Not analyzed
- Known durations
- Awaiting file
- Response body bytes
- Awaiting file
- Summed known duration
- Awaiting file
Worked examples
- Unavailable. It is excluded from known timing totals.
- Both entries and their recorded order are retained.
- Cookie and authorization fields are removed; query values become [REDACTED].
Accuracy. Analyzes recorded data; missing timings remain unknown and are not zero. Logs may contain secrets; none is uploaded or fetched.
Common questions
- Which HAR files can I open?
- Open an uncompressed UTF-8 JSON file whose log declares HAR version 1.2. The limits are 50,000,000 bytes, 20,000 entries and 64 JSON nesting levels, with an additional structural memory limit for unusually complex files. All entries must pass validation; invalid rows are reported by entry number instead of being silently skipped. The original example is available without selecting a file.
- Are imported URLs requested or response bodies rendered?
- No. File reading, analysis and export preparation happen locally in a background worker. URLs, headers and response bodies are displayed as text. The analyzer never follows imported links, renders response markup, decodes embedded bodies or uploads the recording. File contents and export settings are kept in memory, with no browser-storage persistence.
- What do unavailable timings and sizes mean?
- Missing fields and the HAR -1 sentinel remain unavailable. They are excluded from known-value totals and shown with known and unknown counts. Zero is a recorded value. The waterfall uses the recorded entry.time total, with starts relative to the earliest known timestamp. SSL is part of connect timing and is never added twice. Summed request durations include overlap and do not measure elapsed page time.
- How do filters and request comparisons work?
- Filter by domain, HTTP status or status class, MIME type, inclusive start-offset window, recorded total duration and response body bytes. Numeric filters exclude entries whose relevant value is unavailable. Entry numbers always refer to original recording order. The comparison shows two entries' statuses and the second-minus-first duration and body-size differences; a difference is unavailable when either input is missing.
- How are redirect chains reconstructed?
- Recorded 3xx targets from redirectURL or Location are matched to the next later entry with the resolved URL within the current selection. File order is preserved even when timestamps are equal or out of order. Missing targets, repeated URLs and ambiguous matches are labelled. Converging paths reference the shared steps in an earlier chain. No redirect is fetched, and the result describes the recorded evidence rather than proving browser causality.
- What does the default redacted export remove?
- The default removes request and response cookie arrays, Cookie and Set-Cookie headers, Authorization and Proxy-Authorization headers, URL credentials, URL fragments, request postData and response body text. Query values become [REDACTED] in URLs and queryString fields, including redirect and supported URL-bearing headers such as Location and Referer. Unknown extensions and comments are omitted. Each removal category has an explicit checkbox.
- Is a redacted HAR anonymous, and what do the downloads contain?
- Redaction is not complete anonymization. Hostnames, paths, server addresses and retained headers may still identify a session or contain secrets, so review the output before sharing. HAR exports retain selected standard request fields in original order, with recorded sizes describing the original session. CSV exports one summary row per selected request, with quoted fields and spreadsheet formula protection. A selected entry without a start timestamp prevents HAR export; use CSV or filter out unavailable starts.
- Can I cancel analysis or inspect large recordings?
- Analysis can be canceled, and replacing a file terminates its earlier worker. Requests and waterfall rows are paged by 100, domains by 100, chains by 25 and long chains by 100 steps. Long text fields show a clearly labelled 6,000-character display limit; export retains fields permitted by your choices. Filter or redaction edits cancel pending exports. If processing runs out of browser memory, use a shorter recording or narrower export selection.
Analyzes recorded data; missing timings remain unknown and are not zero. Logs may contain secrets; none is uploaded or fetched.