Full-width / Half-width Converter
TextEverything runs locally in your browser — nothing is uploaded
Letters and digits typed with an IME in full-width mode (`ABC123`) often fail where they are used: account names, amounts, verification codes and command-line arguments all expect half-width. This tool converts the whole text in one direction — full-width letters, digits and symbols down to half-width, or the reverse. The line between Chinese and Latin punctuation follows Unicode code points, not what looks Chinese, and that is what decides which characters change; it gets its own FAQ entry below because it is the usual source of confusion. Note also that `。`, `、`, `「」` share code points with the Japanese half-width forms, which is why katakana conversion is off by default.
Features
- Full-width letters, digits and symbols down to half-width, or the reverse
- Covers full-width ASCII (U+FF01–U+FF5E) and the ideographic space U+3000
- Covers the seven full-width currency and symbol variants such as ¥ £ ¢ ₩, which sit outside the ASCII range and are the easiest to miss
- Optionally converts half-width katakana, merging `ハ` + `゙` into a single `バ`
- Chinese punctuation `。` `、` `「」` `《》` is left alone — it has no half-width form
- CJK, emoji and every other non-ASCII character pass through untouched
- The two directions are inverses: converting and converting back restores the original
- Updates as you type and copies in one go
- Everything runs locally in the browser; your text is never uploaded
How to use
- Pick a direction: full-width to half-width, or the reverse
- Paste the text
- For Japanese text, tick the katakana option when you need it
- Copy the result
FAQ
- Why did my Chinese comma become a Latin comma while the full stop stayed?
- Because the boundary follows Unicode code points, not appearance. `,`(U+FF0C), `:`(U+FF1A) and `?`(U+FF1F) are inside the full-width ASCII range (U+FF01–U+FF5E) — they genuinely are the full-width forms of `,` `:` `?`, so they convert. But `。`(U+3002), `、`(U+3001), `「」`(U+300C/300D) and `《》`(U+300A/300B) live in a different range: they are independent Chinese punctuation with no half-width form, so they stay. This is not an optional extra — it is what "full-width to half-width" means. If you need to change only letters and digits and leave punctuation alone, this tool cannot do it.
- Why is the katakana option separate, and off by default?
- Because `。`(U+3002), `、`(U+3001), `「」` and `・` share code points with the Japanese half-width forms `。` `、` `「」` `・`. Turning it on converts a Chinese full stop into the small half-width circle and the enumeration comma into a small tick — pure damage for Chinese text, and it looks like the tool is broken. So it defaults to off: leave it off for Chinese, turn it on for Japanese. Once on, pairs like `ハ`+`゙` merge correctly into `バ`, and the small kana and long vowel mark each have their own mapping.
- What is a full-width space?
- It is U+3000, the "ideographic space" — the same width as one CJK character, used for alignment in Chinese and Japanese typesetting. A Latin space is U+0020, half that width. Converting to half-width turns U+3000 into an ordinary space; converting to full-width turns an ordinary space into U+3000, which is why text looks wider after a half-to-full conversion.
- Why was ¥ converted as well?
- Because `¥`(U+FFE5) is the full-width form of `¥`(U+00A5). It is not in the same range as `$`(U+FF04) — that one can be shifted to `$` by subtracting 0xFEE0, while the half-width yen lives in the Latin Extended block and has to be listed individually. There are seven such symbols (`¥ £ ¢ ₩ ¬  ̄ ¦`), and missing them shows up as "the ¥ in my amount did not convert while the $ next to it did", which reads as flaky behaviour.
- Is my text uploaded?
- No. The conversion happens entirely in browser memory; the page makes no requests and works offline.
Related tools
Text Cleaner
TextClean up a column pasted out of a log or spreadsheet: deduplicate, sort, drop blank lines, trim whitespace and strip line numbers, all in your browser.
Chinese Converter
TextConvert Chinese between simplified and traditional characters, leaning on common words first and the most usual form for the rest, all in your browser.
Case Converter
TextConvert identifiers between fourteen naming styles. Words are split correctly first, so acronyms such as HTTPServer come out right, all in your browser.
Chinese Typesetting
TextAdd spaces between Chinese, Latin and digits, convert half-width punctuation in Chinese context, and tidy ellipses. URLs, emails and code stay untouched.
Text Diff
TextCompare two blocks of text online and highlight added, removed and unchanged lines, so only the lines that changed are marked. Runs in your browser.
Word Counter
TextCount Chinese characters and English words separately, alongside characters, lines, real UTF-8 bytes, reading and speaking time, and SMS segment counts.