What this tool does
Mojibake appears when text encoded as UTF-8 is decoded as another encoding, such as Latin-1 (ISO-8859-1) or Windows-1252. Mojibake Fixer tests the supported reverse paths, including selected two-step paths for double-encoded text. It ranks successful candidates with a heuristic corruption score and shows the result in the page.
This is a repair tool, not a Unicode or text-code representation converter. Processing uses browser-side TextEncoder and TextDecoder logic.
Repair mojibake
- Paste garbled text into the input textarea. You can also click Upload to choose a text file, or drop a file onto the input area. Dropped content is read as text.
- Review the Suspected Repair Path & Candidates panel. It lists the supported paths found for the input and their displayed corruption scores.
- The lowest-scoring candidate is marked Suggested and selected automatically only when its score improves on the original. Otherwise, Keep original text (no repair) remains selected. You can choose another radio-button candidate.
- Inspect the readonly output textarea. Selecting an option updates it immediately. A repair candidate also updates the Preview - What Changes panel.
- Use the output textarea's Copy or Download control to take the result.
The read-only output mirrors the selected option immediately. There is no separate commit step: review the candidate and preview, then use Copy or Download when the result is ready.
Review candidates and preview changes
The displayed score is a weighted heuristic corruption score. A lower score is a cleaner ranking signal, not a direct count of remaining signatures. It is not a grammar, spelling, or semantic check, so inspect the candidate before copying it. The stats line reports the original Corruption score, any replacement-character count, and the number of candidates found.
Preview - What Changes normally shows a token-based comparison with changed candidate text highlighted. It may not show every deletion as an explicit character-level change. For inputs whose token arrays exceed 250000 pairs, the page uses an escaped candidate preview instead of the normal diff. That fallback is limited to 4000 characters and adds [preview truncated] when needed.
These transformations are applied to the input as a whole. Clean text will generally remain unchanged when it survives the selected byte transformation, but check the output and preview for the text you supplied.
When no repair candidate is shown
- The text may already be clean.
- No common encoding-misinterpretation pattern may be detected.
- Unicode replacement characters may indicate that some original bytes were already lost.
When no repair is appropriate, select Keep original text (no repair). There is no established maximum input size on this page; the confirmed size behavior concerns the preview fallback above.
Input and output limitations
- Upload and page-wide drop use the shared text-file input. The picker accepts
.txt,.csv,.log, and.mdfiles, which are read as text in the browser; unsupported file types show an error and leave the current text intact. - The page does not establish browser or platform compatibility details.
- The output is readonly and can be copied or downloaded after you select an option.
Frequently Asked Questions (FAQs)
What is mojibake?
Mojibake is garbled text produced when bytes from one character encoding are decoded using another encoding. This tool focuses on supported cases involving UTF-8 misread as Latin-1 or Windows-1252.
How is this different from the Unicode Converter or Text Code Converter?
Those tools change how correctly-decoded text is represented. Mojibake Fixer tests supported byte-level reversals for text that may have been decoded with the wrong encoding.
What is double-encoding?
Double-encoding means the wrong-encoding mistake happened twice. The tool includes selected two-step Latin-1 and Windows-1252 paths among its candidates.
Can all garbled text be recovered?
No. Replacement characters can indicate that original bytes were already lost. The interface reports this possibility instead of treating a repair as certain.
Will this tool change text that is not corrupted?
The tool applies a selected byte transformation to the supplied text as a whole. Review the output and preview; it does not perform spelling, grammar, or translation changes.
Is my text sent to a server?
The page's detection and repair logic runs in the browser with native TextEncoder and TextDecoder APIs. The inspected repair script contains no upload request.