JSON File Merger
Merge 2–100 UTF-8 JSON files, at most 5 MB total and 20 MB output, in the displayed order. Arrays concatenate with duplicates kept. Shallow object modes merge at the top level only: reject duplicate keys or replace the entire earlier value with the later one. Mixed root types and scalar roots are rejected. Recursive mode merges matching objects, concatenates matching arrays at any depth preserving duplicates and order, and replaces other conflicting values with the later file value. Type changes replace the whole earlier value. No deduplication.
Merge 2–100 UTF-8 JSON files, at most 5 MB total and 20 MB output, in the displayed order. Arrays concatenate with duplicates kept. Shallow object modes merge at the top level only: reject duplicate keys or replace the entire earlier value with the later one. Mixed root types and scalar roots are rejected. Recursive mode merges matching objects, concatenates matching arrays at any depth preserving duplicates and order, and replaces other conflicting values with the later file value. Type changes replace the whole earlier value. No deduplication.
JSON is parsed and reserialized, so whitespace and number spelling change. Duplicate keys inside a file keep the last value. JavaScript floating-point rounding applies; non-finite values and unsafe integers are rejected. UTF-8 is required; an initial BOM is accepted. Maximum depth: 64 (root depth 0); maximum 100,000 value/container nodes across all input files and in the result. Exceeding a limit rejects the whole task and clears downloads.
Download files
A QUICK WALKTHROUGH
How to use this tool
- Choose files, check the displayed order and options, then run and download.
Workflow
Merge 2–100 UTF-8 JSON files, at most 5 MB total and 20 MB output, in the displayed order. Arrays concatenate with duplicates kept. Shallow object modes merge at the top level only: reject duplicate keys or replace the entire earlier value with the later one. Mixed root types and scalar roots are rejected. Recursive mode merges matching objects, concatenates matching arrays at any depth preserving duplicates and order, and replaces other conflicting values with the later file value. Type changes replace the whole earlier value. No deduplication.
Local processing; files are not uploaded.
JSON is parsed and reserialized, so whitespace and number spelling change. Duplicate keys inside a file keep the last value. JavaScript floating-point rounding applies; non-finite values and unsafe integers are rejected. UTF-8 is required; an initial BOM is accepted. Maximum depth: 64 (root depth 0); maximum 100,000 value/container nodes across all input files and in the result. Exceeding a limit rejects the whole task and clears downloads.
GOOD TO KNOW
Common questions
Workflow
Choose files, check the displayed order and options, then run and download.