Mojibake Fixer
Repair text where accents turned into é, ’ or †by re-decoding it as UTF-8. Runs up to three passes and shows the text after each one.
Repaired text
Paste text where accented letters have turned into sequences like é, ’ or â€. Up to three repair passes are applied and each one is shown so you can see where the damage stops.
What is the Mojibake Fixer?
Mojibake is what you get when UTF-8 bytes are read using the wrong character set. The most common case by far is UTF-8 decoded as Windows-1252: café becomes Café, a curly apostrophe becomes ’, and an em dash becomes —.
- Fixes the classic é, ’ and †patterns from UTF-8 read as Windows-1252
- Runs up to three passes for text that was double or triple encoded
- Shows the text after every pass so you can see the layers unwind
- Refuses to change text that is already clean instead of corrupting it
- Separate strict Latin-1 mode for text that skipped the Windows-1252 range
- Copy or download the repaired text; processing never leaves your browser
How to use the Mojibake Fixer
- 1
Paste the garbled text into the input box.
- 2
Leave the encoding on Windows-1252, or switch to strict Latin-1 if you know the text went through that instead.
- 3
Read the repaired text at the top and the per-pass breakdown underneath.
- 4
Copy or download the fixed text, or press “Use the repaired text as input” to run another round.
About the Mojibake Fixer
Mojibake is what you get when UTF-8 bytes are read using the wrong character set. The most common case by far is UTF-8 decoded as Windows-1252: café becomes Café, a curly apostrophe becomes ’, and an em dash becomes —. The original text is still in there, just wearing the wrong encoding.
This fixer undoes the damage by mapping every character back to the single byte it came from — using the 27-entry Windows-1252 table for the 0x80–0x9F range that ISO-8859-1 leaves empty — then decoding those bytes as UTF-8. It runs up to three passes, because text is often encoded wrongly more than once, and shows you the result after each pass so you can see where the layers stop.
If the text is already clean, or the damage came from a different encoding such as Shift-JIS, the tool says so and leaves your text exactly as you pasted it rather than mangling it further. Everything runs locally in your browser and nothing is uploaded.
Frequently asked questions
Why does my text show é instead of é?
Because UTF-8 bytes were decoded as Windows-1252. In UTF-8 the letter é is two bytes, 0xC3 and 0xA9, and Windows-1252 renders those two bytes as the two characters à and ©. Re-decoding them as UTF-8 restores the original é.
What does mojibake mean?
It is a Japanese word, 文字化け, meaning roughly “character transformation”. It describes text that has become unreadable because it was decoded with the wrong character encoding.
Why did my text need more than one pass?
Because it was encoded incorrectly more than once — usually when badly encoded text is saved, exported and re-imported through another system. Each pass strips one layer, which is why the tool shows the result after each one.
Why does the tool say no mojibake was detected?
Because the text cannot have come from a Windows-1252 mis-decode: either it is already correct, or the bytes would not form valid UTF-8. Rather than guess and corrupt your text, the tool leaves it untouched. Damage from Shift-JIS, KOI8-R or GBK looks different and is not covered.
Is my text uploaded to fix it?
No. The repair uses the browser's own TextEncoder and TextDecoder, so everything happens on your device. Nothing is sent to a server and the page works offline.
Related tools
Homoglyph Detector
Spot Cyrillic, Greek and other characters disguised as ASCII letters in domains, brand names and messages. Shows the position, script and code point of each one.
Full-Width to Half-Width Converter
Convert zenkaku full-width letters, digits and katakana to hankaku half-width and back, with dakuten composition and an NFKC normalisation mode.
Whitespace Visualizer
Draw every space, tab and line break as a visible glyph, and highlight non-breaking spaces, exotic spaces and zero-width characters with a per-type tally.
Base64 Decoder
Decode Base64 to readable text or download it as a file. Handles URL-safe base64url and missing padding automatically. Free, private, in-browser decoder.
URL Decoder
Decode percent-encoded URLs back to readable text instantly. Optional '+ as space' handling for query strings and clear errors for malformed input.