Convert JSON to Markdown
JSON records are normalized into the shared table IR before MD is written, so row order is preserved but container-specific metadata is not carried forward.
Fidelity
What actually changes
- JSON records are normalized into the shared table IR before MD is written, so row order is preserved but container-specific metadata is not carried forward.
- Nested objects become flattened columns with the configured separator when JSON can contain hierarchy that MD cannot express directly.
- Arrays are either stored as JSON strings or expanded into indexed columns according to the arrayMode option.
- Dates are emitted as ISO-like values unless the destination library supports real spreadsheet date cells.
- Null cells remain blank in delimited and Markdown output, while JSON-family targets keep explicit null values.
- Spreadsheet formulas, merges, comments, styling, and charts are discarded because the phase-1 engine preserves data rather than workbook presentation.
- Multiple input sheets become separate IR tables; single-table destinations write the first table and return a warning.
Options
Delimiter
Choose the separator used when json or md is a delimited text file.
Header row
Treat the first row as field names instead of generated column labels.
Encoding
Decode UTF-8 or Latin-1 input before parsing text formats.
Flatten separator
Control the characters inserted between nested object keys.
Array mode
Keep arrays as JSON strings or explode them into indexed columns.
Worksheet
Select one workbook sheet when reading XLSX, XLS, or ODS.
Example
input
[{"name":"Ada","score":9}]output
| name | score |
| --- | --- |
| Ada | 9 |Do it in code
python
import pandas as pd
df = pd.read_json("input.json")
df.to_markdown("output.md", index=False)FAQ
Can I convert JSON to MD in the browser?
Yes. Phase-1 tabular conversions run in a browser worker with pure JavaScript and WebAssembly-safe libraries.
Will formulas be preserved?
No. Formula expressions are dropped and only cached values are exported when spreadsheet readers expose them.
How are nested JSON or XML fields handled?
Nested values are flattened into columns, and arrays are controlled by the arrayMode option.
What happens to multiple sheets?
The IR can hold every sheet, but single-table outputs write the first sheet and include a warning.
Can I keep blank cells?
Blank cells remain null inside the IR and are represented according to the destination format.
Which encoding should I choose?
Use UTF-8 unless the source came from an older Windows or regional export that needs Latin-1.