← Back to Blog

converters · August 23, 2026

How to Flatten Nested JSON and Convert JSON Lines (JSONL) Files

Two JSON-related problems come up constantly and don't have an obvious built-in fix: deeply nested objects that don't map cleanly to spreadsheet rows, and JSON Lines (JSONL) files that most spreadsheet tools can't open at all.

The problem with nested JSON in a spreadsheet

A flat JSON array of objects converts cleanly to spreadsheet rows — each key becomes a column. But real-world JSON is rarely flat. An object like {"user": {"name": "Alex", "address": {"city": "Pune"}}} has no obvious single column for "address," and naively converting it either loses the nested data or dumps a raw JSON blob into a cell, which defeats the point of exporting to a spreadsheet in the first place.

Flattening nested JSON to CSV or Excel

Flattening solves this by turning nested paths into dot-notation column names — user.name, user.address.city — so every value gets its own column and nothing is lost. The Nested JSON ⇄ CSV (Flatten) tool does this automatically for CSV output, and the Nested JSON ⇄ Excel (Flatten) tool does the same for a proper spreadsheet. Both can also work in reverse, rebuilding nested JSON from a flattened, dot-notation spreadsheet — useful when a non-technical teammate edits data in Excel and you need it back in its original nested shape for an API.

What JSON Lines (JSONL) is, and why it's different

JSONL — sometimes called newline-delimited JSON — is a text file with one complete JSON object per line, instead of a single array wrapping everything. It's the standard export format for a lot of log pipelines, machine learning datasets, and streaming data tools, precisely because a line can be read, written, and processed independently without parsing the entire file into memory first. The catch is that a JSONL file isn't valid JSON on its own — most JSON tools will fail to parse it as-is.

Converting JSONL to something usable

The JSONL ⇄ JSON Converter wraps a JSONL file's lines into a standard JSON array (or splits a JSON array back into JSONL), which is often the first step before feeding the data into a tool that expects regular JSON. From there, the JSONL ⇄ CSV Converter and JSONL ⇄ Excel Converter go straight from JSONL to a spreadsheet-ready format, skipping the intermediate step when a spreadsheet is the actual end goal.

Where this shows up in practice

  1. A data scientist with a JSONL export from a labeling tool who needs it as a single JSON array for a Python script.
  2. An analyst who received an application log file in JSONL format and wants to scan it quickly in Excel instead of a text editor.
  3. A support team exporting nested ticket data — with fields like customer.plan.tier — and needing every field as its own spreadsheet column for filtering.
  4. Rebuilding a nested JSON config after a teammate made edits directly in an Excel-flattened version of it.

Client-side, start to finish

Flattening, unflattening, and JSONL conversion all happen in your browser — no file is ever uploaded, which matters for log files and datasets that often contain user or system data you don't want leaving your machine.

Try them

Start with Nested JSON ⇄ CSV or Nested JSON ⇄ Excel for deeply nested data, or head to the JSONL ⇄ JSON, JSONL ⇄ CSV, or JSONL ⇄ Excel converters for line-delimited files.

We use cookies

We use cookies for analytics and to support advertising. You can accept all cookies or decline non-essential ones — change this anytime from Cookie Settings in the footer. Privacy Policy