Practical guide

Convert JSON to an HTML table

HTML table export is useful when you want a browser-readable report instead of a spreadsheet import file. It can make structured data easier to share with someone who does not want to open raw JSON.

The guide covers the table export workflow: shaping the source array, reviewing the saved HTML artifact, and checking escaping and column mapping before sharing the file.

Shape the report before export

HTML table export works from an array. Each item becomes a row, and the exporter builds columns from the observed row shape. If the source contains too many fields, use a query first so the saved report tells one clear story.

HTML mapping has its own behavior. It is related to CSV and Markdown table export, but not identical in every internal display path. Verify the saved artifact separately from the workspace preview.

Accessibility-review workflow that selects 140 findings, sorts the real HTML table, downloads the report, opens the standalone file, and verifies row count, links, and markup-like selector text against the source.

Escaped HTML output example

This example starts from a root object and selects .report.rows before export. Markup-like text should appear as text in cells, not become active markup. In the example below, <Ann> is shown as escaped text and A&B keeps the ampersand as text. The excerpt is intentionally compact so you can see the table structure without reading the full saved page shell.

Source JSON with root wrapperjson
{
  "report": {
    "rows": [
      {"name":"<Ann>","score":2},
      {"name":"Bob","note":"A&B"}
    ]
  }
}
JQ query for the table rowsjq
.report.rows
Shaped array to exportjson
[
  {"name":"<Ann>","score":2},
  {"name":"Bob","note":"A&B"}
]
HTML table excerpthtml
<table class="json-html-table__document">
<thead><tr><th scope="col">#</th><th scope="col">name</th><th scope="col">score</th><th scope="col">note</th></tr></thead>
<tbody>
<tr><th scope="row">1</th><td>&lt;Ann&gt;</td><td>2</td><td></td></tr>
<tr><th scope="row">2</th><td>Bob</td><td></td><td>A&amp;B</td></tr>
</tbody>
</table>
Accessibility findings flow from source JSON to selected columns, standalone HTML, and reviewer checks for rows, links, escaped text, and source traceability.
Report trust chain from scanner JSON through row selection and standalone HTML to the reviewer checks that confirm count, links, text escaping, and source traceability.

Create the HTML table

  1. Open the JSON source or shaped array result.
  2. Review the table columns and remove unrelated fields before export if needed.
  3. Choose Export, then HTML table.
  4. Open the downloaded HTML file separately from the workspace.
  5. Check row count, column names, escaped markup-like strings, and any display options you used.

Preview and saved file are different checks

The workspace can help you inspect and sort data before export. The saved HTML artifact is what you send to someone else, so check the downloaded file separately from the preview.

For a report that will be emailed or archived, open the downloaded file in a clean browser window. Check the first row, last row, sorted column if used, and any markup-like text against the data you selected.