How to batch-extract json fields across ndjson files
- Step 1Paste the NDJSON batch — Paste 100–10,000 lines of NDJSON. Each line must be a complete, valid JSON object. The tool parses each line independently and applies the expression to each parsed object.
- Step 2Write an extraction or filter expression — For extraction: $.userId extracts the userId from every record. For filtering: $[?(@.status == 'failed')] returns entire records where status equals failed. Combine both by first filtering and then extracting a field.
- Step 3Review frequency distribution for extracted values — Enable 'Count extracted values' to see how many times each unique value appears — useful for finding the most common error codes, event types, or user IDs in the dataset.
- Step 4Export the result — Download the extracted values as a flat JSON array, or export the filtered records as a new NDJSON file for loading into a database or further processing in a pipeline.
Frequently asked questions
How many NDJSON lines can the browser process?+
The tool reliably processes 10,000–50,000 lines in most modern browsers, depending on the size of each JSON object and the complexity of the JSONPath expression. For larger files, split the NDJSON into chunks using the split command (split -l 10000 export.ndjson chunk_) and process each chunk separately.
Can I use this instead of jq for ad-hoc data exploration?+
Yes, for extraction and filtering. JSONPath covers the most common use cases that would otherwise require jq: field extraction (.field_name), array item access ([*]), and filter expressions (?(@.field == value)). For complex transformations like field renaming, aggregation, or generating new fields, jq's programming model is more powerful.
Is the NDJSON export data transmitted to JAD Apps?+
No. JSONPath evaluation runs entirely in your browser. Event records, database export data, and any PII in the NDJSON are never transmitted to JAD Apps servers.
Privacy first
Conversion runs locally in your browser. No file is uploaded — only metadata counters are saved for signed-in dashboard stats.