Drop any text file below to instantly detect its character encoding — UTF-8, UTF-16, ASCII, Latin-1, and more. No upload. No login. Fully private.
Drag & drop your file here
Supports .txt, .csv, .log, .tsv, .json, .xml, .html, .js, .py, and any text-based fileEncoding Detected
Not sure whether your file is UTF-8, UTF-16, ASCII, or something else? The Flipper File Encoding Detector analyzes your text file's byte patterns and BOM (Byte Order Mark) to identify the character encoding instantly — right in your browser, with no upload or account needed. Whether you're debugging a broken CSV, prepping files for import, or tracking down garbled characters, this tool gives you the answer in seconds.
How to Detect Your Text File's Encoding
- Click Choose File and select any
.txt,.csv,.log,.tsv, or similar plain-text file. - The tool reads the raw byte data directly in your browser.
- Your file's encoding is detected and displayed instantly — including BOM status, confidence level, and character count.
- Review the encoding details and copy the result if needed.
- Use the "Preview" pane to see how the file content actually renders in the detected encoding.
Why Use Flipper File to Detect Text Encoding?
- 100% browser-based — your file is never uploaded to any server; analysis happens entirely on your device.
- Detects all major encodings — UTF-8 (with and without BOM), UTF-16 LE/BE, UTF-32, ASCII, ISO-8859-1 (Latin-1), Windows-1252, and more.
- Shows BOM status — clearly identifies whether a Byte Order Mark is present and what it means.
- Confidence scoring — displays how certain the detector is, so you know when the result is definitive vs. a best guess.
- File stats included — byte size, character count, and line count shown alongside the encoding result.
- Completely free — no login, no account, no watermarks, and no file size limits.
Frequently Asked Questions
What is text file encoding?
Text file encoding is the system that maps characters to bytes in a file. Common encodings include UTF-8 (the modern standard supporting all languages), ASCII (English-only, 128 characters), Latin-1 / ISO-8859-1 (Western European), and UTF-16 (used by Windows and some legacy apps). When a file is opened in the wrong encoding, characters display as garbled symbols or question marks.
How does the encoding detector work?
The tool reads the raw bytes of your file and looks for patterns that signal a specific encoding. It first checks for a BOM (Byte Order Mark) — a magic byte sequence at the start of the file that explicitly declares the encoding. If no BOM is present, it uses heuristic byte analysis to determine the most likely encoding.
What is a BOM (Byte Order Mark)?
A BOM is a special hidden marker at the very beginning of some text files that identifies both the encoding and byte order. UTF-8 with BOM starts with the bytes EF BB BF; UTF-16 LE starts with FF FE. Not all encodings use a BOM, so BOM detection is one signal among several.
What's the difference between UTF-8 and UTF-16?
UTF-8 encodes characters using 1–4 bytes and is backward compatible with ASCII, making it the dominant encoding on the web. UTF-16 uses 2 or 4 bytes per character and is common in Windows applications and older Microsoft formats. Both can represent every Unicode character, but they use different byte sequences.
Why is my CSV file showing garbled characters?
This usually means the file was saved in one encoding (e.g., Windows-1252 or Latin-1) but opened in another (e.g., UTF-8). Use this tool to detect the actual encoding, then open the file in your spreadsheet application using that specific encoding setting.
Can this tool detect encoding for non-.txt files?
Yes. The detector works on any plain-text-based file — .csv, .log, .tsv, .json, .xml, .html, .js, .py, and more. The encoding is a property of the raw bytes, not the file extension.
What happens if the encoding can't be determined?
If the byte patterns are ambiguous, the tool will display its best guess along with a low confidence score, and note that multiple encodings could apply. In that case, the file may be binary rather than plain text, or may use a very uncommon encoding.
Is my file uploaded to your servers?
No. Everything happens in your browser using the JavaScript File API. Your file never leaves your device, and nothing is stored or logged.
