There is 1 way to get from Cdmx to Machu Picchu by plane or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Benito Juárez International Airport (MEX) to Alejandro Velasco Astete International Airport (CUZ) flights
Questions & Answers
The cheapest way to get from Cdmx to Machu Picchu is to fly and Train + Bus which costs $370 - $2,400 and takes 17h 5m.
The fastest way to get from Cdmx to Machu Picchu is to fly and Train + Bus which takes 17h 5m and costs $370 - $2,400.
The distance between Cdmx and Machu Picchu is 4846 km.
It takes approximately 17h 5m to get from Cdmx to Machu Picchu, including transfers.
Machu Picchu is 1h ahead of Cdmx. It is currently 10:52 PM in Cdmx and 11:52 PM in Machu Picchu.
There are 140+ hotels available in Machu Picchu.
What companies run services between Cdmx, Mexico and Machu Picchu, Peru?
There is no direct connection from Cdmx to Machu Picchu. However, you can walk to Buenavista, take the subway to Metro San Lázaro, walk to Metrobús San Lázaro, take the line 4 bus to Terminal 1 - Aeropuerto, walk to Benito Juárez International Airport (MEX) airport, fly to Alejandro Velasco Astete International Airport (CUZ), walk to Cusco Airport, take the bus to Avenida Pardo, walk to Cusco - Wanchaq, take the train to Machu Picchu Pueblo, walk to Aguas Calientes, then take the bus to Machu Picchu.
- Website
- avianca.com
Flights from Benito Juárez International Airport to Alejandro Velasco Astete International Airport via Bogota
- Ave. Duration
- 9h 35m
- When
- Every day
- Estimated price
- $180–750
- Website
- aeromexico.com
Flights from Benito Juárez International Airport to Alejandro Velasco Astete International Airport via Lima
- Ave. Duration
- 9h 10m
- When
- Every day
- Estimated price
- $170–700
- Website
- latam.com
Flights from Benito Juárez International Airport to Alejandro Velasco Astete International Airport via Lima
- Ave. Duration
- 13h 15m
- When
- Every day
- Estimated price
- $260–900
- Website
- skyairline.com
Flights from Benito Juárez International Airport to Alejandro Velasco Astete International Airport via Lima
- Ave. Duration
- 8h 25m
- When
- Every day
- Estimated price
- $230–850
- Phone
- +51 1625 4848
- reservas@perurail.com
- Website
- perurail.com
Train from Cusco - Wanchaq to Machu Picchu Pueblo
- Ave. Duration
- 4h 12m
- Frequency
- Every 4 hours
- Estimated price
- $60–1,600
- Website
- https://www.perurail.com/
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including Which London airport should I choose?, Best ways to travel around Australia, and Heading to Europe? Read this before you buy a Eurail Pass - to help you get the most out of your next trip.





