Skip to content

🔤 Full-Width / Half-Width Converter

Convert ASCII letters, katakana, spaces and symbols between full-width and half-width. Toggle each category. Real-time, with copy and download.

100% Free No signup Browser-only 5 languages Dark mode

🔒 About Privacy

0 chars

📖 Where people get stuck

Convert between full-width and half-width forms of alphanumerics, katakana, spaces and punctuation, choosing which categories to touch. Everything runs in the browser. Full-width and half-width are not two widths of one character but entirely separate characters in Unicode. A (U+0041) and (U+FF21) look the same to a person and are as different as A and B to a program. A great many search-does-not-match and duplicate-not-detected problems start here.

Case What happens What to do
Voiced marks come apart into separate characters Half-width katakana has no pre-composed voiced characters: is written as followed by , two characters. So while the text stays half-width, the character count and any per-character processing disagree with what you see. パ is two characters where is one. It usually surfaces as a form-length limit being exceeded by half-width katakana. Normalise to full-width katakana on receipt, before storing. The conversion has to combine and into , so a simple one-to-one substitution table is not enough. The other direction still has demand for receipt printers and older back-office systems, but even then, hold the data full-width internally and convert only at the moment of output.
Converting punctuation breaks things Converting all punctuation to half-width sweeps up Japanese sentence punctuation and brackets along with it, turning and into , and . and leaving prose unreadable. Going the other way, the @ in an email address, the / in a URL and any symbols in code become full-width and stop working. Full-width hyphens in an address field breaking street-number search is a common variant. Convert by category. The combination that is almost always right in practice is alphanumerics to half-width, katakana to full-width, spaces to half-width, and sentence punctuation and brackets left alone. This page lets you pick per category, so select only what you need. In code, enumerating the characters you normalise explicitly is safer than widening the range later.
Duplicates survive the normalisation Aligning the widths is not enough. Unicode holds other characters that look identical but sit at different code points: an ideographic space (U+3000), a non-breaking space (U+00A0) and an ordinary space; a prolonged sound mark (), a hyphen, an em dash and a full-width hyphen; a circled digit () and (1). All of these look the same and are not. Apply Unicode normalisation (NFKC). It folds full-width alphanumerics, circled digits, ligatures and compatibility characters into a standard form in one pass. But NFKC is lossy — it turns into 1 — so do not apply it to the value you display. The convention is to keep a separate key for comparison and search: store the original as typed and index a normalised column beside it.

In an input form, stop asking users to type in half-width and normalise what arrives instead; you will lose fewer people and field fewer questions. Typing a digit with a Japanese input method active produces a full-width one — treating that as user error is a failure of design, not of the user. Accept phone numbers, postal codes and card numbers with or without hyphens and tidy them up afterwards. Incidentally, the half-width and full-width examples shown on this page are not a translation oversight — the characters being converted are the subject matter.

📖 How to Use

  1. 1
    Paste your text
    Paste the text you want to convert into the input box on the left.
  2. 2
    Choose categories
    Toggle ASCII, katakana, space and symbols to narrow what gets converted.
  3. 3
    Press the direction button
    Click To Half-Width or To Full-Width and the result appears on the right.
  4. 4
    Copy or download
    Copy to clipboard with one click or download as a .txt file.

❓ Frequently Asked Questions

Are dakuten and handakuten on half-width kana handled?
Yes. Sequences like ガ collapse to ガ and パ to パ when going to full-width; the reverse splits them back into two half-width characters.
Is my input stored anywhere?
No. Everything runs in JavaScript inside your browser; nothing is sent to any server. You can verify in the Network tab.
Does it convert hiragana too?
Hiragana has no half-width form, so it is out of scope. Convert to katakana first if you need a half-width version.
🐛 Found a bug or issue with this tool?

Free to use, no signup. Even just the steps to reproduce are helpful. Reports go directly to the operator and help us fix issues.

* Browser info (UA / screen / language / URL) is sent automatically to help reproduce the issue