Is a JSON linter different from a validator?
Usually not. A JSON linter, checker or validator answers one question: is this valid, and if not, where does it break? Paste or drop a file, and you get either a clean parse or the line and column of the first thing the parser could not accept.
"Lint" comes from C tooling, where it usually means style rules on top of correctness. Some JSON linters also check things like key order. This page checks that the JSON parses.
It is a JSON editor, not a one-way check
The panel is a real editor: codeMirror, with syntax colouring, folding, line numbers and bracket matching, so the usual loop of copying broken JSON somewhere else, fixing it, and pasting it back does not apply. Fix it in place and it revalidates as you type.
For the mistakes that are mechanical rather than interesting: a trailing comma, single quotes, an unquoted key. There is a repair button that applies the obvious fix. Try repair rewrites the document with the fix and lays it out with indentation. It never guesses at your data, only at your punctuation.
When the message itself is the confusing part
Parsers are terse and often point a line or two past the real mistake, because that is where they finally gave up rather than where you went wrong. If the message is what has you stuck, the JSON error reference explains the common ones (across JavaScript, Python, Java, PHP, Go and C#) with a broken sample and the fix beside it.
Common mistakes and the messages they cause:
New to the format itself? What is a JSON file covers what it is and the six types it has, and how to open a JSON file covers getting one open on any device.
Once it parses
The JSON formatter pretty-prints it, the viewer opens it as a tree you can search and copy paths out of, and JSON compare diffs two documents as data rather than as text, so reordered keys stop reading as changes.
Nothing you paste is uploaded
Validation runs in your own browser. There is no upload step and no server round trip for your content, which matters because the JSON people need to validate is usually a config file or an API response with credentials in it. The claim is asserted by tests that watch the network on this page, not just written here.