About this tool
Add or strip the UTF-8 byte order mark on SRT and WebVTT subtitles, fix line endings and spot mojibake before upload.
The Subtitle UTF8 BOM Fixer adds or removes the three-byte UTF-8 byte order mark (EF BB BF, code point U+FEFF) at the start of an SRT, WebVTT or SBV file, and reports what else is wrong with the file's encoding. It detects the subtitle format from its timing lines, counts cues, flags mixed CRLF and LF line endings, finds stray U+FEFF characters buried inside cue text, and recognises mojibake left behind when UTF-8 bytes were read as Windows-1252. Everything runs locally in the browser, so the file never leaves the machine.
Open Subtitle UTF8 BOM Fixer on AltFTool — it loads instantly in your browser.
Paste your code or data sample into the workspace.
Pick the format, conversion, or analysis you need.
Copy the polished result straight back into your project.
Reports the exact UTF-8 byte size before and after, so you can see the three bytes the BOM costs.
Catches U+FEFF characters sitting inside cue text, not just the one at the start of the file.
The file is read and rewritten in the browser; no upload, no server copy of client content.
It is the three bytes EF BB BF at the start of a file, the UTF-8 encoding of code point U+FEFF. It adds exactly three bytes and carries no text content; its only job is to signal that the file is UTF-8.
It depends on the player. SRT has no formal encoding specification, so some hardware players and older desktop apps treat a missing BOM as permission to fall back to a legacy code page and mangle accented characters. Other parsers read the BOM as part of the first cue number and drop subtitle 1. Test the target player: add the BOM if accents break, strip it if the first line vanishes.
No. The WebVTT specification requires the file to be UTF-8 and allows an optional BOM before the WEBVTT signature, so the mark is redundant. What is mandatory is that the file begins with the literal string WEBVTT, otherwise browsers reject the text track.
That is mojibake: UTF-8 bytes decoded with a single-byte code page such as Windows-1252. The sequence C3 A9 for e-acute shows as two characters, and a UTF-8 BOM shows as the trio U+00EF U+00BB U+00BF. The fix is to re-open or re-export the original file as UTF-8, not to search and replace the broken characters.