Turn pasted rows into clean HTML table markup with a live preview. Fast, free, and built for simple browser-based workflows.
Paste your rows above, then click Generate Table.
728 x 90 In-Content Ad
HTML Table Generator is a free online tool that turns rows of data into HTML table markup. Paste your rows, choose the character that separates the columns, and click Generate Table -- you get clean table code and a rendered preview of exactly what it will produce.
It saves the tedious part of writing a table by hand: pasting three columns straight out of a spreadsheet, turning a CSV export into a comparison table for a blog post, or building a pricing grid for a CMS with no table editor. Typing the row and cell tags yourself is slow, and one missing closing tag is enough to break the layout of the whole page.
Everything runs inside your browser and nothing you paste is uploaded, so internal figures and unpublished pricing stay on your machine. Every cell is escaped before it reaches the markup, which means a stray angle bracket in your data shows up as visible text instead of a broken tag. The result leaves your device only if you copy or download it.
Put the data into the Table Data box, one row per line, with the columns separated consistently.
Pick the matching Column Separator -- Tab if you pasted from a spreadsheet -- and leave First row is a header ticked when the top line holds column titles.
Type a class name into CSS Class to match your site, or tick Include basic CSS to get a bordered table that looks right with no stylesheet at all.
Click Generate Table, check it in Table Preview, then Copy for the clipboard or Download to save table.html. Clear empties everything.
Yes! All our tools are 100% free to use with no hidden costs, no registration required, and no credit card needed.
Absolutely. All tools run entirely in your browser (client-side). Your data never leaves your device and is not sent to our servers.
Yes, once the page is loaded, the tool will continue to work even if you lose internet connection since it runs in your browser.
There is no strict character limit, but very large amounts of text (100,000+ characters) may slow down your browser.
Yes! All our tools are free for both personal and commercial use.
Yes. Copy the cells, paste them into Table Data, and set Column Separator to Tab. Spreadsheets put a tab between columns and a line break between rows when you copy, so that combination reproduces your selection exactly, empty cells included.
The markup, not just the look. With it ticked, the first line becomes a thead of th cells and everything after it goes into tbody. That is how screen readers and search engines tie each cell to its column, so leave it on whenever the top line holds column titles.
Use CSS Class when the destination page already has a stylesheet -- type the class its framework expects and the table inherits the site's look. Tick Include basic CSS only for a standalone snippet, such as an email; it prepends a small style block with borders and a shaded header row.
It stays in the cell, provided the value is quoted the way CSV requires. With the comma separator chosen, quoted values are parsed properly and a doubled quote inside them is read as one literal quote. With any other separator, the line is simply split on that character.
No. It builds a plain grid of one cell per value, because merged cells cannot be expressed in a row-and-column paste. Generate the grid here first, then add colspan or rowspan by hand to the two or three cells that need it -- far less typing than writing the table yourself.
The markup is neutral -- behaviour comes from your CSS. The optional basic stylesheet sets the table to full width but does nothing for narrow screens. For a wide table, wrap it in a container that scrolls horizontally, which is exactly what the preview on this page does.