Full-width / half-width converter — Guide

Convert between full-width and half-width characters using the fixed Unicode offset 0xFEE0, or adjust punctuation only.

What it is and when to use it

Convert between full-width and half-width characters — the fixed Unicode offset 0xFEE0 maps A to A, 1 to 1 and so on — with an option to adjust punctuation only. Essential when cleaning data pasted from CJK documents, aligning mixed-language databases, or fixing lookups that fail because "ABC" and "ABC" are different strings to a computer.

Converts characters between full-width and half-width forms, cleaning up full-width letters, digits or punctuation that crept into mixed CJK/Latin text.

How to use it

  1. Paste the text to process
  2. Pick a conversion mode: half-width → full-width, full-width → half-width, or punctuation only
  3. Copy the converted result

A worked example

Fill in sample text

ABC123,全角标点。

Copy this into the tool, or open Full-width / half-width converter

Things that trip people up

  • Punctuation-only mode leaves letters and digits alone and replaces punctuation per the mapping table
  • Half-width and full-width spaces (U+3000) are both converted

Questions people ask

What is the difference between full-width and half-width?
Full-width characters occupy an em square (used in CJK typesetting); half-width is the narrow Latin form. Unicode places most full-width forms at a constant 0xFEE0 offset from their half-width counterparts, which is exactly what this tool exploits.
Why did my search or join fail with no visible difference?
Because ABC and ABC are different code points even though they print identically in many fonts. Normalising width before comparing strings fixes a whole class of "invisible" data bugs.
When should I convert punctuation only?
When the letters are correct but punctuation came in full-width from a CJK editor (,vs ,). Converting only punctuation keeps identifiers intact while fixing separators.

Next steps

Open the Full-width / half-width converter tool

Spotted something wrong on this page? Tell us via Contact Us