List to Columns Converter

Splits a list on a configurable separator and lays it out into a chosen number of side-by-side text columns, reading down each column then across, with each column monospace-padded so the columns visually align in a fixed-width font. A free online tool from Staaarter, right in your browser.

Runs locallyUpdated 2026-07-27

Overview

Introduction

A long single-column list wastes horizontal space and is slow to scan when there's plenty of room to spread it across a page.

This tool lays the list out into aligned side-by-side text columns, similar to how terminal file listings wrap long directory contents into neat columns.

What Is List to Columns Converter?

A layout tool that distributes a flat list's items into a chosen number of columns, reading down each column before moving to the next, then pads every column with spaces so the columns align visually in a monospace font.

It's the column-major counterpart to List to Rows Converter's row-major, unaligned layout.

How List to Columns Converter Works

The input is split into items using the selected separator, then divided into `columnCount` columns, with the first column receiving the first `ceil(n / columnCount)` items, the second column the next chunk, and so on.

Each column is padded with spaces to the width of its longest item (using `String.prototype.padEnd()`), and rows are assembled by reading across each column at the same row index, then stacked with a newline between rows.

When To Use List to Columns Converter

Use it to turn a long list into a compact, readable multi-column block for a plain-text report, README, or terminal output.

It's helpful whenever you want the visual scanning benefit of a spreadsheet-like grid without leaving plain text.

Features

Advantages

  • Produces genuinely aligned columns in any monospace font, not just items separated by a fixed number of spaces.
  • Reads down-then-across, matching the familiar layout used by tools like `ls` and `pr`.
  • Works on newline-, comma-, or custom-delimited source lists.

Limitations

  • Alignment only holds in a monospace/fixed-width font; proportional fonts will show misaligned columns.
  • Very long items in one column widen that whole column, which can make the overall layout wider than expected.

Examples

Six items in three columns

Input

alpha
beta
gamma
delta
epsilon
zeta

Output

alpha  delta
beta   epsilon
gamma  zeta

With columnCount set to 2, the first column holds "alpha", "beta", "gamma" (padded to the widest item's width) and the second holds "delta", "epsilon", "zeta", read down then across.

An uneven final row

Input

a
b
c
d
e

Output

a  d
b  e
c

With columnCount set to 2, five items split into a column of three ("a","b","c") and a column of two ("d","e"); the last row only has one cell since the second column ran out.

Best Practices & Notes

Best Practices

  • View the result in a monospace font (a code block, terminal, or plain-text editor) so the padding actually lines up.
  • Choose a column count that suits your item lengths, too many columns with long items will wrap awkwardly wherever you paste the result.

Developer Notes

Computes `rowCount = Math.ceil(items.length / columnCount)`, slices the flat item array into `columnCount` chunks of that size, measures each column's widest item, and pads every non-final column with `String.prototype.padEnd()` before assembling rows by index.

List to Columns Converter Use Cases

  • Formatting a long list of short values into a compact multi-column block for a plain-text README
  • Laying out a word list or glossary for quick visual scanning
  • Recreating a directory-listing-style column view from an arbitrary list of names

Common Mistakes

  • Viewing the output in a proportional font and assuming the tool produced misaligned results.
  • Expecting row-major (left-to-right) fill order; this tool fills down each column first, which can surprise users expecting List to Rows Converter's behavior instead.

Tips

  • If you actually want left-to-right, N-per-line grouping instead of down-then-across columns, use List to Rows Converter.
  • Wrap the output in a Markdown code fence when pasting into a Markdown document so the monospace alignment is preserved.

References

Frequently Asked Questions