A mainland China postal code has six digits. There is no single code for all of China, and one city can contain many postal codes. For delivery, match the code to the recipient's full address.
What the six digits mean
A postal code, also called a postcode or ZIP code on some forms, helps route mail. Mainland China's system uses four levels within six digits: a two digit prefix for a province level postal region, one digit for the postal area, one for a county or city level area, and two for the delivery office or area. Xinhua's explanation of the coding system describes these levels.
Think of the code as a routing identifier, rather than a unique property identifier. Knowing six digits does not establish a particular building, apartment, or resident. A telephone area code serves a different purpose and cannot replace a postal code in an address field.
Postal code examples for ten cities
These are reference examples associated with each city, not universal codes for every address within it. The codes below appear in TravelChinaGuide's city postal code table. That table is a useful orientation aid; a real recipient or delivery provider should confirm the exact code.
| City | Example code |
|---|---|
| Beijing | 100000 |
| Shanghai | 200000 |
| Guangzhou | 510000 |
| Shenzhen | 518000 |
| Chengdu | 610000 |
| Hangzhou | 310000 |
| Nanjing | 210000 |
| Xi'an | 710000 |
| Guilin | 541000 |
| Hohhot | 010000 |
The generator on this site supports Beijing, Shanghai, Guangzhou, and Shenzhen. Cities listed here provide reference context and do not add generation options.
How to find the right code for a delivery
- Start with the complete recipient address. Obtain the province or municipality, city, district or county, street, house number, and any building or room details. A city name alone is too broad.
- Ask the recipient to confirm the postal code. If it is missing or conflicts with another source, check with the recipient, local post office, or the delivery provider you will use.
- Compare the complete record. Keep the postcode together with the address it belongs to. Do not substitute a different district's code just because it has the right number of digits.
This page explains the format and gives examples. It does not query a live address database or validate a delivery destination.
Using postal codes in forms, CSV, and JSON
Store postal codes as text so all six digits survive. The example 010000 should remain six characters; a spreadsheet may turn it into the number 10000 if it infers a numeric column. When importing a CSV, set that column's type to Text. In JSON, keep quotation marks around the value, as in "postal_code": "010000".
For your own test form, a six digit pattern checks the shape of the value. It does not check whether the code matches a district, street, or premise. Keep those two checks separate in your requirements. Our exported JSON preserves postal codes as strings, and downloading a file does not regenerate the displayed batch.
Common postal code questions
Can I use one code for all of China?
No. China is not represented by a single delivery postcode. Use the code associated with the full mainland delivery address. A broad city example may be useful for a classroom exercise, but it is not a substitute for a recipient's confirmed details.
Is a generated postal code ready for shipping?
Generated records are sample data for testing and education. Their six digit shape does not verify a delivery route or platform acceptance. For shipping, obtain the actual address and code from the recipient or carrier.
Does the same six digit rule apply to Hong Kong?
Hong Kong has its own addressing conventions and does not operate a postcode system. Do not infer its requirements from a mainland form. Follow the destination options and instructions of the service you are using.