HAR Validator

Paste a HAR file and check it against the HTTP Archive 1.2 spec — every missing or wrong-typed request, response, and timings field is listed with its exact JSON path, plus timing-total consistency. Runs in your browser; nothing is uploaded.

Validation report

About this tool

HAR Validator checks a HAR (HTTP Archive) file against the HAR 1.2 specification and tells you exactly what's wrong — or confirms it's clean.

A well-formed but incomplete HAR still parses as JSON, so a plain formatter won't catch a missing timings block — this tool does.

Everything runs locally in your browser via WebAssembly — your capture, which can contain URLs, cookies, and headers, is never uploaded.

Handy for

FAQ

What is a HAR file?

A HAR (HTTP Archive) file is a JSON log of a browser's network activity — every request and response, with headers, cookies, timings, and sizes. You can export one from Chrome/Firefox DevTools (Network tab → Save all as HAR) or proxies like Charles and Fiddler. This tool checks that the JSON matches the HAR 1.2 shape those tools are supposed to produce.

What does "valid" mean here — and what's a warning vs. an error?

An error is a structural spec violation: a missing required field or one with the wrong JSON type. Any error marks the file invalid. A warning is a consistency issue that doesn't break the structure — currently a mismatch between an entry's time and the sum of its timing phases. A file with only warnings is still valid HAR.

Why does timing-total checking say my times don't add up?

The HAR spec says an entry's time should equal the sum of its non-negative timing phases (blocked + dns + connect + send + wait + receive; ssl is counted inside connect, and a phase of -1 means "not applicable" and is excluded). Some exporters round each phase independently or track total time separately, so small drift is common — differences under 1 ms are ignored. Larger gaps usually mean the exporter computed time a different way. Turn the check off if you only care about structure.

Is my HAR uploaded anywhere?

No. Validation runs entirely in your browser through WebAssembly — the HAR never leaves your machine. That matters because captures routinely contain session cookies, auth headers, and full URLs.

Which HAR versions does it accept?

It validates against the HAR 1.2 field set, which is a superset of 1.1, so 1.1 files pass too. The reported version comes from your file's log.version; the required-field checks are the same across 1.x. Vendor-specific extension fields (anything beyond the spec) are simply ignored, not flagged.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool har-validator "{"log":{"version":"1.2","creator":{"name":"WebInspector","version":"537.36"},"entries":[]}}"

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/har-validator/?har=%7B%22log%22%3A%7B%22version%22%3A%221.2%22%2C%22creator%22%3A%7B%22name%22%3A%22WebInspector%22%2C%22version%22%3A%22537.36%22%7D%2C%22entries%22%3A%5B%5D%7D%7D&check_timings=true

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.