CSV to HTML Table
Paste spreadsheet data and get a clean, accessible HTML table.
How to use the CSV to HTML Table
- Paste CSV, or copy a range of cells from a spreadsheet and paste it.
- Say whether the first row is a header, and add a caption if you like.
- Choose indented or compact HTML, and whether to include simple styles.
- Copy the HTML or download it.
Examples
About this tool
Tables in web pages, emails and documentation often start life in a spreadsheet. Retyping them as HTML is slow and error-prone, and many converters produce bloated markup full of inline styles. This tool writes clean, standard HTML: a table with thead and tbody, header cells marked with scope so screen readers announce them properly, and an optional caption.
Every value is escaped, so a cell containing < or & shows up as text instead of breaking the page or injecting markup. Columns that contain only numbers are right-aligned, which makes figures easy to compare, and rows with missing cells are padded so the table stays rectangular.
Copying cells straight out of Excel, Google Sheets or Numbers gives tab-separated text, which is detected automatically. Tick "Include simple styles" for a ready-to-use bordered table, or add your own class name and style it with your site's CSS.
Frequently asked questions
Can I paste directly from Excel or Google Sheets?
Yes. Copied cells arrive as tab-separated text, which the converter recognises. Quoted values with commas or line breaks inside are handled too.
Why add a caption?
A caption is a short title tied to the table. It helps everyone scan the page, and screen readers announce it before reading the table.
Will the table work in emails?
The markup is standard and works in email clients. For best results in email, use the simple styles option, since many clients ignore separate stylesheets.
Is my data uploaded?
No. The CSV is parsed and the HTML is written in your browser. Nothing leaves your computer.