Planning your North Sumatra itinerary but not sure how to get to Lake Toba? Good news – we live here, we’ve done the trip countless times, and we’re here to make it easy for you. Whether you’re travelling on a budget or looking for comfort, we’ll walk you through every option.
As locals, we’ve prepared the most up-to-date info to make sure you get where you need to go.
Ready to hit the road? Let’s get stuck in – you’ll be chilling on Samosir Island, sipping on a refreshing glass of passionfruit juice by Lake Toba before you know it.
Contents
How to Get to Lake Toba
The most common route to get to Lake Toba is by road from Medan to the port at Parapat, followed by a short ferry ride across the lake to the tourist base village of Tuktuk on Samosir Island.
Thanks to new toll roads, the journey is now faster than ever. Though slightly more expensive than the non-highway route, it’s totally worth it to reach paradise more quickly!
You can make the trip in a variety of ways: local buses, private cars with drivers, taxis or even a combo of train and bus.
There’s also a small airport not too far from Toba, which might slot into your itinerary well, depending on where you’re flying from: there are limited domestic and international routes.
Of course, your travel plans might not involve going straight from Medan to Toba. If your North Sumatra trip takes you through Bukit Lawang, Berastagi or even Ketambe, don’t worry – we’ve got those routes covered too.
How Long Does it Take to Get from Medan to Lake Toba?
So, how long does it take to get from the chaos of Medan to the calm of Lake Toba? It depends on your mode of transport and traffic, but in general, the journey takes:
- By private car: 3-4 hours to Parapat (using the toll road)
- By local bus: 4-5 hours to Parapat (using the toll road)
- By train + bus: 5-6 hours to Parapat
- Add the ferry to Tuktuk: Around 30-45 minutes
If you’re travelling to Lake Toba directly from Kualanamu Airport in Medan, the journey is likely to be a little faster, as you don’t have the congested city traffic to deal with.
Keep in mind that traffic jams are common, particularly on weekends or public holidays – especially on the last stretch of narrow winding road leading to the lake. If you happen to be travelling during a peak holiday like Idul Fitri or New Year’s, you’ll need to allow a few more hours!
Quick tip: If comfort, safety and speed are priorities, a private car is absolutely your best bet.
What's the Best Way to Get to Lake Toba?
The fastest, most convenient, and most comfortable way to get from Medan to Toba is with a private car and driver.
They can pick you up from the airport or wherever you are staying and get you to Toba quickly and efficiently using the new toll roads.
You’ll be able to stop wherever you like along the way for snacks or toilet stops. The best drivers will also have great insights into local culture and be able to share cool stories or travel advice.
Most drivers charge around 900-950,000IDR for the 3-4 hour journey, including the toll fees.
Tipping is optional but not expected. If you’re super happy with your driver, feel free to give an extra 50-100,000. It is a nice gesture if you stop to buy snacks, drinks, or a meal, to offer to pay for your driver.
Need a personal recommendation for a driver from Medan to Lake Toba? Email us and we’ll connect you with our best: exploringsumatra@gmail.com
Exactly How to Get to Lake Toba from Medan
Lake Toba is one of the main North Sumatra destinations for travellers, which is great news for you because it means that getting there is pretty straightforward, regardless of your budget. Let’s look at some of the best ways to get from Medan to Toba Lake.
In this section, we focus on getting from Medan City to Parapat – the small town where you catch passenger or car ferries across to Samosir Island. If you’re interested in going to other parts of Lake Toba, we’ll cover a few popular spots further on.
To reach Samosir Island, you’ll need to get to Tigaraja Port in Parapat for the passenger ferry, or Ajibata Port (also in Parapat) to catch the larger car ferry.
How to Get to Lake Toba by Bus (from Medan)
- Get to Amplas Bus Station (Terminal Amplas)
Direct buses from Medan to Toba leave from the Amplas Bus Station (Terminal Amplas) on the outskirts of Medan.
The easiest way to reach Amplas from your Medan accommodation is to use the Grab or Gojek app on your phone to order a car/bike. It should cost around Rp 50-90,000 from the central city to Amplas bus station and should take 15-20 minutes.
- Buy Your Bus Ticket to Lake Toba
When you arrive at Amplas Bus Station, head into the main building and proceed to the Sejahtera counter.
Tell them you’re heading to Parapat, Lake Toba, and you’ll purchase your ticket, which currently costs 70,000 IDR. The ticket will be with the Sejahtera bus company.
Buses usually leave every hour (on the hour) during the day, from 7 am to 6 pm.
As of July 2025, there is no option to book or purchase your Medan to Toba bus ticket online – it must be done in person at Amplas.
Continue through the lobby into the waiting area. Here, there are seats, food and drink vendors, and public toilets.
3. Board Your Bus and Enjoy the Ride
The main buses from the city to Toba are all the blue and white Sejahtera ones.
Depending on what time of day you go, you will get a different-sized bus (see the schedule above). Some are large, some medium, and some small (like a minivan). But all come with air conditioning and are relatively comfortable, as far as buses go.
When you board, let your driver know you’d like to get off the bus at Tigaraja in Parapat.
There are no toilets on any of the buses, but they do stop briefly for a rest at Siantar City, which is about halfway between Medan and Parapat. You’ll have time for a quick toilet and snack stop here.
4. Get Off the Medan to Toba Bus at Tigaraja
On arrival at Parapat, the bus first stops at the bus terminal for a few minutes to turn around. Stay put, and you’ll be dropped off near Tigaraja Port, where the passenger ferries leave destined for Tuktuk and Tomok.
The next stop after Tigaraja is Ajibata Port, where the larger car ferries cross the lake. If you find yourself here by accident, it’s easy to get on a small angkot (local minibus) and zoom back to Tigaraja.
Not sure what to do once you reach Parapat? Skip to the “How to Catch a Ferry to Samosir” section below.
Getting to Lake Toba by Public Transport – Train & Bus
The final way to reach Lake Toba from Medan is the least convenient, but potentially a nice local adventure!
There are trains going from Medan to Siantar (also known as Pematangsiantar), the halfway city between Parapat and Medan. From Siantar, you’d then catch a local bus to Parapat.
The train is called KA Siantar Ekspres. It takes 3 hours and 50 minutes, costs Rp 22,000 per person, and departs twice a day:
- Departs Medan 11:45 – arrives Siantar 14:38
- Departs Medan 20:30 – arrives Siantar 23:18
Once in Siantar, you’ll need to find the local bus to Parapat – a journey that can take 2-3 hours.
Because the train journey from Siantar to Medan takes close to 4 hours, you’re unlikely to make it to Parapat in time for the last ferry to Samosir (around 6 pm) with either of these options.
Keep in mind that if you use this route, you might need to stay in Siantar or Parapat for a night.
To book the train, use the Access by KAI app. Supposedly, you can book using a variety of websites, but this never works for us!
Download the app on the App Store or Google Play to check the latest schedules and book your tickets.
How to Get to Lake Toba from Medan Airport (Kualanamu Airport)
Medan Airport to Lake Toba by Private Car
The best way to get from Kualanamu Airport to Parapat is by private car and driver. It’s faster, more reliable and more efficient, getting you to Toba in around 3-4 hours at a cost of around 950,000 IDR.
Can you get a Grab car from Kualanamu to Lake Toba?
If you want to try your luck with a Grab or Gojek car, both companies have booths just outside the transportation station as you exit the airport.
Just remember there’s no guarantee that you’ll find a driver willing to make that long journey on the spur of the moment, so have a backup plan in place.
How to take a Bus from Medan Airport to Lake Toba
As of February 2025, you can now catch a DAMRI bus directly from Medan Airport to Parapat (Lake Toba).
Below is the most up-to-date schedule we could find, shared on the DAMRI Instagram page, with bus times from Kualanamu Airport to Pelabuhan Ajibata (Ajibata Port in Parapat) departing at 10:00, 14:00 and 20:00
It should cost around 35,000 and take 3-4 hours.
You can always try downloading and checking the DAMRI app to check schedules and buy tickets.
If the bus schedule doesn’t fit your arrival time, or is just not operating when you arrive in Medan, you’ll need to take a bus from Kualanamu Airport to Amplas Bus Station, and catch a bus to Toba from there (detailed instructions above).
How to Catch a Ferry to Samosir Island, Lake Toba
Ok, so you’re heading to Lake Toba from Medan – you’ll likely be staying on Samosir Island in the middle of the lake.
Of course, there are many great spots around the lake – both on the island and the mainland – but the best place to set up a base for sightseeing and experiencing the Batak culture is in the small village of Tuktuk.
Read more about Tuktuk and everything you need to know to plan a Lake Toba trip in our Ultimate Guide to Lake Toba
To reach Tuktuk (coming from Medan), you’ll need to catch a ferry from one of the two ports in Parapat:
- Tigaraja Port: Passenger ferries crossing to Tuktuk and nearby Tomok
- Ajibata Port: Large car ferries crossing to Tomok and Ajibata (both small villages around a 10-minute drive from Tuktuk)
Read on to find out how to catch a ferry from Parapat to Tuktuk (on Samosir Island)
Catching the Passenger Ferry from Parapat to Tuktuk
Tigaraja is a small port jutting out from the town of Parapat, directly opposite Tuktuk village on Samosir Island.
There are plenty of souvenir shops in this part of Parapat, as well as some great second-hand clothing shops and small restaurants. On Saturdays, there is also a bustling fruit and vegetable market right next to the ferry port.
When you arrive at Tigaraja, you’ll likely be dropped off just a few minutes away from where the ferries depart. There is no ticket booth, and no need to purchase your ticket before getting on the boat.
Just before you wander down to the ferries, there is a building on the corner with a “PT Bagus Holidays” sign. The staff here can help with any questions you have about the ferry schedule.
This is also where you can ask about a shared taxi back to Medan if you’re crossing over from Samosir to Parapat, heading back to the city.
Passenger ferries to Tuktuk should leave once an hour during the day, starting at 08:30 and finishing at 18:00.
How to Get the Ferry from Parapat to Tuktuk
Pictured is the latest ferry schedule from Parapat (Tigaraja Port) to Tuktuk for July 2025, taken from the Samosir Tourism Board’s Instagram Page: Disbudparsamosir.
This is updated regularly, so be sure to check it for the latest info.
Keep in mind that if the wind or waves are particularly strong, the ferries may be delayed for safety reasons.
HERE’S EXACTLY HOW TO CATCH THE FERRY FROM PARAPAT TO TUKTUK
- Walk directly to the Tigaraja port area. Often, you’ll see two boats docked next to each other. The one on the left (as you look at the lake) is usually bound for Tomok, while the one on the right goes to Tuktuk. You can check this by looking for signs on the boat or asking the people working the ferry.
- Sometimes, there is a booth to the left of the boats where you must register before you get on the ferry – a safety precaution. However, we’ve noticed lately that this doesn’t seem to be happening anymore. Staff will direct you if you need to head over and write down your details before boarding.
3. If you need help walking your baggage to the ferry, ask for a porter, and expect to pay them a small fee. If you don’t need assistance with your baggage, don’t accept offers of help, because it will likely come with a price tag.
4. Board the boat, choose your seat and wait for departure time. Ferry staff will help lift any heavy baggage onto the boat if required (no tip required but optional). Do not purchase a ticket from anyone before boarding: you won’t be asked to do this until you’re en route.
5. The staff of the ferry will come and ask you your destination. If you know your accommodation (and it has a lakeside place for the ferry to stop), tell them the name of your hotel, and you’ll be dropped there.
If you don’t have accommodation yet or your guesthouse is not lakeside, you can get off at one of the two public “port” areas – one called Sosor Galung, near Bagus Bay Guesthouse (one of the very first stops), or one more to the middle of Tuktuk, called Silintong.
6. Pay your ticket fare when asked, usually as you approach Tuktuk. It should cost 25,000 IDR per person.
7. The ferry staff will let you know when you’re approaching your stop. Grab your bags, step off the boat and welcome to incredible Samosir Island!
Looking for the Best Hotels & Things to Do in Lake Toba?
⬇ We’ve got everything you need to know ⬇
What if I Miss the Last Ferry to Tuktuk?
The last passenger ferry from Tigaraja to Tuktuk usually leaves at 5:30 or 6 pm. If you don’t make it in time, what are your options?
Sometimes the passenger ferries from Tigaraja to Tomok go a little later. You might be able to jump on one of those.
Tomok is a village just a 10-minute drive from Tuktuk, so once you arrive there, you’ll just need to find transport to get there.
There are usually becak (known as tuktuks or pedicabs in other countries) around Tomok, or you can reach out to your Tuktuk accommodation for assistance.
The other option, if you’re even later, is to head to nearby Ajibata Port in Parapat and board one of the large car ferries that cross to Tomok or Ambarita. They tend to go until 9 or 10 at night. Once you hit Samosir, you’ll need to find a way to nearby Tuktuk.
Of course, if you’re not in a hurry, you can choose to spend the night in Parapat and head to Samosir in the morning. There are plenty of hotels around. Budget travellers will be happy with Pandu Lakeside Parapat, or splash out on the Niagara Hotel.
See more great Lake Toba Hotel recommendations in our Best Hotels in Toba blog
How to Catch the Car Ferry from Parapat to Tuktuk
Large car ferries cross the lake all day and late into the night from Ajibata Port in Parapat. Riding one of these is a bit of overkill if you’re travelling without a vehicle, but a good option if you’re travelling independently via scooter or car.
These kapal (boats) go to either Tomok or Ambarita, both about a 10-minute drive from Tuktuk.
The KMP. Ihan Batak and KMP. Pora Pora go from Ajibata Port to Ambarita on varying days.
Tickets can be booked online below:
Ihan Batak & Pora Pora: https://trip.ferizy.com/
The KM Tao Toba ferry goes from Ajibata to Tomok. You can book the ticket in person when you reach Ajibata.
- Scooter Price – Rp 25,000
- Car Price – Rp 170,000
- Bus Price – 325,000
This is the latest ferry schedule from July 2025. For up to date info, check the Samosir Tourist Board Instagram page, where ferry schedules are updated montly.
Getting from Silangit Airport to Lake Toba
Lake Toba is home to a small regional airport in Siborong-borong, an area south of the lake. This small airport sees a handful of domestic and international flights, and could be a good option if you’re coming from Bali or Jakarta.
The airport is officially called Raja Sisingamangaraja XII Airport (DTB), but is still commonly known as Silangit (it’s a bit easier to say)!
Silangit is very handy if you’re wanting to start your trip in a different part of Lake Toba.
It’s close to the city of Balige and various visitor attractions to the south of the lake.
But it’s also a little closer to Parapat than Kualanamu in Medan, taking around 2 hours to reach by car.
There is the option to travel to Tuktuk entirely by car from Silangit Airport: there is a bridge on the west side of the lake connecting the mainland to Samosir Island.
It’s a longer route (3-3.5 hours), but you could make a day trip of it and stop off at some of the attractions in the western area of the lake, such as Sibeabea (the giant Jesus statue), Tele Tower, Bukit Holbung and Efrata Waterfall.
How to Get From Silangit Airport to Tuktuk
As always, private car and driver is the easiest and fastest way to get from Silangit to Tuktuk – and it comes with the bonus of being able to stop wherever you like to get a glimpse at some gorgeous lake views on the way!
If you need a driver, please email us: exploringsumatra@gmail.com and we’ll connect you with one of our best contacts in the area.
Taking the bus from Silangit Airport to Parapat
There are local buses doing the Silangit-Parapat route, but as always, getting accurate information on the schedules can be challenging!
DAMRI recently posted their bus schedules from Bandara Silangit (Silangit Airport) to Pelabuhan Ajibata (Ajibata Port in Parapat).
These buses leave daily at 10:00 and 13:30
How to Get to Other Parts of Lake Toba
While Tuktuk is the main destination for tourists, there are many other interesting places you might like to visit. There’s the biggest town on Samosir – Pangururan, the town of Balige on the mainland south of the lake, Tongging and Silalahi areas to the north… and the list goes on.
For most of these, you’ll need to rent a car and driver, or face a confusing muddle of local buses on the fly (certainly an adventure if you’re up for it!)
Another of the more popular routes involves a ferry ride from Tigaras Port in the Northeast of the lake to Simanindo Port on Samosir Island.
Check the Samosir Instagram page for recent schedules.
There are also ferry routes across various parts of the lake, allowing you to get to more remote areas, but these are a bit harder to get information on as well, with intermittent schedules.
See below for a few examples as of July 2025.
How to Get from Berastagi to Lake Toba
Berastagi is a common stopover for people heading to Lake Toba. If you’ve spent a night or two here, it’s not too far to head to the lake. Here are the most straightforward ways to get there:
- By private car/driver (to Parapat) – 3ish hours and costs Rp 700-800,000
- Shared taxi – these operate between popular travel destinations in North Sumatra and can be organised through your guesthouse
- By bus – no direct routes: you’ll have to catch a local bus part of the way and switch to one heading for Parapat. The best advice for this is to ask your guesthouse/guide for advice.
How to Get from Bukit Lawang to Lake Toba
It is possible to drive from Bukit Lawang (or other jungle villages like Batu Katak and Tangkahan) in one day.
However, it is a bit of a long drive, so best done by private car to be most efficient. Here are your options:
- By private car/driver (to Parapat) – 7-ish hours and costs around Rp 1,500,000
- Shared taxi – these operate between popular travel destinations in North Sumatra and can be organised through your guesthouse
- By bus – no direct routes. Take a bus from Bukit Lawang to Pinang Baris Bus Station in Medan, hop on a Grab or Gojek to get across to Amplas, then catch the Lake Toba bus to Parapat.
How to Get from Ketambe to Lake Toba
This is a long journey! The best option is to go by private car. It will take you 7-8 hours and cost around Rp 1,500,000.
If you’d like to try making the journey by bus, be prepared for a VERY long, potentially frustrating day. Your route will be something like: Ketambe – Kutacane – Kabanjahe – Parapat – Tuktuk. You’re easily looking at a 12+ hour day, so it might be a good idea to break it up with a stop in Berastagi first.
If this sounds like your kind of travel experience, make sure you have your Google Translate app at the ready and prepare to ask locals along the way.
While some parts of Sumatra can be tricky to navigate, getting to Lake Toba from Medan (and beyond) is refreshingly straightforward.
From shoestring budget to private car comfort, there’s a way to get there that works for you — and trust us, it’s worth the trip!
Safe travels, and see you in Sumatra!
Agung and Carly















