Fix Shift-JIS Subtitles

A Japanese subtitle file that shows scrambled characters is usually not broken. It was saved in Shift-JIS, and the player is reading it as UTF-8. Decode it with the right encoding and the Japanese comes back, with the timestamps untouched.

Your file is processed only in this browser tab. It is never sent to a server.

Fix it now

Open the Subtitle Encoding Fixer, choose the garbled file, preview the candidate decodings, and pick the one that reads as correct Japanese. Open the Subtitle Encoding Fixer

Why Shift-JIS subtitles turn garbled

Shift-JIS was the standard way to store Japanese text on Windows before UTF-8 took over. In Shift-JIS, ASCII characters such as digits and punctuation take one byte, while hiragana, katakana, and kanji take two bytes. UTF-8 uses a different byte pattern for those characters, so when a player assumes a Shift-JIS file is UTF-8, it reads those two-byte sequences as the wrong characters. The result is the classic mojibake: the Japanese turns into a string of accented Latin letters, symbols, and question marks, while the rest of the file still looks fine.

That last detail is the best diagnostic clue. If the timestamps, cue numbers, and punctuation look normal and only the Japanese text is scrambled, the file is almost certainly in a legacy encoding, not corrupted. A truly damaged file would garble everything, including the timing lines.

How to tell a file is Shift-JIS

Work through this checklist before you change anything:

  1. The file came from an older Japanese subtitling tool, or was downloaded from a Japanese subtitle site. Files made by modern editors are usually UTF-8 already.
  2. Only the Japanese text is garbled. Digits, timestamps, and punctuation are intact, because those bytes are identical in Shift-JIS and UTF-8.
  3. Decoding the file as Shift-JIS in the preview restores readable Japanese. If the Shift-JIS preview reads correctly, that is the answer, no matter what any automatic detector guessed.
  4. The file has no UTF-8 byte order mark. A file starting with the BOM bytes is UTF-8, so a garbled file with a BOM points to a different problem, such as double-encoding.

Automatic detection is unreliable on short files, because a few lines of text are not enough evidence to choose between encodings. Previewing the candidates and reading them yourself is more reliable than any guess, which is why the fixer shows you every candidate instead of silently picking one.

Common pitfalls with Japanese files

Japanese text has three traps that Chinese and Korean files do not. First, kanji-only Japanese is indistinguishable from Chinese by script alone: the same characters appear in both languages, so a detector can confidently label a Japanese file as Chinese. If the preview offers a Chinese decoding that looks almost right but the kana are wrong, pick Shift-JIS yourself instead of trusting the label.

Second, half-width katakana is a Shift-JIS feature with no clean UTF-8 equivalent in older files. After a correct decode, half-width katakana may display as full-width katakana or as a close variant. That is a display difference, not a decoding error, and it does not affect the timing or the meaning.

Third, some punctuation marks map differently between Shift-JIS and its Windows extension CP932, so a wave dash or a double-byte hyphen can come out as a different but similar-looking mark. If only one or two punctuation marks look off after an otherwise clean decode, that is the cause, and fixing those marks by hand is faster than trying another encoding.

How to fix a garbled Shift-JIS subtitle file

  1. Open the Subtitle Encoding Fixer and choose the garbled file, then preview the candidate decodings and compare their first lines.
  2. Pick the Shift-JIS candidate whose first lines read as correct Japanese, even if an automatic label suggested Chinese.
  3. Download the result as UTF-8, and keep the original file unchanged, so you can try a different decoding if the first pick turns out to be wrong.
  4. If the text still looks wrong after a Shift-JIS decode, try the double-encoding repair, which handles files that were read as one encoding and re-saved as another.

Decoding only changes how character bytes are interpreted. It never touches the timestamps, cue numbers, or line breaks, so the fixed file stays in sync with the same video.

When a Shift-JIS file cannot be fixed

Some damage is permanent. If the file contains the replacement character �, those bytes were already thrown away by an earlier program that decoded the file wrongly and saved the result. The original characters are gone from that copy, and no decoding can bring them back. The only fix is to get the original file again before it was re-saved.

A mixed file, where some cues are Shift-JIS and others are already UTF-8, also cannot be fixed with a single decoding. Split the file by section if you can and fix each part separately, or re-download a clean copy.

Common questions

Is Shift-JIS the same as CP932? CP932 is Microsoft's extension of Shift-JIS with a few extra characters. Decoding a CP932 file as Shift-JIS gives the right characters in almost all cases, and only a handful of CP932-only punctuation marks may come out differently.

Will fixing the encoding change the timestamps? No. Decoding only changes how character bytes are read. The timestamps, cue numbers, and line breaks stay exactly as they were, so the fixed file stays in sync with the video.

Related tools

Subtitle Encoding Fixer · CJK Subtitle Checker · SRT to WebVTT Converter