I’ve never come across a country like China when it comes to booking transport.
In most countries booking travel is either made:
- very easy through platforms or agents, or
- very difficult, but you can just show up and book last minute with high on-the-day availability (as is often the case in some developing countries).
China is neither.
It’s both hard to book as a foreigner and you need to book far in advance, especially around popular dates (not even holiday peaks). That’s what makes China a unique challenge.
I made this guide to help you book train tickets like a local, to give you the best chance at securing your seat.
When to ignore this guide
Skip this guide if:
- You’re not travelling on a popular date.
- There’s high availability for your route.
This is not a guide for navigating the big Chinese public holidays like Golden Week or Chinese New Year (I’m not sure how anyone gets tickets then). This guide is for those “popular but not crazy popular” dates, when availability disappears in minutes but it’s just possible to get a ticket if you’re strategic.

Why not just use trip.com?
You’re probably thinking it. After all the english version of the site is very easy to use.
Here’s the catch though: Trip.com is a third-party agent. It doesn’t plug directly into the official China Railway system. Instead, it monitors the system and attempts to book on your behalf.
While it’s a great service for casual bookings, you won’t have the best chance of getting a ticket this way, especially when trains sell out fast.
The best way? Use the official China Railways system. But it’s not as simple as going to the website and clicking “Buy”.
‘The catch’ with the official system
There are two main problems with the official options:
- The website (in both English and Chinese) is missing critical features.
- Most importantly: no waitlist function.
- The English version of the app is totally different to the Chinese version, and has reduced functionality.
So the only real option is to use the Chinese-language version of the 12306 app.


Steps: How to book train tickets in China like a local
Step 1: Download the 12306 App
Search for 12306 (China Railway) in your app store. Install the official Chinese-language version.
Step 2: Register an account (use the website)
Go to 12306 official website
- Use the English version of the website to register.
→ This lets you skip the Chinese phone number verification requirement. - If you register via the Chinese site, it’ll demand a Chinese number — not ideal for foreigners.
Step 3: Verify your ID
You must complete identity verification before booking.
- Upload a photo of your passport, and a photo of you holding your passport. You might need to do this part on the Chinese version of the website (I did).
- Verification usually takes a few hours, or at most a day.
Only foreign passports are accepted. No driver’s licences or other ID.
Step 4: Switch the app to Chinese
If your app opened in English:
- Navigate to settings and switch the app language to Chinese.
- You’ll notice the app changes completely.
Use a second device (like an iPad or friends phone) to help you translate in real time. Open the Apple Translate app, set it to “Simplified Chinese → English”, and point the camera at your screen.
Step 5: Understand when tickets become available for booking
- Tickets open 15 days before travel.
- The release time varies, but it’s usually 8am for most trains.
- Check the exact time using:
- Trip.com (just for research)
- The 12306 app itself (Chinese version)
Be online at least 10 minutes before release so you can:
- Choose your train
- Pre-fill your details (this feature is available 30 minutes prior)
- Be ready to book as soon as it goes live
Step 6: Understand the revenue model
China’s train system uses a revenue-maximising model for bookings.
If you’re trying to go from Station A to Station B, but the train continues to Station C, the algorithm prefers selling a ticket to someone going all the way to Station C (since that’s more money for them).
So if you’re booking a popular route and your station isn’t the final stop: Try booking a ticket all the way to the final stop.
- You’ll get better allocation priority.
- You can still get off earlier.
To find the final stop:
- Look up your train on 12306.cn
- Hover over the train number (usually starts with “G” for high-speed)
- It will show the full route and times
It will likely cost more so you’ll have to decide if it’s worth it.
Step 7: Set up AliPay early
- Install the AliPay app
- Link a foreign bank card (Visa/Mastercard works)
This takes a little time. Do not leave this until the day you’re booking.
Ideally, have AliPay installed and ready on the same device you’re using to book tickets.
Step 8: Pre-fill info 30 minutes before
In the 12306 app (Chinese version), you can pre-fill your travel information before tickets go on sale. This allows the app to submit your booking the moment tickets are released.
Step 9: Booking time
When the ticket release window opens:
- You’ll see the train become bookable
- Tap your pre-selected train
- Add tickets to your cart
- Go to cart, check out, pay with AliPay
If all goes well, you’ve got the tickets!
If not, you’ll be automatically added to the waitlist (only possible in the Chinese app). This is still a decent shot if someone cancels or more tickets are released.
The app should tell you your “%” chance of success if you only make it on to the waitlist.
Final comments
Booking trains in China requires a little know-how.
I hope this guide helps you cut through the confusion and maximise your chances. Let me know in the comments if this helped, or if any of the steps become outdated. I’ll keep it updated.
Safe travels,
Timbo
Leave a Reply