EN
My tools

HTML Table Generator

Make an accessible HTML table from pasted CSV or Excel cells or an empty grid: thead/tbody, caption, scope, escaped cells, and bordered or striped styles.

Leave empty to get an empty grid of the size below.
My tools →
Advertisement

Writing table markup by hand — every <tr>, <th> and <td>, plus escaping — is slow and easy to get wrong. Paste CSV or cells copied from Excel or Google Sheets (or start from an empty grid) and get clean, accessible HTML: a <caption>, <thead> and <tbody>, header cells with scope so screen readers announce them, escaped text, and right-aligned number columns. Choose a ready style as a <style> block, inline styles for email newsletters, or just a class name for your own CSS.

How to use this tool

  1. Paste CSV, TSV or spreadsheet cells — or leave the box empty and set the number of rows and columns.
  2. Say whether the first row and the first column are headers.
  3. Add a caption.
  4. Pick the styling: a <style> block, inline styles for email, or class only; then a look.
  5. Copy the HTML.

Formula

<table> → <caption> → <thead><tr><th scope="col"> → <tbody><tr><th scope="row"> / <td>

Header cells get scope="col" (column headers) or scope="row" (the first cell of each body row), which ties data cells to their headers for assistive technology. Text is escaped so characters such as < and & display literally. A column whose cells are all numbers (thousands separators, a currency sign or % allowed) is right-aligned with tabular figures. Inline mode writes the styles on every cell, which is what email clients need.

Example

The sample pricing data gives a table with the caption "Plans and prices", a header row Plan / Price / Storage / Users, and three body rows whose first cell (Free, Team, Business) is a row header. Price ($0, $12, $29) is all numbers, so it is right-aligned; Users is not, because "Unlimited" is text. The striped look adds a <style> block that shades every second row.

Frequently asked questions

Why use th with scope instead of bold td cells?

Screen readers use th and scope to read the right header before each value ("Price, $12"). Bold td cells look similar but carry no meaning.

Which styling should I pick for an email?

Inline. Many email clients strip <style> blocks and ignore selectors such as :nth-child, so every cell carries its own style attribute.

Can a cell contain a link or bold text?

Untick "Escape" and write the HTML in the cell. Only do that with content you trust, since it is inserted as is.

Is my data uploaded?

No. The table is generated in your browser.

Sources

Last updated:

Cite or embed this tool
APA

kakaoCalc. (2026, November 8). HTML Table Generator. https://kakao.mobile/tools/html-table-generator/

MLA

“HTML Table Generator.” kakaoCalc, 8 Nov. 2026, kakao.mobile/tools/html-table-generator/.

Paste this code into your page. The widget runs in your visitors' browsers, shows no ads and keeps a link back to this page. Embedding terms

Advertisement