Reverse Text & Mirror Text Generator

Four ways to run text backwards — by character, by word, by line, or genuinely mirrored.

The CSS preview flips the box visually — useful for checking how printed mirror text will look.

Runs in your browser. Everything you type or load here is processed locally by JavaScript on this page. Nothing is uploaded to Tooltrusty or to any third party.

What the reverse Text & Mirror Generator does

“Reverse text” can mean four different things, and this tool does all of them separately rather than guessing. Reverse characters runs each line backwards letter by letter, so hello becomes olleh. Reverse word order keeps each word intact but flips their sequence, turning the quick brown fox into fox brown quick the. Reverse line order leaves lines untouched and turns the list upside down — genuinely useful for flipping a chronological log into reverse-chronological order.

The other two are visual effects rather than reversals. Mirror characters swaps each letter for the Unicode character that most closely resembles its mirror image and then reverses the string, so the result reads correctly when held up to a mirror. Upside down does the same with rotated glyphs and also reverses the line order, since a rotated block reads bottom to top.

Character reversal uses Array.from, which iterates by Unicode code point rather than by UTF-16 code unit. That distinction matters: a naive split("").reverse() shatters emoji and non-Latin characters into invalid halves. This tool keeps them intact. Note that mirrored and upside-down text is made of substitute characters, not real letters, so it will not always render in every font and it is not searchable — use it for display, never for anything that needs to be read by software.

How to use it

  1. Type or paste your text. Multiple lines are handled correctly by every mode.
  2. Click the mode you want — character, word, line, mirror or upside down.
  3. Copy the result, or use the CSS mirror preview to check how mirror text will look when printed.

A worked example

Starting from one line of text, each mode gives a different result:

ModeOutput for “Tools that respect you”
Reverse charactersuoy tcepser taht slooT
Reverse word orderyou respect that Tools
Mirror charactersuoγ ƚɔɘqꙅɘɿ ƚɒʜƚ ꙅlooT
Upside downnoʎ ʇɔǝdsǝɹ ʇɐɥʇ sloo⊥

The practical use for mirror mode is printing: text mirrored this way comes out the right way round on an iron-on transfer or when viewed in a rear-view mirror. Toggle the CSS preview to confirm before you print.

Frequently asked questions

Why does mirrored text use odd-looking characters?

Because most letters have no true mirrored twin in Unicode. The tool substitutes the closest visual match — Я for a reversed R, Ɔ for a reversed C. A handful of letters are their own mirror image and stay as they are. The effect reads well at a glance but is an approximation.

Will emoji survive being reversed?

Yes. Reversal iterates by Unicode code point, so emoji and characters outside the basic multilingual plane stay whole. Some emoji built from several joined code points, such as family or flag sequences, may still separate — that is a limitation of the sequences themselves.

Can I use upside-down text in a username or bio?

Usually yes, on platforms that accept arbitrary Unicode, though some reject unusual characters and screen readers will read them unpredictably. Avoid it anywhere the text needs to be searched, sorted or read aloud.

Does reversing text encrypt it?

Not at all. Reversal is trivially undone by reversing again, so it offers no security whatsoever. Treat it as a display effect, never as a way to hide information.