PublicSoftTools

HTML Table Generator Online

Create HTML or Markdown tables in seconds. Set the number of rows and columns, fill in cell content directly, then copy the clean output. No signup, runs entirely in your browser.

HTML
<table class="table-bordered">
  <thead>
    <tr>
      <th>Header 1</th>
      <th>Header 2</th>
      <th>Header 3</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Row 1 Col 1</td>
      <td>Row 1 Col 2</td>
      <td>Row 1 Col 3</td>
    </tr>
    <tr>
      <td>Row 2 Col 1</td>
      <td>Row 2 Col 2</td>
      <td>Row 2 Col 3</td>
    </tr>
  </tbody>
</table>

How to Create an HTML Table

  1. 1Set the number of rows and columns using the number inputs at the top.
  2. 2Click each cell in the editor and type your content. The first row can be styled as a header row using the checkbox.
  3. 3Choose HTML or Markdown output, and toggle bordered or striped class options for HTML.
  4. 4Click Copy to copy the generated code and paste it into your project.

HTML vs Markdown Tables

HTML tables offer the most control — you can use rowspan, colspan, nested elements, and inline styles. Markdown tables are faster to write and read as plain text, making them ideal for documentation, README files, and pull request descriptions. This tool generates both formats so you can use whichever fits your context.

Table Design Tips

Keep Headers Descriptive

Header cells set reader expectations. Use nouns or short noun phrases — "Price (USD)", "Status", "Last Updated" — not abbreviations that require a legend.

Right-Align Numeric Columns

Add style="text-align:right" to numeric <td> elements so decimal points and digits align vertically, making comparison easy.

Bootstrap Classes

The bordered and striped class options generate Bootstrap-compatible class names. Add table as a base class alongside them for full Bootstrap table styling.

Markdown Table Alignment

In GFM Markdown, add colons in the separator row to control alignment: :--- left, :---: center, ---: right.

Accessibility

Always mark header rows with <th> elements (use the "First row is header" option). Screen readers use these to associate data cells with their labels.

Limit Table Width

Tables wider than 6–8 columns become hard to scan. Consider splitting wide tables into multiple narrower ones, or transposing rows and columns if the data allows it.

Frequently Asked Questions

What output formats does the generator support?

The generator outputs standard HTML (with <table>, <thead>, <tbody>, <th>, and <td> elements) or GitHub-Flavored Markdown table syntax. Switch between formats using the HTML / Markdown toggle.

What do the bordered and striped classes do?

These add CSS class names to the <table> element — "table-bordered" and "table-striped" — which are standard class names used by Bootstrap and many other CSS frameworks. If you are not using a framework, add your own CSS rules for these class names.

Can I add more than 10 columns?

The column limit is 10. Most HTML tables wider than 10 columns become difficult to read on screen and in code. For very wide datasets, consider splitting the table or transposing rows and columns.

Does Markdown support table headers?

Yes. GitHub-Flavored Markdown requires a header row followed by a separator row of dashes. When "First row is header" is checked, the generator inserts the separator automatically. Most Markdown renderers (GitHub, GitLab, VS Code, Notion) render GFM tables natively.

How do I use the generated HTML table in my project?

Copy the output and paste it directly into your HTML file. If you are using a CSS framework like Bootstrap, the table will inherit its styles automatically. For plain HTML, add inline styles or link a stylesheet that targets the table element.

Is my content private?

Yes. All content is processed in your browser. Nothing is sent to any server. Your cell data never leaves your device.