Rome2Rio

How to get fromSemarang to Machu Picchuby plane, train, shuttle or bus

Find Transport to Machu Picchu

See all options

There are 5 ways to get from Semarang to Machu Picchu by plane, train, shuttle, or bus

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly from Ahmad Yani, Train + Bus

    best
    1. Fly from Ahmad Yani (SRG) to Alejandro Velasco Astete International Airport (CUZ)plane plane SRG - CUZ
    2. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    41h 17m
    $977–4,218
  2. Train, bus to Soekarno–Hatta International Airport, fly, Train + Bus

    cheapest
    1. Take the train from Semarang Tawang to Jakarta Gambirtrain train
    2. Take the bus from Gambir Station to Jakarta Airportbus bus
    3. Fly from Soekarno–Hatta International Airport (CGK) to Alejandro Velasco Astete International Airport (CUZ)plane plane CGK - CUZ
    4. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    43h 17m
    $792–3,751
  3. Train to Adisumarmo International Airport, fly, Train + Bus

    1. Take the train from Semarang Poncol Station to Solobalapantrain train
    2. Fly from Adisumarmo International Airport (SOC) to Alejandro Velasco Astete International Airport (CUZ)plane plane SOC - CUZ
    3. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    45h 40m
    $930–4,135
  4. Train, train to Yogyakarta International Airport, fly, Train + Bus

    1. Take the train from Semarang Poncol Station to Solobalapantrain train
    2. Take the train from Solo Balapan to Yogyakartatrain train
    3. Take the train from Yogyakarta Tugu Station to Yogyakarta International Airporttrain train
    4. Fly from Yogyakarta International Airport (YIA) to Alejandro Velasco Astete International Airport (CUZ)plane plane YIA - CUZ
    5. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    44h 52m
    $981–4,256
  5. Shuttle to Juanda International Airport, fly, Train + Bus

    1. Take a shuttle bus from Semarang to Gresikshuttle bus
    2. Fly from Juanda International Airport (SUB) to Alejandro Velasco Astete International Airport (CUZ)plane plane SUB - CUZ
    3. Take the train from Cusco - Wanchaq to Machu Picchu Pueblotrain train
    46h 45m
    $890–3,949

Ahmad Yani (SRG) to Alejandro Velasco Astete International Airport (CUZ) flights

Calendar8Weekly Planes
Duration35h 43mAverage Duration
Ticket$906Cheapest Price
See schedules

Questions & Answers

What companies run services between Semarang, Indonesia and Machu Picchu, Peru?

There is no direct connection from Semarang to Machu Picchu. However, you can take the taxi to Ahmad Yani (SRG) 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 train to Solobalapan, take the train to Adi soemarmo Airport, walk to Adisumarmo International Airport (SOC) 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 Which London airport should I choose?, Thanksgiving 2018: How to travel stress-free, and Need to know: Jadrolinija - to help you get the most out of your next trip.