
Oaxaca is a colonial city in southern Mexico, famous for its food markets and mezcal. It sits in a valley ringed by mountains, with the ruins of Monte Alban just outside town. The bus costs $48 (840 MXN) for the trip from Puebla to Oaxaca, and the ride takes 5h 10m - 5h 55m.
Distance from Puebla to Oaxaca
Puebla and Oaxaca are about 248 km (154 miles) apart, and the journey itself covers around 309 km by road. Depending on the option, the trip takes between 5h 10m and 5h 55m.
How to get from Puebla to Oaxaca?
The bus is the only suitable way for travellers to travel from Puebla to Oaxaca. The journey takes around 5h 10m, and ticket prices start from $48 (840 MXN).
incl. transfers — see itinerary
- Puebla City Centre→Bus Terminal20m
- Puebla→Oaxaca4h 40m
- Oaxaca Bus Terminal→the City Centre10m
Reach out to our Community
No questions yet — be the first to ask about Puebla to Oaxaca.
Puebla to Oaxaca by Bus
Step 1: Puebla City Centre to Bus Terminal
Buses from Puebla to Oaxaca depart from two main terminals: the Central Bus Terminal (CAPU) and the newer ADO Paseo Destino Terminal on Avenida Las Torres. CAPU is about 6 km north of downtown Puebla, while ADO Paseo Destino on the southern side of the city, about 9 km away from the centre.
Getting to CAPU
The easiest way to get to CAPU is to take a 20-minute taxi or Uber from your accommodation for around $4.60 (80 MXN).
Public transport is restricted from Puebla’s main tourist area. So if you want to take the bus, you must walk to the bus stop outside Centro de Convenciones. Here, you need to hail a bus that says CAPU. A bus ticket costs $0.30 (6 MXN).
Getting to ADO Paseo Destino
We recommend taking a taxi or Uber from Puebla city centre to ADO Paseo Destino. The ride takes about 25 minutes and costs around $5.70 (100 MXN).
Step 2: Puebla to Oaxaca
When travelling from Puebla to Oaxaca, ADO is your go-to bus company. Their buses include AC, reclining seats and a toilet.
The first bus from the Avenida Las Torres Terminal departs at 06:15, and the last one leaves at 19:45. Need to travel earlier or later? Check out CAPU Terminal instead. Here, buses run more frequently from 02:00 to 23:50.
A bus ticket from Puebla to Oaxaca costs $41 (715 MXN). Travel time is around 4h 40m - 5h 25m.
Bus tickets are available on Bookaway.
Booking Tip
One of the worst things that can happen when you’re travelling is to turn up at the station and find that there are no tickets left. Book your bus tickets online beforehand for a better chance of securing a seat.
BookAway is our preferred booking platform because it doesn’t add hidden charges. But if you rather buy tickets at the terminal, try to get there at least 30 minutes before departure time.
Step 3: Oaxaca Bus Terminal to the City Centre
Once you arrive in Oaxaca, you’ll be dropped off at the main station, Central de Autobuses de Oaxaca, about 1.5 km east of the city centre.
It takes around 30 minutes to walk from here to the tourist area, so the best option for most people is to take a taxi. There are authorised taxis right outside of the terminal entrance. Fares to the city centre start from $2.90 (50 MXN).
Our favourite places to stay in Oaxaca
Here are our favourite places to stay in Oaxaca for every budget.
Treat YourselfAyook
- Delicious à la carte breakfast
- Traditional Oaxacan-style interior
- Great location
- Private patio with every room
Treat YourselfLa Casa Carlota
Set within a historical colonial building, the La Casa Carlota’s interior and design creates a unique blend of the new and the old. The large roof terrace gives you the chance to sit back and admire the beauty of Oaxaca. From here you can see all of the best sites in Oaxaca as they’re only a few minutes walk from the hotel.
At the heart of the hotel is an open courtyard. The perfect place to enjoy your complimentary breakfast each morning before adventuring through the city. An added bonus, all of the rooms have their own patio, offering you some privacy and a personal place to relax.
- Spacious and modern rooms
- Large roof terrace
- Private patio with every room
- Amazing breakfast included
Double rooms start from $80 per night
Mid-RangeAzul Cielo Hostel
Three words to best describe Azul Cielo are bohemian, cosy and colourful. It’s a social place with plenty of areas to meet other like-minded travellers. You get the best of borth worlds here — a friendly atmosphere and the tranquility of your own private room. Plus there are plenty of places around the hotel to hide yourself away and relax.
Every room is uniquely decorated, boasting their own style and atmosphere. Make sure to pick the one that suits your vibe the most. Once you’ve enjoyed a rejuvenating sleep, you can start your day off with a delicious complimentary breakfast served by the friendly staff.
- Friendly atmosphere
- Great outdoor spaces
- Excellent location
- Great breakfast included
Double rooms between $40-$80 per night
BudgetCasa EL Mundo
Situated only steps away from Downtown Oaxaca, the cathedral and the flea market, you’ll be able to see all of this from Casa El Mundo’s rooftop terrace. The Mezcal they serve at the rooftop bar is to-die-for, and if you can’t get enough, they even do a Mezcal tour.
The hosts welcome you like one of the family, offering tips on all of the best places to visit in Oaxaca. Every corner of the hotel is clean and bursting with colour no matter where you look. This is an unforgettable place to stay.
- Rooftop terrace
- Mezcal tour
- Friendly hosts
- Bright and colourful rooms
Double rooms between $15-$40 per night
ABOUT YOUR DESTINATION
Why Visit Oaxaca?
Oaxaca (pronounced wah-haak-kah) is a city filled with colourful colonial streets, architecturally-beautiful churches, communal squares, archaeological sites, and welcoming people. It's also famous for its stunning embroidery and textile crafts. And those are only a few of the reasons why it has landed itself on the UNESCO world heritage list.
Also called Oaxaca de Juárez, the city is well-known for its exciting food scene, offering several dishes that are unique to just the Oaxaca region. A tip when visiting Oaxaca: eat your heart out! One dish you can’t leave without trying is the stew-like Mole, best paired with the popular Mezcal — a strong upgrade from Tequila!
Rounding it up
That's the full picture for getting from Puebla to Oaxaca, roughly 248 kilometres (154 miles) apart. The cheapest fare is $48 (840 MXN). The quickest trip takes 5h 10m.
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 Puebla to Oaxaca?
The distance from Puebla to Oaxaca is 248 kilometres (154 miles).
What is the cheapest way to get from Puebla to Oaxaca?
The cheapest way to get from Puebla to Oaxaca is by bus with ticket costs starting from 840 MXN.
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.






