Everything runs on your machine — your file is processed right here in your browser and never uploaded to any server.
Input
JSON
Loading...
Output
NDJSON
Loading...

About this tool

NDJSON, or newline-delimited JSON, stores one complete JSON object per line — a format built for data that flows: log pipelines, streaming APIs, and bulk loaders all prefer it because each line can be processed independently. This tool converts a standard JSON array into NDJSON, emitting every array element on its own line.

Data engineers use it to prepare files for BigQuery load jobs, which require newline-delimited input, and developers use it to reshape API exports for line-oriented tools like jq, grep, and awk. What starts as one large array becomes a stream of records you can filter and split at will.

How to use

  1. Paste a JSON array into the left editor, or use Load File to open an exported .json dataset.
  2. The NDJSON output is generated on the right in real time, one object per line, as you type.
  3. Confirm the line count matches the number of elements you expect from your source array.
  4. Click Download to save the result with the proper extension for your pipeline, or Copy to move it elsewhere.

Large datasets often contain records about real people, so it matters that this converter is purely client-side: splitting your array into lines happens in browser memory on your own hardware, with zero network transfer involved.

Frequently asked questions

What is NDJSON actually used for?

It is the standard interchange format for streaming and log processing. BigQuery imports, many logging systems, and command-line tools like jq work line by line, so NDJSON lets them handle huge datasets without parsing one giant array into memory.

What input does the converter expect?

A top-level JSON array. Each element of the array is serialized onto its own line of output. If your data is a single object rather than an array, wrap it in brackets first.

Can the objects on each line contain nested data?

Yes. Every line is a complete, self-contained JSON object, so nested objects and arrays inside each record are perfectly valid. Each record is simply compacted onto one line rather than pretty-printed.