Rome2Rio

How to get fromPuebla to Machu Picchuby bus, plane, or train

Find Transport to Machu Picchu

See all options

There are 3 ways to get from Puebla to Machu Picchu by bus, 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.

  1. Bus to Benito Juárez International Airport, fly, Train + Bus

    best
    1. Take the bus from Puebla Terminal CAPU to Terminal Central de Autobuses del Nortebus bus
    2. Fly from Benito Juárez International Airport (MEX) to Alejandro Velasco Astete International Airport (CUZ)plane plane MEX - CUZ
    3. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    18h 38m
    $394–2,192
  2. Bus to Felipe Ángeles International Airport, fly, Train + Bus

    cheapest
    1. Take the bus from Puebla Terminal CAPU to Terminal Central de Autobuses del Nortebus bus
    2. Fly from Felipe Ángeles International Airport (NLU) to Alejandro Velasco Astete International Airport (CUZ)plane plane NLU - CUZ
    3. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    21h 26m
    $336–2,303
  3. Fly from Hermanos Serdán International Airport, Train + Bus

    1. Fly from Hermanos Serdán International Airport (PBC) to Alejandro Velasco Astete International Airport (CUZ)plane plane PBC - CUZ
    2. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    21h 25m
    $398–2,721

Benito Juárez International Airport (MEX) to Alejandro Velasco Astete International Airport (CUZ) flights

Calendar33Weekly Planes
Duration9h 11mAverage Duration
Ticket$186Cheapest Price
See schedules

Questions & Answers

What companies run services between Puebla, Mexico and Machu Picchu, Peru?

There is no direct connection from Puebla to Machu Picchu. However, you can take the bus to Terminal Central de Autobuses del Norte, walk to Autobuses del Norte, take the line 5 subway to Terminal Aérea, 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. Alternatively, you can take the bus to Puebla Airport, walk to Hermanos Serdán International Airport (PBC) 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.

Airlines
Train operators
Bus operators

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 Flying into Beijing?, How to get from Southend Airport into central London, and Travelling to and around Russia for the 2018 FIFA World Cup - to help you get the most out of your next trip.