Alphabetically Sort Any List

Sort a list A to Z or Z to A. Ordering is numeric-aware, so item 2 lands before item 10 instead of after it the way a naive sort would put it.

Why item 10 keeps landing before item 2

A naive alphabetical sort compares strings character by character, so it puts item10 before item2. The character 1 sorts before 2 and the comparison stops there. That is correct for strings and wrong for anything a person reads. This tool sorts with a numeric-aware collator, which recognises digit runs inside text and compares them as numbers, so item2 lands before item10 and chapter 9 before chapter 11. The same collator handles accented characters properly, sorting é next to e rather than dumping every accented word at the end of the list where a byte-order sort would put it.

Lines, words or comma-separated items

The unit you sort matters as much as the direction. Lines is the default and suits a stacked list. Words breaks the whole input on whitespace and sorts every token, which is how you alphabetise a paragraph of tags typed as one run. Comma-separated splits on commas and rejoins with a comma and a space, so a CSV-style tag string comes back sorted and still valid. Removing duplicates as part of the sort is a single toggle, and it applies before the ordering, so the count you end up with is the count of distinct items.

Frequently asked questions

Why does my list sort 1, 10, 2 in other tools but not here?

Because this one uses a numeric-aware collator. Digit runs inside text are compared as numbers, so 2 comes before 10 the way a reader expects.

Does sorting remove duplicates automatically?

No, that is a separate toggle. Turn on "remove duplicates" to dedupe and sort in one pass.

How are accented characters ordered?

Next to their base letter, so é sorts with e rather than after z. That follows locale rules rather than raw byte order.