How to sort a large list (alphabetical, numeric, natural, by column)
To sort a list in Listalyze:
- Open the app and paste or open your list (one item per line).
- Open the sort panel and pick a quick preset — A→Z, Z→A, Natural #s, or Numeric — or build a custom sort.
- Click Apply sort and copy the result.
The work runs in your browser. Below is how to pick the right kind of sort, and how to sort by a column or a piece of each line instead of the whole thing.
Pick the right kind of sort
The four quick presets cover most lists, but they are not interchangeable — “alphabetical” and “numeric” disagree the moment your data has numbers in it.
- A→Z / Z→A (text) compares character by character. Fine for names and words.
- Numeric treats each line as a number, so
9sorts before10. Plain text sort would put10first because"1"is less than"9". - Natural #s is the one people actually want for mixed text-and-number
labels. It keeps
item2beforeitem10, andv1.9beforev1.10, by comparing the numeric runs as numbers and the text runs as text. A plain A→Z sort gets this wrong every time. - Length orders by how long each line is — handy for spotting outliers or the one malformed row in an export.
You set these under COMPARE AS in the sort panel. The panel also shows a live preview of each original line next to the sort key it will be ordered by, so you can confirm the result before applying it.
Sort by a column, a word, or a domain — not the whole line
Often the thing you want to order by is not the start of the line. Listalyze’s SORT BY menu lets you choose what part of each line becomes the sort key:
- CSV column # — sort rows by the 3rd field instead of the 1st.
- Word # — sort by the second word (a last name, say) using a 0-based index.
- Text before / after a delimiter — split on a character and sort by either side.
- Email domain or URL domain — group addresses by what comes after the
@or the host. - Regex group — sort by a captured group when the structure is irregular.
So you can sort a CSV by its third column, or a contact list by email domain, without rearranging the data first.
Don’t lose your headers — keep lines in place
Two things commonly get mangled by a naive sort: the header row, and section labels. Listalyze handles both under KEEP IN PLACE:
- First line (CSV header) pins the header so it stays on top.
#///headers keep comment-style section titles anchored and sort only the lines under them.- Blank lines can stay put so sections don’t collapse into each other.
There is also an IGNORE group that affects only the sort key, never your actual lines — so you can sort case-insensitively, ignore leading bullets and numbers, or strip surrounding whitespace for comparison while every character of your original data is preserved. (This follows the same no-silent-transform rule described in the overview of Listalyze: sorting reorders lines, it never rewrites them.)
It works on lists too big for a spreadsheet
Sorting runs locally in your browser, so it does not round-trip to a server and it keeps working offline once the page has loaded. That is also what lets it handle large files: a 1,000,000-line file loads in roughly 1.8 seconds in-browser, and operations like dedupe on a million rows finish in well under a second on a test machine. Nothing is uploaded — the same local-first design behind removing duplicate emails from a list and explained on Security & your data.
Try it now
Paste your list, pick a sort, and apply — natural, numeric, by column, or by domain, with your headers kept in place and nothing uploaded.
Open the app and sort your list →
The web app is free today; a CLI and desktop builds are rolling out — see pricing for what is free and what Pro adds.