Oaxaca (pronounced wah-haak-kah) is a city filled with colourful colonial streets, architecturally-beautiful churches, communal squares, and archaeological sites. 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 food scene, offering several dishes that are unique to just the Oaxaca region. One dish you can’t leave Oaxaca without trying is Mole. It’s a stew-like dish made with Mexican chillies, spices, and the secret ingredient, chocolate. For the drinks, make sure to try the popular Mezcal. A strong upgrade from Tequila and also perfect to wash down your Mole!
Another thing Oaxaca is famous for is its embroidery and textile crafts, which are proudly displayed in the Textile Museum. Or you can even try your hand and join a local workshop to learn about their techniques.
Beyond Oaxaca, there’s plenty to do. You can visit the archaeological ruins of Monte Alban, take a dip at Hierve el Agua waterfall or admire the impressive Tule tree.
New to Oaxaca? Check out this compact Oaxaca guide to show you the best areas to stay, restaurants you don’t want to miss and many more tips for your visit to Oaxaca!
The 2 most popular ways to cover the 462km (287 miles) from Mexico City to Oaxaca are a 7.5-hour bus ride and a 2-hour-10-minute flight (including transfers). Bus tickets cost around 562 MXN ($28) and flight tickets start from 747 MXN ($38).
The bus is the more environment-friendly option from Mexico City to Oaxaca. The buses offer a frequent service, with several trips departing throughout the day. Although a bus trip takes around 7.5 hours, many are overnight journeys so you can save on valuable day time as well as a night on accommodation. Bus rates start from 562 MXN ($28).
If you’re tight on time, flying from Mexico City to Oaxaca doesn’t cost a lot more than taking the bus. It’s actually even cheaper than the premium buses if you book your flight early. Travel time, including airport transfers, take a little over 2 hours. Combined fares start from 747 MXN ($38).
Something to consider about flying is the impact on the environment. We recommend adding a carbon compensation fee to reduce the impact of your flight.
There are many direct buses operating from Mexico City to Oaxaca. The bus ride itself takes more or less 7 hours. Quite long, but it’s a very scenic route so you can just think of it as a road trip.
Step 1: Getting to the bus station in Mexico City
Duration: 20 minutes Cost: From 6 MXN ($0.30)
Buses depart from different locations, but the most popular (and convenient) is Mexico City’s main station, Terminal de Autobuses de Oriente TAPO. TAPO bus station is situated just 15 minutes east of the city centre.
You can easily get there by Metrobus or Metro for just 6 MXN ($0.30).
If you’re not quite sure what the difference is, the Metro is a train that goes underground, whilst the Metrobus is a big bus that has its own lane on the roads and has set stops. Most of the time, this makes the Metrobus a quicker transport option than normal buses.
To get from the city centre to Mexico Terminal TAPO, you can either take Metro line #1 or Metrobus line #4. In both cases, the journey will take around 20 minutes and you should get off at San Lazaro Station. From there it’s just a 2-minute walk to TAPO Bus Station.
Step 2: Mexico City to Oaxaca
Duration: 7 hours Cost: From 506 MXN ($25)
ADO, Mexico’s most popular bus company, is the main operator for buses from Mexico City to Oaxaca. ADO offers a reliable and comfortable bus service with a lot of leg room.
Also available are ADO’s sub bus companies:
AU – the cheapest, most basic and doesn’t have a toilet on board
ADO GL – an upgraded version of the basic ADO buses
ADO Platino – a luxury bus offering comfortable seats, individual screens, snacks and Wi-Fi, but also the most expensive
All of them are first-class buses with AC and reclining seats. The ADO GL and ADO Platino buses offer a few additions like separate toilets for men and women, coffee onboard and charging ports.
The journey time also varies slightly depending on the bus company you choose. ADO GL and ADO Platino offer the fastest travel time, whilst AU is the slowest.
Prices for a bus ticket from Mexico City to Oaxaca start from 506 MXN ($25). The bus trip takes around 7 hours.
The bus schedules may vary daily, so it’s best to check the ones for your exact travel dates online. You can do that via ClickBus, which is also a very reliable booking platform. We recommend purchasing your tickets online at least a day before to be guaranteed a seat at your desired bus trip.
If you are travelling with AU, note that it makes two stops: first at Terminal Santa Rosa (5km northwest of city centre) and then at Terminal Periferico (2km south of city centre) after another 30 minutes. If you’re heading to the tourist area, pick Periferico as your drop-off point.
Step 3: Oaxaca Bus Terminal to the City Centre
Duration: 5 minutes Cost: From 50 MXN ($2.50)
Depending on where your hotel is located, you may either walk or take a short taxi ride to your final destination in Oaxaca – whether your bus made its last stop at the main bus station in Central Autobuses de Oaxaca or at Terminal Periferico.
The taxi rates, of course, depend on where you’re headed. But fares start from 50 MXN ($2.50).
Mexico City to Oaxaca by Flight
Duration: 2 hours 10 minutes Cost: From 770 MXN ($38)
Travelling from Mexico City to Oaxaca by flight is very easy because both airports are located close to the city centre. Also, if you book well in advance, you can get a flight ticket that’s just a few dollars more expensive than the much slower bus.
Step 1: Mexico City Centre to Airport
Duration: 45 minutes Cost: From 30 MXN ($1.50)
Mexico City Airport is big and busy, so make sure you know which terminal you are departing from. It’s also a good idea to arrive with plenty of time before your departure time.
Flights from Mexico City to Oaxaca depart from Benito Juarez International Airport (MEX). This airport is accessible from the city centre with line #4 on the Metrobus. This shuttle bus service can take you to Mexico City Airport in around 45 minutes. A bus ticket costs 30 MXN ($1.50).
If you prefer, you can use Uber or hire a taxi, which can cut your journey time to around 25 minutes, depending on traffic. Rates start at 200 MXN ($10).
A number of flights operate from Mexico City to Oaxaca daily between 07:30 and 21:30. Flight time is around 1 hour.
Several airlines fly between the two cities. These are AeroMexico, Viva Aerobus and Volaris.
In terms of service, AeroMexico is the largest airline. It has great service and departs to Oaxaca around 3-4 times a day, but they come with slightly higher rates. Viva Aerobus and Volaris are more affordable options, but only have one departure a day for the Mexico City to Oaxaca route.
If you’re looking to save money, book your direct flight in advance as fares tend to increase closer to the travel date.
Oaxaca International Airport is located about 10km south of the city centre. There are a few ways you can get to your hotel from Oaxaca’s airport, but we recommend taking either a 50-minute colectivo or a 30-minute taxi.
Colectivos are easily available at the airport and they will take you right to your hotel’s doorstep in Oaxaca. The only tiny disadvantage is that travel time may take longer depending on how many passengers are dropped off at their hotels before you. One way tickets cost 90 MXN ($4.50) and you can buy them at the airport’s main hall.
If you prefer speed and comfort, you can take a taxi from 350 MXN ($17). The actual price will depend on the location of your hotel. You’ll have to prepay your ride at the taxi office in the arrivals hall.
Unfortunately, Uber or similar apps don’t work in Oaxaca. As for public transport, you can get a bus outside the airport. It’s the cheapest way to get to the city centre for only around 10 MXN ($0.50). But you’ll have to walk a bit going to the bus stop and then walk again (or take a taxi) upon arriving at the city centre. We don’t think that’s a great idea when you’re possible carrying huge luggage.
Located at the start of the historic centre, Ayook is housed within the remnants of an 18th century house. It’s interior boasts a warm and cozy feel, thanks to its large wooden features and intricate lighting.
After just a glimpse at the hotel’s pictures, you’re guaranteed to want to stay here!
You’ll feel like you’re staying in the height of luxury, without paying the price for it. The luxury continues with the à la carte breakfast served to you every morning. The beds are huge, with memory foam pillows, perfect for starfishing all night long.
Set within a colonial building, the hotel'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 reflect over the city of Oaxaca. You’re also only minutes away from some of the biggest attractions in Oaxaca City.
The open central courtyard is the perfect place to enjoy your complimentary breakfast each morning before adventuring through the city. All of the rooms have their own patio, offering you some privacy and a personal place to relax.
Situated minutes 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 family, offering tips on all of the best places to visit in Oaxaca. The whole hotel is clean and bursting with colour wherever you look.