Reverse List
Reverse the order of any text list in one click. Last line becomes first, first becomes last. Works on bullet lists, CSV rows, log files, and code.
Reverse List - Text List Reversal Tool
Reverse List flips the order of any text where each item sits on its own line. The last line of your input becomes the first line of the output, the second-to-last becomes the second, and so on — every byte of original content is preserved, only the row order is mirrored. Typical real-world uses include: converting an ascending-sorted result into descending order without re-sorting (faster on large lists), inverting a chronological log so the newest line appears first like Apache or Nginx tail viewers do, flipping a stack of tasks into pop-order, reading a numbered todo from bottom to top to plan dependencies, and reversing CSV rows when a tool exports them in the wrong direction. The reversal runs entirely in your browser using a single JavaScript Array.prototype.reverse() call on the line-split input, so even 100k-line lists complete in milliseconds and nothing is uploaded.
What exactly does the Reverse List tool do?
It splits your input on newlines, reverses the resulting array of strings, and joins them back with the same line ending. Line 1 becomes the last line, line 2 becomes second-to-last, and so on. Content within each line is untouched — only row order is mirrored, which is different from reversing every character.
How is this different from sorting in descending order (Z-A)?
Sort Z-A compares each line alphabetically and reorders them; Reverse List preserves whatever order you already had and just flips it end-to-end. If your list is unsorted, sorting will scramble it into alphabetical order while reversing keeps your custom sequence intact, just upside down. Use Reverse for already-sorted ascending data you want descending, and Sort for unstructured input.
Does it preserve numbering, indentation, and special characters?
Yes. Each line is treated as an opaque string, so leading numbers like '1.', bullets like '- ', tab indentation, emoji, CJK characters, accented letters, and trailing punctuation all stay exactly as you typed them. If you reverse a numbered list, the numbers themselves do not renumber — '1. Apple' stays '1. Apple' even when it lands at the bottom; renumber separately with a Line Numbering tool if needed.

What is the line limit and does it handle large files?
There is no hard cap. The tool reverses lists with 100,000+ lines smoothly because Array.reverse() runs in linear time and modern browsers handle multi-megabyte strings. Practical browser limits are around 10 MB of text for paste performance, but the reversal itself completes in under 200 ms on a typical laptop even at that size. For multi-gigabyte log files, prefer the Unix `tac` command (cat backwards) which streams without loading the whole file into memory.
What does this do with empty lines or trailing whitespace?
Empty lines are kept and reversed along with content. If your input ends with a newline (most editors add one), the trailing empty string becomes the first output line — visually it looks like a blank row at the top. Trim trailing newlines before reversing if you want a clean top, or use a Remove Empty Lines tool first.
Can I reverse a comma-separated or space-separated list instead of lines?
This tool only operates on line breaks. To reverse a CSV-style 'a,b,c,d' to 'd,c,b,a', either replace commas with newlines first (paste into Word Replacer, swap ',' for '\n'), reverse, then swap back. Alternatively for one-off reversals use the browser console: `'a,b,c,d'.split(',').reverse().join(',')` returns 'd,c,b,a' instantly.
Is my data private — does anything get uploaded?
Nothing leaves your device. The reversal runs in browser JavaScript using only the input textarea's value; there is no fetch() call, no analytics event with content, and no server-side processing. You can verify this in your browser DevTools Network tab — clicking Reverse triggers zero network requests. Safe for confidential lists like employee names, customer emails, or internal log lines.
