Qraft

Kanji Mode

Kanji Mode is an encoding mode that reflects the QR code's Japanese origins. It stores kanji, hiragana, katakana, and full-width symbols from the Shift JIS (JIS X 0208) character set at 13 bits per character. The same characters in Binary Mode with UTF-8 encoding would require 24 bits (3 bytes), making Kanji Mode roughly 46% more space-efficient for Japanese text.

The compression subtracts a specific offset from the Shift JIS code point, then multiplies the high byte by 0xC0 and adds the low byte, encoding the result in 13 bits. Maximum capacity is 1,817 characters at Version 40.

In modern practice, Kanji Mode sees limited use for two reasons. First, Shift JIS covers only a subset of Unicode, excluding emoji, simplified Chinese, and Korean. Second, many QR code readers assume UTF-8, and may fail to decode Shift JIS data correctly. For international use, Binary Mode with UTF-8 is the safer choice. Kanji Mode remains advantageous only for Japan-domestic applications where minimizing character count is critical.