1, 10, 100, 2, 20 is the commonest spreadsheet bug in the world, and it is invisible — because the file genuinely looks sorted.
It happens when a column of figures is sorted as text, and that is the correct order for text: 1 comes before 2 the same way apple comes before banana. It is only wrong because the values are numbers.
This page detects a column holding nothing but figures being sorted as text, and says so. It does not fix it silently: a column of product codes that happen to be numeric really does want text order, and a tool that decides for you is the same class of bug pointed the other way.
And a cell the mode cannot read is counted, not hidden. Sort a column as numbers when three rows hold N/A and they have to go somewhere. Here they go last — and the number of them is reported, because "sorted by amount" over a column with unreadable cells in it is a claim that needs a footnote.
And 03/04/2026 is not sorted as a date at all, because it is two different dates.
No. There is no upload and no file picker — you paste the rows in and the sorting happens in your browser, in this site’s own calculation engine. Nothing is transmitted, logged or stored.
Because the column was sorted as text, and that is the correct order for text — 1 comes before 2 the same way apple comes before banana. It is the commonest spreadsheet bug in the world and it is invisible, because the file genuinely looks sorted. Switch that column to Number. This page detects a text-sorted column holding nothing but figures and says so rather than fixing it silently, because a column of numeric product codes may well want text order.
They go to the end, and the page counts them. Sorting a column as numbers when three rows hold N/A has to put those rows somewhere, and a tool that scatters them through the order — or treats them as zero — produces a file that looks sorted and is not. They are listed as unreadable, after every value that could be read.
Because that is two different dates. Government forms and American-influenced business write month first; schools, invoices and most of the rest of the world write day first, and nothing in the string says which. Guessing would put the column in an order that is wrong by a month and looks right. ISO dates — 2026-09-22 — are read as dates; anything else is counted as unreadable, and sorting that column as text gives the right order anyway for ISO.
To the end, in both directions, the way a spreadsheet does it. Reversing the sort would otherwise open the file with a screen of empty rows, which is never what somebody sorting by amount wanted to see.
It breaks the first one’s ties. Sort by city, then by name, and the rows within each city come out alphabetically. The sort is stable, so rows equal on every column you chose keep the order they had in the file — which is what makes adding a second key safe: it never reshuffles anything the first key had already settled.
Because text is compared by character code, and every capital letter has a lower code than every lowercase one. The alternative is to compare by language rules, which sound better and are not: the same two strings come out in a different order depending on the browser’s language settings, so the same file sorted on two machines disagrees and neither is wrong. A tool that says "sorted" owes you an answer that does not move.
No. Only their order changes. The values are written back exactly as they were read, and quoting is re-applied where RFC 4180 requires it and dropped where it does not — so a field that was quoted for no reason comes back unquoted, and reading the output gives the same values either way.
localeCompare is locale-dependent: the same two strings come out in a different order depending on the browser’s language settings. That means the same file sorted on two machines disagrees, and neither is wrong. A tool that says “sorted” owes you an answer that does not move.
Nothing you paste is transmitted or stored. Sorting never changes a value, only the order of the rows — but a column sorted in the wrong mode produces a file that looks sorted and is not, so read what the page says about the mode it used. Nothing you type here is sent to our servers — the calculation runs entirely in your browser.