PrettifyPrettify

JSONL Viewer for JSONL and NDJSON Files

Open a JSON Lines file and read it as a table, a tree, or raw text. Each line is one JSON value, and Prettify turns the file into rows you can sort and filter. Everything runs in your browser, so log exports and data dumps stay on your device.

Result
A formatted preview shows here as you paste.
Runs in your browser. Nothing is uploaded.

What the JSONL viewer does

JSON Lines, also called NDJSON, stores one JSON value per line. Logs, data exports, and streaming APIs use it. A plain JSON viewer rejects such a file, because the whole file is not one JSON document.

Prettify detects JSONL and shows it as JSON, with a JSON Lines badge. Detection needs two or more non-blank lines, and the first lines must each parse as JSON alone. A .jsonl or .ndjson file opens as JSONL. A pretty-printed object that spans several lines stays plain JSON.

Prettify reads the lines into an array, so the structured views work. The box at the top of this page accepts JSONL and summarizes it as an array.

Key features

Viewing JSONL is free. The features below need no Pro license. Each one works on the lines of the file as a single array, and none of them sends the file anywhere.

  • Table view makes each line one row, and you can sort and filter the rows.
  • Tree and Raw views show the same lines as a collapsible tree or as text.
  • Search runs across the whole file, as plain text or as a regular expression.
  • One bad line does not stop the rest. Each good line parses, and each bad line stays in place as raw text and appears in the Problems panel.
  • Large numbers stay exact. Bigints and Snowflake IDs survive parse, view, and write, byte for byte.
  • Prettify writes JSONL back as one compact JSON value per line, not as a JSON array.
  • Convert turns the lines into JSON, YAML, CSV, or XML. Converting to a non-JSON format can lose number precision, and Prettify warns you when it does.

How to use it

Paste a few lines into the box on this page for a quick look, or open the whole file in the editor. The box takes up to 512 KB; larger input goes straight to the editor.

  1. Paste your JSONL into the box at the top of this page, or select Try an example.
  2. Read the result panel. It shows one value per line, with a summary such as Array of 5 items.
  3. Select Open in full editor. The editor opens in Table view.
  4. To open a whole file instead, drag it onto the editor, or select Open file on the Dashboard.
  5. Sort and filter the rows in Table view.
  6. Switch to Tree or Raw with the view tabs at the top of the editor.
  7. Open the Problems panel to see any line that failed to parse.

Worked example

Say a log export has three lines. The first has an ID too large for a JavaScript number. The second is missing its closing brace.

The box shows the result below. Good lines are written compactly, and the large ID is unchanged. The broken line is kept exactly as you pasted it, and the summary still counts three items.

Input
{"id": 9007199254740993, "event": "login", "user": "ana"}
{"id": 2, "event": "logout", "user": "ana"
{"id": 3, "event": "login", "user": "ben"}

Result
{"id":9007199254740993,"event":"login","user":"ana"}
{"id": 2, "event": "logout", "user": "ana"
{"id":3,"event":"login","user":"ben"}

What happens to the broken line

The box does not flag the broken line. The editor does. Open the document there, and the Problems panel reports line 2 as a parse error. The other two lines still parse.

The document counts as invalid only when every non-blank line fails. An edit, sort, copy, or download writes the broken line back as it was, so Prettify never drops your data. Fix the line, and the problem clears.

Common use cases

JSONL appears wherever a program writes one record at a time and never closes a surrounding array. These are the jobs people bring to a viewer, from reading logs to cleaning up exports.

  • Read an application log that writes one JSON object per line.
  • Inspect a data export from a database, a warehouse, or a machine learning dataset.
  • Look at the output of a streaming API that sends newline-delimited JSON.
  • Find the one malformed line in a large file without losing the rest.
  • Convert a JSONL export to CSV, so you can open it in a spreadsheet.

Free and Pro

Tree, Raw, and Table views, search, and format conversion are free for JSONL. Three tools are Pro: the Diagram view, which draws the data as a node graph, jq filters, and Diff / Compare. Free users get one free try of each Pro tool per day.

Pro costs US$19.99, paid once, with lifetime access and no subscription.

Frequently asked questions

What is the difference between JSONL and NDJSON?

Nothing that matters for viewing. JSON Lines and NDJSON both store one JSON value per line. Prettify opens .jsonl and .ndjson files the same way.

Why does my JSONL file show as JSON?

Prettify detects JSONL on its own and shows it as JSON, with a JSON Lines badge. JSONL does not appear in the format pickers, because detection handles it.

Is the JSONL viewer free?

Yes for viewing. Tree, Raw, and Table views, search, and conversion are free. The Diagram view, jq filters, and Diff / Compare are Pro, with one free try per day.

What if one line in my file is not valid JSON?

The rest of the file still loads. The bad line stays in place as raw text and is listed in the Problems panel. Only a file where every non-blank line fails is invalid.

Is my JSONL file uploaded?

No. Parsing and viewing run in your browser. Prettify uploads a document only if you create a Pro short share link.

Related tools