Pinyin Converter

Runs locallyInput stays in your browserFree, no sign-up

This tool does one thing: it maps every Chinese character to its Hanyu Pinyin reading. Under the hood it ships with a built-in dictionary of 20,000+ characters and looks each character up, producing pinyin with proper tone marks placed according to standard rules. The tone-number style (ni3) and the toneless style (ni) are then derived from the tone-marked form by fixed rules. Everything runs locally in your browser — no API calls, no uploads — so it keeps working offline once the page has loaded.

People reach for it in a handful of situations. Mandarin teachers paste in a reading passage and get character-by-character annotations for worksheets in seconds, instead of looking words up one by one. Parents helping children learn characters can check the pronunciation of an unfamiliar or rare character instantly. Video editors and presenters who need pinyin alongside Chinese text in subtitles or slides can copy the result straight out. And learners of Chinese use it to double-check tones while reading.

Polyphonic characters — characters with more than one reading — deserve an explanation. With no surrounding context, a dictionary lookup can only pick each character's most common reading, which is what the default mode does. When you need to verify, switch to “Show all readings” and every polyphonic character is annotated inline with all of its candidate readings, e.g. 重(zhòng/chóng), so you can pick the right one for your context.

A few honest limits. First, the correct reading of a polyphonic character in context cannot be determined by a machine with certainty: 重庆 as the place name is read chóng qìng, but the per-character most-common reading gives zhòng qìng — always verify before formal use. Second, the dictionary covers the 20,000+ characters of the CJK Unified Ideographs basic block (U+4E00–U+9FFF); extremely rare extension-block characters may be missing and are passed through unchanged. Third, in tone-number and toneless modes, ü is written as v by input-method convention (绿 → lv4) for pure-ASCII contexts; the tone-mark mode still shows lǜ. Fourth, non-Chinese characters — Latin letters, digits, punctuation — are kept as-is and never converted.

How to use

  1. Paste or type the Chinese text into the input box (or click “Load example” to try it).
  2. Pick a tone style (tone marks / tone numbers / no tones), a separator (spaces / none), and how to handle polyphonic characters.
  3. The result updates live; switch to “Show all readings” to inspect every candidate reading of each polyphonic character.
  4. Click “Copy result” to copy it wherever you need it.

FAQ

How accurate are the readings for polyphonic characters?

By default each character gets its most common reading — the only sensible choice without context — but that can be wrong inside a specific word. 重庆 as a place name is chóng qìng, while the per-character default gives zhòng qìng. Use “Show all readings” to review candidates per character, or confirm against context manually before formal use.

Why is ü shown as v?

Only in tone-number and toneless modes: ü is written as v by the long-standing input-method convention (绿 → lv4) so the output stays pure ASCII for filenames, URLs, and code. The tone-mark mode still shows lǜ.

Which characters are supported?

The built-in dictionary covers 20,000+ characters of the CJK Unified Ideographs basic block (U+4E00–U+9FFF) — virtually all commonly and uncommonly used characters. Extremely rare extension-block characters may be missing; those pass through unchanged and are counted as “Kept as-is”.

Is my text uploaded anywhere?

No. The pinyin dictionary loads with the page and every conversion is computed locally in your browser with zero network requests. Once loaded, the converter keeps working even if you go offline.

What happens to English text, digits, and punctuation?

They are kept as-is and never converted. “Hello你好” becomes “Hello nǐ hǎo”. The stats row shows converted characters and kept-as-is characters separately.