CSV to ASCII text table

Paste CSV data and get a text table that lines up in any monospace font, no HTML needed.

Loading the tool…

Processing and privacy: The result is calculated inside your browser and your data is not sent to any server.

How to use it

  1. Enter csv data, cell delimiter, border style, alignment, first row is the header and trim spaces around each cell.
  2. The result appears straight away and updates as you edit.
  3. Copy the result, or copy a link that keeps the same values to share it.

How it is calculated

Each column is as wide as its longest cell; cells are padded with spaces and framed with top, bottom and header rules. Automatic alignment puts numbers on the right and text on the left.

Example

Inputs: Cell delimiter = Detect automatically, Border style = ASCII (+ - |), Alignment = Automatic (numbers right), First row is the header = yes, Trim spaces around each cell = yes. Result: Text table: +---------+-------+-----+ | product | price | qty | +---------+-------+-----+ | Tea | 12.5 | 3 | | Coffee | 18 | 2 | | Dates | 30 | 1 | +---------+-------+-----+; Rows: 4; Columns: 3.

product,price,qty
Tea,12.5,3
Coffee,18,2
Dates,30,1
+---------+-------+-----+
| product | price | qty |
+---------+-------+-----+
| Tea     |  12.5 |   3 |
| Coffee  |    18 |   2 |
| Dates   |    30 |   1 |
+---------+-------+-----+

Limits and caveats

  • The table lines up only in a monospace font; Arabic text or emoji can break the alignment.
  • A line break inside a cell becomes a space.

Questions about this tool

Where would I use a text table?

In terminal output, code comments, plain-text README files and unformatted email.

ASCII or box drawing?

ASCII uses + - | and works everywhere; box drawing looks cleaner but needs a font with Unicode support.

How are numbers detected for automatic alignment?

A cell holding a number such as 30, 12.5, 1,200 or 15% is right-aligned.