Convert fancy text to normal
Paste styled Unicode and get plain letters: bold, script, bubble, fullwidth, small caps, and Zalgo decoded. Reverse of a font generator—not a case tool.
Lookalike decoding is off by default because it cannot tell a faux-Cyrillic username from actual Russian. With it off, styled Latin is decoded and real writing in other languages is left exactly as you pasted it.
What we found
- Bold — 6 characters decoded
- Small Caps — 6 characters decoded
- Bubble — 6 characters decoded
- Double Struck — 5 characters decoded
- Bold Cursive — 4 characters decoded
- Monospace — 4 characters decoded
- Aesthetic / Fullwidth — 4 characters decoded
- Gothic / Fraktur — 1 character decoded
Some non-ASCII characters remain. Accented letters, emoji, and real non-Latin scripts are kept on purpose — they are text, not decoration.
Why this can be done at all
Styled text is not a font. Each character is a separate code point that was added to Unicode for its own reasons — the bold alphabet exists so mathematicians can write bold variables, and the fullwidth forms exist for mixing Latin into Japanese and Chinese typesetting.
Because those characters were unified with the letters they resemble, most of them carry a formal link back to a plain twin: U+1D41A MATHEMATICAL BOLD SMALL A records a decomposition to an ordinary “a”. That mapping is what makes reversal reliable rather than a lookup table someone typed by hand.
It is also the reason the reverse maps here are generated from the same character maps the fancy text generator uses to produce styled text in the first place. They cannot fall out of step, because there is only one source for both directions.
What comes back perfectly, and what does not
- Exact. Bold, italic, bold italic, script, Fraktur, double-struck, sans, monospace, fullwidth, bubble, squared, parenthesized, small caps, superscript, and subscript.
- Text preserved, marks removed. Strikethrough, underline, slash, dot and wave overlays, and Zalgo. The letters underneath are untouched.
- Ambiguous. Lookalike alphabets that reuse a glyph for two different letters — Bopomofo, CJK strokes, and the phonetic sets. Expect a character or two to need fixing by hand.
- Order lost. Upside-down text is reversed as well as flipped. It is detected and un-mirrored, but mirror text with no glyph changes is indistinguishable from ordinary text written backwards.
- Not recoverable. Binary, Morse, and big ASCII letter art are encodings rather than substitutions. Nothing here will decode them.
Cleaning up AI-generated text
Text pasted out of a chat assistant usually has a different problem: Markdown markers, em dashes, curly quotes, and the occasional zero-width space. This page removes invisible characters and normalises odd spaces, but it will not touch **asterisks** or ## headings.
For that, use the ChatGPT to LinkedIn formatter — its strip mode turns Markdown into clean plain text, and it reports each punctuation substitution it makes.
Frequently asked questions
How do I convert fancy text back to normal?
Paste it into the box above. Each styled character is matched against the Unicode block it came from and swapped back for its plain twin, so 𝗛𝗲𝗹𝗹𝗼 becomes Hello. It works on bold, italic, script, Fraktur, double-struck, monospace, fullwidth, bubble, squared, small caps, superscript, and subscript.
Will this damage text in other languages?
Not with the default settings. Real Cyrillic, Greek, Arabic, Hebrew, and CJK text passes through untouched, and accented Latin such as café and naïve is preserved. The one setting that can affect real writing is lookalike decoding, which is off by default and labelled as such.
What is lookalike decoding and when should I use it?
Some styles fake a Latin alphabet using letters borrowed from a living script — faux Cyrillic writes “Nova” as Иоѵа, and Cherokee, Bopomofo, and CJK styles do the same thing. Those characters are indistinguishable from genuine text in that language, so decoding them can only ever be a guess. Turn it on for a styled username; leave it off for anything that might contain a real name.
Can it remove Zalgo and strikethrough marks?
Yes. Those effects work by stacking combining marks on ordinary letters, and the marks are stripped out. The distinction that matters is between decoration and real accents: a base letter carrying several marks is a Zalgo stack and all of them go, while a single ordinary accent is left alone so é stays é.
Why would I want to undo fancy text?
Most often to get something into a field that will not take it — a job application form, a CRM, a LinkedIn headline, a spreadsheet. It is also how you recover a username someone sent you in styled characters so you can actually search for it, and how you make copy accessible again before publishing it.
How is this different from a case converter?
A case converter changes capitalisation of ordinary letters. This changes the characters themselves, replacing look-alikes from other Unicode blocks with the standard letters they imitate. If your text is already plain and you only need capitalisation fixed, use the case converter.
Why is some text not fully restored?
A few styles lose information that cannot be recovered. Upside-down and mirror text are written back to front; several lookalike alphabets reuse one glyph for two letters, so l and 7 or r and j become ambiguous; and capitalisation is a guess whenever a style maps upper and lower case to the same character. Everything from the mathematical alphabet round-trips exactly.
Does anything get uploaded?
No. The character maps ship with the page and run in your browser, so pasted text never leaves your device. That matters here more than on most pages, because people paste things like draft applications into this box.