Skip to content
Account

Convert an HTML table to JSON

1 credit per pageDeleted after 2 hAlso as Excel · CSV · SQL

Free account · 20 free credits. Sign up to run it.

Opening…

Drop your file here

or choose it from your device

HTML, HTM · up to 1 file per job

or paste it here (Ctrl+V)

Before and after

Markup a browser draws, turned into data a program can read.

The HTML
<thead><tr><th>Count</th><th>Blend</th><th>Rate/kg</th></tr></thead>
<tbody><tr><td>20s</td><td>100% cotton</td><td>268.00</td></tr>
</tbody>
JSON
{"columns": ["Count", "Blend", "Rate/kg"],
 "header_rows": 1,
 "rows": [["20s", "100% cotton", "268.00"], ...]}

What this tool does

This tool reads the tables out of an HTML page and returns them as JSON. The structure is taken straight from the markup, so what you get back is what the page declared: an array of tables, each with its columns, its rows, which rows were headers, and where a cell spanned more than one column or row. That last part is why the JSON output exists — CSV cannot express a merged cell and a spreadsheet can only show one, whereas JSON can say exactly which positions a cell covered, which is what you need if you are going to process the table rather than look at it. Scripts, styling and the rest of the page are ignored, and nothing is fetched from the internet: the tool reads the file you upload and no other.

The values in this file were read from your document by AI, and they can be wrong — check them against the original before you rely on them. Your document itself is not altered.

What happens to your file

Deleted from our servers after 2 hours. We do not train AI on your files, and the terms of our AI providers do not allow them to; they may keep request logs for up to 55 days, longer for a request they flag for abuse.

Uploads and outputs are deleted after 2 hours, whether or not you download them. Provider request logs are kept for at most 55 days. Details on the privacy page.

Questions

What happens to the file I upload?

It is deleted from our servers after two hours, whether or not you download the result, and it is not used to train anything. An HTML table is read from the markup on our own machines, so in the ordinary case nothing about it goes to an AI provider at all.

Why not parse the HTML myself with a library?

If you are writing code against one page you know, do that — it will be faster and you will not need us. This is for the case where the page is one of many, the tables are irregular, or you want the same answer whether the source turns out to be HTML, a PDF or a scan.

How are merged cells represented?

As the span the markup declared: the cell appears once, with how many rows and columns it covers, rather than being repeated into every position it fills. That is the whole reason to take JSON over CSV here.

How accurate is it?

We have not published a number yet, and we are not going to quote one we have not measured. What is fair to say is that HTML states its own structure, so the usual failure in these tools — inferring a column boundary in the wrong place — does not arise on this path.

Can I point it at a URL?

Not from this page. Fetching an arbitrary address from our servers is a security question before it is a feature, and we would rather not answer it carelessly. Save the page and upload it.

Extract tables from a PDF

Tables & text out of a document