Text Tools
Mojibake Fixer
Fix garbled text where accents and quotes show as é, ’, or €. Repairs UTF-8 misread as Windows-1252 or Latin-1 in your browser.
Try a sample
Fixed output
38 chars- Applied 1 round of UTF-8 / Windows-1252 repair.
Repair options
Detected patterns in your input
Common mojibake giveaways found in the text above.
| Garbled | Repaired | Meaning |
|---|---|---|
| é | é | lowercase e with acute (resume, cafe, naive) |
| á | á | lowercase a with acute (Spanish accent) |
| ñ | ñ | lowercase n with tilde (Spanish enye) |
| ó | ó | lowercase o with acute |
Mojibake glossary
The most common UTF-8 / Windows-1252 mojibake patterns and what they should have been. Use this table to confirm the fixer made the right substitution.
| Garbled | Repaired | Meaning |
|---|---|---|
| é | é | lowercase e with acute (resume, cafe, naive) |
| è | è | lowercase e with grave |
| á | á | lowercase a with acute (Spanish accent) |
| ñ | ñ | lowercase n with tilde (Spanish enye) |
| ó | ó | lowercase o with acute |
| ü | ü | lowercase u with diaeresis (German umlaut) |
| ö | ö | lowercase o with diaeresis |
| ä | ä | lowercase a with diaeresis |
| ß | ß | German sharp s (eszett) |
| £ | £ | pound sign |
| © | © | copyright sign |
| ® | ® | registered sign |
| ° | ° | degree sign |
| ½ | ½ | one-half fraction |
| € | € | euro sign |
| ’ | ’ | right single curly quote |
| ‘ | ‘ | left single curly quote |
| “ | “ | left double curly quote |
| • | • | bullet |
| … | … | horizontal ellipsis |
| – | – | en dash |
| â„¢ | ™ | trade mark sign |
What causes mojibake?
Wrong default encoding
A CSV exported from Excel or a text file saved in older Windows software is often Windows-1252. When another program opens it as UTF-8 and saves the result, the bytes for an accent become two or three characters like the classic A-tilde + acute pair.
Missing charset header
A web page that serves UTF-8 bytes but does not declare the charset can be displayed as Latin-1 by the browser, which is the same kind of mojibake. Add <meta charset="utf-8"> or the matching HTTP header to prevent this.
Database column mismatch
MySQL or PostgreSQL columns set to latin1 or SQL_ASCII silently store UTF-8 bytes as one character per byte. A later read returns mojibake unless the original bytes are recovered.
Email and forwarded text
Forwarded plain-text email, sloppy copy-paste from PDFs, and chat logs that pass through clients with different encoding defaults can introduce repeated rounds of mojibake. Increase the rounds setting above to repair these.
How to use
- Paste the garbled text into the input on the left, or click one of the sample buttons to load a worked example (Spanish phrase, curly quotes, euro and copyright, German words).
- Pick a source encoding. Windows-1252 (CP1252) is the right answer for almost all real-world mojibake; switch to ISO-8859-1 only if the input came from a system that strictly used Latin-1.
- Pick the max rounds. Two rounds repairs the everyday case; raise to three or four if the text was double-encoded and the output still looks garbled.
- Read the status badge above the output. Fixed means the round-trip worked; No mojibake detected means the input was already clean.
- Copy the repaired text with the Copy button, or click Replace with fixed to overwrite the input so you can run another pass.
About this tool
Mojibake Fixer repairs the most common encoding accident on the web: UTF-8 bytes that were decoded with the wrong single-byte encoding (Windows-1252 in almost every case, or ISO-8859-1 in older systems) and then re-saved. Symptoms include accented letters showing as two characters (cafe shows as café), curly quotes turning into an a-circumflex followed by punctuation (don’t instead of an apostrophe), the euro sign rendering as €, and the trade mark sign rendering as ™. The fixer takes each character in your input, looks up the original Windows-1252 or Latin-1 byte that would have produced it, collects those bytes, and decodes them as UTF-8 using the native browser TextDecoder. If the resulting text is still mojibake, the tool runs another round, because text can be double-encoded (a CSV opened wrong, saved, re-imported, and saved again). A status badge tells you whether the fix succeeded, how many rounds were needed, or whether the input was not mojibake at all. A glossary of the most common garbled sequences appears below the editor so you can confirm the substitution is the one you expected, and a detected-patterns table highlights the specific giveaway sequences the fixer found in your text. The tool runs entirely in your browser, so private text never leaves your device.
Free to use. Works in your browser. No signup, no login.
Related tools
You may also like
Unicode Character Inspector
Per-character breakdown with code points, UTF-8/UTF-16 bytes, and hidden character detection.
Open tool
TextText Cleaner
Remove duplicate lines, blank lines, extra spaces, tabs, and invisible characters.
Open tool
TextInvisible Character Detector
Find and remove zero-width spaces, BOM, bidi controls, and other hidden Unicode.
Open tool
TextUTF-8 Byte Counter
UTF-8 bytes, UTF-16, code points, graphemes, plus SMS, cookie, and payload limits.
Open tool
TextSmart Quotes Converter
Convert curly quotes, dashes, and ellipsis between smart Unicode and plain ASCII.
Open tool
DeveloperHTML Entity Encoder Decoder
Two-way HTML entity encoder and decoder with named, decimal, and hex modes.
Open tool