NDJSON

What is an NDJSON file?

One JSON object per line. What log pipelines and data exports stream.

What NDJSON is

NDJSON is a plain-text format you can open in any editor. It is used for moving data between programs and streaming.

The extension is .ndjson, and the full name is Newline-Delimited JSON. Both matter less than what the file can hold, which is what the rest of this page is about.

Where NDJSON came from

It dates from 2013.

Age is worth knowing here for one practical reason: the older a format is, the more programs have had time to learn it.

The specification is public

Anyone can implement it without asking permission or paying a licence, which is why it turns up in so many programs and why files written twenty years ago still open.

Nothing is thrown away

NDJSON stores its content exactly. Saving it again changes nothing, so it can be opened, edited and re-saved as often as you like without accumulating damage — which is what makes it a working format rather than a delivery one.

What else it can carry

NDJSON can hold a layout that lets it start playing before it has finished arriving.

That matters mostly when converting: whatever the target cannot hold is dropped, usually without a warning.

There is nowhere to leave a note

NDJSON has no comment syntax. Anything explanatory has to live outside the file, which is worth knowing before choosing it for something a human will edit by hand.

What opens NDJSON

jq and pandas read it, and so do most programs of the same kind.

If a file will not open, the format is rarely the problem — it is more often that the program predates it. Converting to something older is the reliable way past that, and it is what the rest of this site is for.

Opening it in a browser

No browser reads it.

That is the single most common reason to convert it: not that the format is bad, but that the place you want to show the file cannot read it.

It is a working format

NDJSON is meant to be opened and changed. Keep the file in this format for as long as the work is going on, and export from it whenever a finished copy is needed.

The facts, in one place

Identifiers and provenance for the NDJSON format.
Extension.ndjson, .jsonl
Media typeapplication/x-ndjson
First published2013

Converting NDJSON to something else

Converting something else to NDJSON

Formats worth considering instead of NDJSON