Text
Text Reverse
Reverse text: by characters, by words (word order), or by lines (line order).
This tool reverses text three different ways: by character (letters run in reverse order), by word (words swap places but stay intact), or by line (line order is flipped).
How to use it
- Pick a mode — by character, by word, or by line — depending on the result you need.
- Paste text and the result updates instantly as you type.
- Character mode correctly handles composite emoji and grapheme clusters without breaking them apart.
Common uses
- Creating mirrored text for a design or a puzzle.
- Flipping the order of lines in a list or log without reordering them by hand.
- Checking whether a string is a palindrome — text reversed by character is compared against the original.
Things to keep in mind
A naive reversal by Unicode code point breaks composite characters (emoji with modifiers, some languages' combining diacritics) — a correct implementation splits text into grapheme clusters rather than individual code points.
Word-mode reversal doesn't change the letter order inside each word — it only rearranges the words themselves, not a character-level reversal.
Article about this tool: Text Reverse: why "reversing text" is harder than it sounds
Frequently asked questions
What are the different reversal modes?
Three modes exist: reverse character order, reverse word order while keeping each word intact, or reverse line order while keeping each line intact.
Why can character-level reversal produce unreadable results?
Reversing text character by character can break multi-byte Unicode sequences, emoji, or combining characters, producing a visually corrupted display; word- or line-level reversal doesn't have this problem since it moves whole blocks of text.
Is the entered text sent to a server?
No, reversal happens entirely in the browser in JavaScript, with no sending to a server.
What is a grapheme cluster?
It's what a person perceives as "one visible character," even though in Unicode it sometimes consists of several code points — a family emoji, for instance, is made up of several separate emoji joined by a special zero-width joiner character. A correct text reversal has to keep such clusters together as one unit.
Can an emoji be reversed and still stay valid?
Yes, if the reversal splits the string into grapheme clusters before changing their order, rather than into individual code points — then composite emoji (with skin-tone modifiers, country flags) stay intact after the operation.