
Cat Ba is a rugged limestone island off Vietnam's northeast coast. Much of it is national park, and boats head out from the harbour to the karst islands nearby. The train is the cheapest way to get from Sapa to Cat Ba, at $15 (396,000 VND). It will take a long time, around 12h - 12h 30m. The bus is quicker and costs a little more, at $16 (432,000 VND) for 9-12h.
Distance from Sapa to CatBa
Sapa and CatBa are about 377 km (234 miles) apart, and the journey itself covers around 500 km by road. The quickest way to get from Sapa to CatBa is by taking the bus, which takes around 9-12h.
2 ways to travel from Sapa to CatBa
There are two ways to travel from Sapa to CatBa. The journey takes 9h–12h and the quickest way is by bus. If you're on a budget, the cheapest option is by train with tickets starting at $15 (396,000 VND).
4 legs — see itinerary
- Sapa→Lao Cai45m
- Lao Cai→Hanoi7h 20m
- Hanoi→CatBa4h
- Hanoi to CatBa by Train + Taxi + Ferry4h
Reach out to our Community
No questions yet — be the first to ask about Sapa to CatBa.
Sapa to CatBa by Train
Travelling from Sapa to CatBa by train includes 3 steps and takes around 12h - 12h 30m — but 8 hours of that will be spent on an overnight train where you can get a good night’s sleep.
Is it worth making all these transfers when you can just take a direct bus? It’s really up to your preference. Trains are an exciting way to travel in Vietnam, and they’re generally safer and more comfortable than buses.
Step 1: Sapa to Lao Cai by Bus/Van
From Sapa, you can take a van ride for 45 minutes or a 1-hour bus ride to Lao Cai. Because you will be taking a night train, we recommend catching the last trip from Sapa so you can still make the most of your last day here.
The last van or bus leaves Sapa around 17:00 to 18:30. Confirm this schedule with your hotel so that you don’t miss it and end up paying for a more expensive taxi.
Ticket prices start from $1.50 (40,000 VND) for a van and $1.10 (30,000 VND) for a bus.
Step 2: Lao Cai to Hanoi by Train
Starting October 2022, Vietnam Railways is back to its nightly operations from Lao Cai to Hanoi. This route previously operated with fewer weekly departures because of the pandemic.
Vietnam Railways SP4 departs every night from Lao Cai at 21:30. This arrives in Hanoi at 05:25 after a journey that takes 7h 20m - 7h 55m.
You can get a 4-berth sleeper for $14 (355,000 VND). Skip the queues at the train station and buy your tickets online beforehand through Baolau.
Check out our page for Sapa to Hanoi for more train options.
Step tickets are available on Bookaway.
Step 3: Hanoi to CatBa
Option 1: Hanoi to CatBa by Bus & Ferry
We recommend taking a combined bus & ferry from Hanoi to CatBa for convenience. Your tour operator takes care of your transfers so you won’t have to worry about anything.
Ticket prices start from $11 (287,000 VND) and travel time takes around 3h - 4h 30m.
For more info, check out our guide on how to get from Hanoi to CatBa.
Option tickets are available on Bookaway.
Option 2: Hanoi to CatBa by Train + Taxi + Ferry
This 2nd option involves several transfers that you will have to schedule on your own. This is why we think you should take this route only if the tickets for the combined bus & ferry are already sold out.
Upon arrival in Hanoi, you’ll have around 30 minutes to spare before the first train departs for Hai Phong at 06:00. A train ticket costs $3.20 (85,000 VND) for the 2.5-hour journey.
You are to get off at Hai Phong Railway Station. From here, you can take a 10-minute taxi with fares from $1.90 (50,000 VND) to Pha Binh Harbour.
IMPORTANT: Make sure the driver understands that you want to go to Pha Binh Harbour, NOT Dinh Vu Port. Some drivers may try to scam you by taking you to Dinh Vu, which is 30 minutes away by taxi. There are no direct ferries from Dinh Vu to CatBa.
From Pha Binh Harbour, there are six direct ferries departing for CatBa daily. The ferry journey takes around 1.5 hours. A ticket costs $5.30 (140,000 VND) and you can buy them online on Baolau.
Ferries dock at CatBa Pier in CatBa town centre. From here, many hotels in town are just within walking distance.
Sapa to CatBa by Bus
There are six main companies offering nightly bus trips from Sapa to CatBa: Grouptour, Techbus VN JSC, Duc Duong Bus, Ket Doan, TBus and Good Morning Cat Ba.
Bus fares start from $16 (432,000 VND) and travel time is 9-12h.
If you prefer to travel with the company with the best reviews, go for Good Morning Cat Ba, which is known for its friendly staff and nice buses.
Departure and arrival station
Good Morning Cat Ba departs from Sapa Bus Station, 1 km east of Sapa Lake. It offers free hotel drop-off in CatBa town centre.
Ken Doan picks up passengers from any hotel in Sapa town centre. Its last stop is at the Parking Lot of CatBa Night Market.
Sapa Grouptour departs from its office in Sapa town centre and arrives at its headquarters in CatBa town centre.
Bus schedule from Sapa to CatBa
Bus tickets are available on Bookaway.
ABOUT YOUR DESTINATION
Why Visit CatBa?
Cat Ba is a biodiverse island along Vietnam’s northeast coast. The largest of the islands in Halong Bay, Cat Ba boasts a rugged karst landscape dotted with spectacular limestone cliffs, sandy beaches, lakes, grottoes, and waterfalls.
Popular activities include kayaking and rock climbing, but you can also just lounge by the beach and wait for the sunset at Cannon Fort. The island rose in popularity in recent years, but we love that most areas remain untouched in Cat Ba.
Rounding it up
That's the Full picture for getting from Sapa to CatBa, roughly 377 kilometres (234 miles) apart. In all, there are 2 ways to make the trip. The cheapest fare is $15 (396,000 VND). The quickest trip takes 9h.
Prices and timetables change, so it's worth a quick check before you travel. Have a question, or travelled this route recently? Ask the community below and we'll do our best to help.
Frequently Asked Questions
What is the distance from Sapa to CatBa?
The distance from Sapa to CatBa is 377 kilometres (234 miles).
What is the fastest way to get from Sapa to CatBa?
The fastest way to get from Sapa to CatBa is by bus and takes 9-12h.
What is the cheapest way to get from Sapa to CatBa?
The cheapest way to get from Sapa to CatBa is by train with ticket costs starting from 396,000 VND.
Affiliate Disclosure
Some links on this page are affiliate links. If you book through them, we earn a small commission at no extra cost to you. This helps us keep Gecko Routes free and up to date.





