Contents

Overview | Bus | Flight

How to get from Mexico City to Oaxaca?

Oaxaca (pronounced wah-haak-kah) is a city filled with colourful colonial streets, architecturally-beautiful churches and communal squares. And those are only a few of the reasons why it has landed itself on the UNESCO world heritage list.

This 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.

Bus or Flight?

The most popular ways to cover the 462km (287 miles) from Mexico City to Oaxaca are a 1-hour flight or a 7-hour bus ride. Bus tickets cost around 476 MXN ($24) and flight tickets start from 740 MXN ($35).

Transport ModeDurationCostsAvailability
Bus7 hoursFrom 476 MXN ($24)Check Bus Tickets
Flight2 hoursFrom 740 MXN ($35)Check Flight Tickets

Buses are the most affordable option and if you choose to depart at night, you can get some sleep while saving on accommodation too. There are several departures during the day and night, making the bus easily fit most travel itineraries.

If you’re tight on time, then flying takes just 1 hour. A good tip when it comes to booking flights in Mexico is to try and book early. That way you might be lucky and find a flight that’s only slightly more expensive than the bus.

For those that do choose to fly, consider including a carbon compensation fee to help reduce your impact on the environment.

Itinerary from Mexico City to Oaxaca

Bus icon

Mexico City to Oaxaca by Bus


Duration: 8 hours
Cost: From 532 MXN ($26.50) 

There are many direct buses going from Mexico to Oaxaca and they normally take around 7 hours. Travel time can vary though, depending on traffic and the number of stops on the way.

Buses depart from different locations in Mexico, but the most popular (and convenient) location is the Terminal de Autobuses de Oriente ‘TAPO’. TAPO bus station is just 15 minutes from the city centre.

Step 1: Getting to the bus station in Mexico City

Duration: 15 – 30 minutes
Cost: From 6 MXN ($0.30)

The ‘Terminal de Autobuses de Oriente’, known by everyone as TAPO, is in the east of Mexico City, in between the city centre and the airport. 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 TAPO Station, 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: 6 hours 40 minutes
Cost: From 476 MXN ($24)

The company operating on the route from Mexico City to Oaxaca is Mexico’s most popular bus company, ADO. ADO offers a reliable service, plus the buses are comfortable with a toilet on board as well. Besides the main ADO buses, there are also some of ADO’s sub-branches going to Oaxaca, including:

  • AU – the cheapest, 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 it’s the most expensive.

All of them are first-class buses with AC and reclining seats. The ADO GL and ADO Platino buses have the bonus of having separate toilets for men and women, coffee onboard and charging ports.

The journey time will also vary slightly depending on the bus company you choose. ADO GL and ADO Platino offer the fastest travel time, whilst AU is the slowest.

Bus OperatorSchedulesDurationCosts
AU08:30 – 15:45
11:00 – 18:15
23:00 – 06:15
23:15 – 06:30
23:59 – 06:45
7 hours 15 minutes476 MXN ($24)
ADO13 departures a day from 10:00 -23:596 hours 50 minutes678 MXN ($31)
ADO GL23:20 – 06:006 hours 40 minutes870 MXN ($43)
ADO Platinum20:11 – 02:51
23:45 – 06:25
6 hours 40 minutes1,092 MXN ($55)

Check Bus Tickets on ClickBus

All ADO, ADO GL and ADO Platino buses will drop you at the Central de Autobuses de Oaxaca. If you are travelling with AU, make sure to select Terminal Periferico as the drop-off point, as it’s closer to the city centre.

Step 3: Oaxaca Bus Terminal to the City Center

Duration: 5 minutes
Cost: From 50 MXN ($2.30)

Once you arrive in Oaxaca, most likely, you’ll be dropped at the main station, ‘Central de Autobuses de Oaxaca’. This station is located 10-15 minutes by car from the city centre to the northeast. Note that, if you travel with AU, you’ll be dropped at Terminal Periferico, which is west of the city centre and just 5 minutes by car.

If you get dropped off at Central de Autobuses, it takes around 30 minutes to walk to the city centre. The easiest way will be to get an authorised taxi, which you can find right outside of the terminal entrance. The average taxi rate to the city centre costs between 50 – 80 MXN ($2.30 – $3.70).

Terminal Periferico also offers authorised taxis, but since the terminal is just a 15-minute walk away from Oaxaca’s main square you can easily walk.

Flight

Mexico City to Oaxaca by Flight


Duration: 2 hours
Cost: From 860 MXN ($40.50)

Travelling from Mexico City to Oaxaca by flight is very easy because both airports are located close to the city centre.

To get to Mexico Airport you can get a taxi which only takes about 20 minutes from the city centre or take the Metro which takes about 30 minutes. Make sure you take the right terminal though!

After the 1 hour flight to Oaxaca, you can take a 30-minute taxi or a Colectivo to get to the city centre of Oaxaca. Keep reading for a more detailed explanation.

Step 1: Mexico City centre to Airport

Duration: 30 minutes 
Cost: From 30 MXN ($1.50)

Mexico City’s airport is big and busy, so make sure you know which terminal you are departing from. Because it’s such a large airport, it’s also a good idea to arrive in plenty of time before your departure time.

Mexico’s airport is accessible from the city centre with line #4 on the Metrobus. With the Metrobus, it takes around 30 minutes to get to the airport for just 30 MXN ($1.50).

If you prefer, you can use Uber or hire a taxi which can cut your journey time to around 20 minutes, depending on traffic. Rates start at 150 MXN ($7).

Step 2: Mexico City to Oaxaca

Duration: 1 hour
Cost: From 740 MXN ($35)

Flights from Mexico City to Oaxaca depart from Benito Juarez International Airport (MEX) and are operated by AeroMexico, VivaAerobus and Volaris.

These flights take about 1 hour and you normally can find flights departing roughly every 3 hours from 09:00 to 20:40.

There are 3 airlines that cover this route; AeroMexico, VivaAerobus 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. VivaAerobus and Volaris are more affordable options, but only have one departure a day.

If you’re looking to save money, book your flight in advance as fares tend to increase closer to the travel date.

Check Flights on Skyscanner

Step 3: Oaxaca Airport to the City Centre

Duration: 25 minutes
Cost: From 90 MXN ($4)

When you’ll arrive at Oaxaca’s International Airport, it will take around 25 minutes to get to the city centre which is located 8 km north of the airport.

The fastest and most comfortable option is to take a taxi for around 350 MXN ($16). The actual price will depend on the distance as you prepay at the taxi office in the arrivals hall.

Unfortunately, Uber or similar apps don’t work in Oaxaca and no public transport operates from the airport.

An alternative cheaper option is a service of shared minivans also known as ‘Colectivos’ that depart from the airport and take you to your accommodation. The only downside is that it may take a little longer than the taxi as they drop off other passengers too. The ticket office is in the airport’s main hall and a ticket costs only 90 MXN ($4).

[ratemypost]