There are 8 ways to get from Danau Toba to Yogyakarta by bus, plane, train, car ferry, car, busferry, or ferry
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus, fly to Yogyakarta International Airport, train
best- Take the bus from Ajibata to Silangit Airportbus
- Fly from Silangit Airport (DTB) to Yogyakarta International Airport (YIA)plane DTB - YIA
- Take the train from Yogyakarta International Airport to Yogyakarta Tugu Stationtrain
9h 45mRp 2,643,465–3,797,103Car ferry, bus, ferry, train via Cirebon
cheapest- Take the carferry from Tomok to Ajibatacarferry
- Take the bus from Parapat to Amplas Stationbus
- Take the ferry from Belawan to Port of Tanjung Priokferry
- Take the bus from Jakarta Pulogadung Bus Station to Cirebonbus
- Take the train from Cirebon to Yogyakartatrain
3d 5hRp 928,161–1,384,966Car ferry, drive, train, bus, bus and ferry
- Take the carferry from Tomok to Ajibatacarferry
- Drive from Ajibata to Tebing Tinggicar
- Take the train from Tebing Tinggi to Medan Stationtrain
- Take the bus from Medan Putra Pelangi to Bandar Lampungbus
- Take the busferry from Bandar Lampung to Gambir Stationbusferry
- Take the train from Gambir Jakarta to Yogyakarta Tugutrain
2d 5hRp 1,347,075–2,422,384Car ferry, bus, ferry, train
- Take the carferry from Tomok to Ajibatacarferry
- Take the bus from Parapat to Amplas Stationbus
- Take the ferry from Belawan to Port of Tanjung Priokferry
- Take the train from Gambir Jakarta to Yogyakarta Tugutrain
3d 4hRp 1,133,661–1,508,466Bus, fly to Adisumarmo International Airport, train
- Take the bus from Ajibata to Silangit Airportbus
- Fly from Silangit Airport (DTB) to Adisumarmo International Airport (SOC)plane DTB - SOC
- Take the train from Solo Balapan to Yogyakartatrain
10h 6mRp 2,745,465–7,574,103Bus, fly to Ahmad Yani, train
- Take the bus from Ajibata to Silangit Airportbus
- Fly from Silangit Airport (DTB) to Ahmad Yani (SRG)plane DTB - SRG
- Take the train from Semarang Poncol Station to Solobalapantrain
- Take the train from Solo Balapan to Yogyakartatrain
12h 25mRp 2,663,465–7,462,103Car ferry, bus, bus and ferry
- Take the carferry from Tomok to Ajibatacarferry
- Take the bus from Parapat to Amplas Stationbus
- Take the bus from Medan Putra Pelangi to Bandar Lampungbus
- Take the busferry from Bandar Lampung to DAMRI Bus Station Jakartabusferry
- Take the bus from DAMRI Bus Station Jakarta to Yogyakartabus
2d 11hRp 1,019,175–2,148,984Car ferry, bus, ferry
- Take the carferry from Tomok to Ajibatacarferry
- Take the bus from Parapat to Amplas Stationbus
- Take the ferry from Belawan to Port of Tanjung Priokferry
- Take the bus from Bekasi to Yogyakartabus
3d 14hRp 967,161–1,316,966
Silangit Airport (DTB) to Yogyakarta International Airport (YIA) flights
Questions & Answers
The cheapest way to get from Danau Toba to Yogyakarta is to car ferry and bus and ferry which costs Rp950000 - Rp1400000 and takes 3 days 14h.
The fastest way to get from Danau Toba to Yogyakarta is to bus and fly and train which takes 9h 45m and costs Rp2600000 - Rp3800000.
The distance between Danau Toba and Yogyakarta is 1789 km.
It takes approximately 9h 45m to get from Danau Toba to Yogyakarta, including transfers.
There are 2402+ hotels available in Yogyakarta.
What companies run services between Danau Toba, North Sumatra, Indonesia and Yogyakarta, Indonesia?
There is no direct connection from Danau Toba to Yogyakarta. However, you can take the bus to Silangit Airport, walk to Silangit Airport (DTB) airport, fly to Yogyakarta International Airport (YIA), walk to Yogyakarta International Airport, then take the train to Yogyakarta Tugu Station. Alternatively, you can take a vehicle from Danau Toba to Yogyakarta Tugu via Tomok, Ajibata, Tebing Tinggi, Medan Station, Medan Putra Pelangi, Bandar Lampung, Bandar Lampung, Gambir Station, and Gambir Jakarta in around 2d 5h.
- Website
- garuda-indonesia.com
Flights from Silangit Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- Rp 2,700,000–4,800,000
Flights from Silangit Airport to Adisumarmo International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 50m
- When
- Every day
- Estimated price
- Rp 2,900,000–5,000,000
Flights from Silangit Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 5h 23m
- When
- Every day
- Estimated price
- Rp 2,500,000–6,500,000
- Website
- batikair.com
Flights from Silangit Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 30m
- When
- Every day
- Estimated price
- Rp 2,500,000–6,500,000
Flights from Silangit Airport to Adisumarmo International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 40m
- When
- Every day
- Estimated price
- Rp 2,700,000–7,000,000
Flights from Silangit Airport to Adisumarmo International Airport via Hang Nadim, Soekarno–Hatta
- Ave. Duration
- 6h 10m
- When
- Tuesday, Thursday, and Sunday
- Estimated price
- Rp 3,300,000–6,500,000
- Website
- superairjet.com
Flights from Silangit Airport to Yogyakarta International Airport via Hang Nadim
- Ave. Duration
- 4h 30m
- When
- Tuesday, Thursday, and Sunday
- Estimated price
- Rp 3,000,000–6,000,000
Flights from Silangit Airport to Ahmad Yani via Hang Nadim
- Ave. Duration
- 5h 55m
- When
- Tuesday, Thursday, and Sunday
- Estimated price
- Rp 3,000,000–6,000,000
- Website
- citilink.co.id
Flights from Silangit Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 5h 55m
- When
- Every day
- Estimated price
- Rp 2,700,000–4,800,000
Flights from Silangit Airport to Ahmad Yani via Soekarno–Hatta
- Ave. Duration
- 6h 45m
- When
- Every day
- Estimated price
- Rp 2,800,000–4,800,000
- Website
- sriwijayaair.co.id
Flights from Silangit Airport to Yogyakarta International Airport via Soekarno–Hatta
- Ave. Duration
- 4h 40m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- Rp 2,900,000–6,000,000
- [email protected]
- Website
- railink.co.id
Train from Yogyakarta International Airport to Yogyakarta Tugu Station
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- Rp 20,000–50,000
- Schedules at
- railink.co.id
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Tebing Tinggi to Medan Station
- Ave. Duration
- 1h 24m
- Frequency
- Every 4 hours
- Estimated price
- Rp 49,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 49,000–320,000
- Business
- Rp 300,000–550,000
- Executive
- Rp 90,000–650,000
Train from Gambir Jakarta to Yogyakarta Tugu
- Ave. Duration
- 6h 5m
- Frequency
- Every 3 hours
- Estimated price
- Rp 320,000–370,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–370,000
- Business
- Rp 460,000–550,000
- Executive
- Rp 550,000–850,000
Train from Gambir Jakarta to Yogyakarta Tugu
- Ave. Duration
- 6h 5m
- Frequency
- Every 3 hours
- Estimated price
- Rp 320,000–370,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 320,000–370,000
- Business
- Rp 460,000–550,000
- Executive
- Rp 550,000–850,000
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 33 min
- Frequency
- Hourly
- Estimated price
- Rp 36,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 36,000–320,000
- Business
- Rp 290,000–550,000
- Executive
- Rp 65,000–650,000
Train from Semarang Poncol Station to Solobalapan
- Ave. Duration
- 1h 49m
- Frequency
- 5 times a day
- Estimated price
- Rp 65,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 65,000–320,000
- Business
- Rp 310,000–550,000
- Executive
- Rp 120,000–650,000
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 33 min
- Frequency
- Hourly
- Estimated price
- Rp 36,000–320,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 36,000–320,000
- Business
- Rp 290,000–550,000
- Executive
- Rp 65,000–650,000
Train from Cirebon to Yogyakarta
- Ave. Duration
- 3h 21m
- Frequency
- Every 2 hours
- Estimated price
- Rp 180,000–330,000
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- Rp 180,000–330,000
- Business
- Rp 380,000–550,000
- Executive
- Rp 330,000–700,000
- [email protected]
- Website
- kai.id
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 1h 15m
- Frequency
- Every 3 hours
- Estimated price
- Rp 15,000
- Schedules at
- kai.id
Train from Solo Balapan to Yogyakarta
- Ave. Duration
- 1h 15m
- Frequency
- Every 3 hours
- Estimated price
- Rp 15,000
- Schedules at
- kai.id
- Phone
- (021) 1500 825
- [email protected]
- Website
- damri.co.id
Bus from Ajibata to Silangit Airport
- Ave. Duration
- 2h 58m
- Frequency
- 4 times a day
- Estimated price
- Rp 23,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Busferry from Bandar Lampung to Gambir Station
- Ave. Duration
- 8h 52m
- Frequency
- Hourly
- Estimated price
- Rp 65,000–260,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Ajibata to Silangit Airport
- Ave. Duration
- 2h 58m
- Frequency
- 4 times a day
- Estimated price
- Rp 23,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Bus from Ajibata to Silangit Airport
- Ave. Duration
- 2h 58m
- Frequency
- 4 times a day
- Estimated price
- Rp 23,000–250,000
- Book at
- https://12go.asia/en/operator/damri
Busferry from Bandar Lampung to DAMRI Bus Station Jakarta
- Ave. Duration
- 9h
- Frequency
- Hourly
- Estimated price
- Rp 65,000–260,000
- Book at
- https://12go.asia/en/operator/damri
Bus from DAMRI Bus Station Jakarta to Yogyakarta
- Ave. Duration
- 10h
- Frequency
- Once daily
- Estimated price
- Rp 150,000–600,000
- Book at
- https://12go.asia/en/operator/damri
- Phone
- (061)8456325 - 8453256
- [email protected]
- Website
- putrapelangi.com
Bus from Medan Putra Pelangi to Bandar Lampung
- Ave. Duration
- 31h 20m
- Frequency
- Once daily
- Estimated price
- Rp 650,000–1,000,000
- Schedules at
- putrapelangi.com
- Book at
- traveloka.com
Bus from Medan Putra Pelangi to Bandar Lampung
- Ave. Duration
- 31h 20m
- Frequency
- Once daily
- Estimated price
- Rp 650,000–1,000,000
- Schedules at
- putrapelangi.com
- Book at
- traveloka.com
- Phone
- +6281361051419
- [email protected]
Bus from Parapat to Amplas Station
- Ave. Duration
- 4h 30m
- Frequency
- Hourly
- Estimated price
- Rp 25,000–35,000
- Schedules at
- holidaysumatra.com
Bus from Parapat to Amplas Station
- Ave. Duration
- 4h 30m
- Frequency
- Hourly
- Estimated price
- Rp 25,000–35,000
- Schedules at
- holidaysumatra.com
Bus from Parapat to Amplas Station
- Ave. Duration
- 4h 30m
- Frequency
- Hourly
- Estimated price
- Rp 25,000–35,000
- Schedules at
- holidaysumatra.com
Bus from Parapat to Amplas Station
- Ave. Duration
- 4h 30m
- Frequency
- Hourly
- Estimated price
- Rp 25,000–35,000
- Schedules at
- holidaysumatra.com
Bus from Jakarta Pulogadung Bus Station to Cirebon
- Ave. Duration
- 4h 23m
- Frequency
- Hourly
- Estimated price
- Rp 80,000
- Schedules at
- jadwalbis.com
- Phone
- 0811-259-318
- [email protected]
- Website
- sumberalam.co.id
Bus from Bekasi to Yogyakarta
- Ave. Duration
- 14h 45m
- Frequency
- Once daily
- Estimated price
- Rp 160,000–190,000
- Schedules at
- sumberalam.co.id
- Book at
- 12go.asia
Car ferry from Tomok to Ajibata
- Ave. Duration
- 56 min
- Frequency
- 5 times a day
- Estimated price
- Rp 9,500–110,000
- Economy
- Rp 16,000–34,000
- VIP
- Rp 22,000–55,000
Car ferry from Tomok to Ajibata
- Ave. Duration
- 56 min
- Frequency
- 5 times a day
- Estimated price
- Rp 9,500–110,000
- Economy
- Rp 16,000–34,000
- VIP
- Rp 22,000–55,000
Car ferry from Tomok to Ajibata
- Ave. Duration
- 56 min
- Frequency
- 5 times a day
- Estimated price
- Rp 9,500–110,000
- Economy
- Rp 16,000–34,000
- VIP
- Rp 22,000–55,000
Car ferry from Tomok to Ajibata
- Ave. Duration
- 56 min
- Frequency
- 5 times a day
- Estimated price
- Rp 9,500–110,000
- Economy
- Rp 16,000–34,000
- VIP
- Rp 22,000–55,000
Car ferry from Tomok to Ajibata
- Ave. Duration
- 56 min
- Frequency
- 5 times a day
- Estimated price
- Rp 9,500–110,000
- Economy
- Rp 16,000–34,000
- VIP
- Rp 22,000–55,000
- Phone
- +62 811-1621-162
- [email protected]
- Website
- facebook.com
Ferry from Belawan to Port of Tanjung Priok
- Ave. Duration
- 2d 12h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
Ferry from Belawan to Port of Tanjung Priok
- Ave. Duration
- 2d 12h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
Ferry from Belawan to Port of Tanjung Priok
- Ave. Duration
- 2d 12h
- Frequency
- Once daily
- Estimated price
- Rp 550,000–700,000
- Schedules at
- pelni.co.id
- Economy Class
- Rp 550,000–700,000
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 Best ways to travel around Australia, Is ride-sharing platform BlaBlaCar right for you?, and Getting to Rome from the airport - to help you get the most out of your next trip.















