Sri Lanka on public transport

The preferred method for tourist roundtrips and transfers in Lanka is private car-with-driver or taxi, and for short distances threeweelers (tuk-tuks). BUT, many tourists prefer to use non-private transport methods for all or part of their trip – in other words public transport, also in order to experience more of the local culture. This top question tries to help finding your way through the complex maze of options in Sri Lanka, and help tourists in deciding how they want to travel. Starting the explanation with the ‘weakest link in the chain’, bus; after that train which is good where it works and finally domestic flights.

Generic and bus

But before the bus details first some general sense of the system. With as start the worldwide paradigm ‘Public transport is nice in that it brings me from A to B cheaply, but  if I want to go from C to D there is always a lot of wrestling around to get what I need’. Hence simply do not expect Sri Lankan public transport to bring you to attractions and main towns as fast as private transport; due to transferring, waiting (due to timetable or just halfway, see below) etc. generally it will take 50-60% longer than with private transport.

As a taster a few positive and less positive experiences with bus services…

‘Instead of going for the expensive-to-use taxi desks at airport, we just walked outside, left and then at the end of he pavement bus #187 was waiting and luckily just ready for its twice-an-hour departure. It brought us to Fort station in 90 minutes for only Rs 53/head, and we were faster than many taxis. Later we heard that with some luck we also could have got the EX03 Expressway bus, for Rs 130, and then been in town even half an hour faster. In the traffic jams buses and lorries are the kings-of-the-road where everyone is scared of. Maybe even more because of the loud music banging from the speakers all over the bus…’

‘We took the Airport-Kandy service in the evening, after first the #187 shuttle to the Katunayake bus stand. Because there was hardly traffic we expected the bus to go much quicker than the 3 hours needed at daytime. Wrong. At about every major and minor town the (private) bus waited for up to five minutes in order to attract more crowds and hence generate more profit for the bus company. Later we learnt that this is standard for all private buses in Lanka, and that travel times hardly vary between rush hours and off-peak hours – during the latter the buses simply wait a lot more often. It is a feature of the local system, where bus operators get licenses not for a timetable or a number of vehicles but for a number of rides per day.’

 ‘We wanted to travel from Bentota to Unuwatuna with our travel backpacks, and stood by the roadside bus stop. Strangely enough we had to let at least ten (!) buses which clearly had free seats pass until one stopped for us, and that one only went as far as Ambalangoda. Later we learnt that bus conductors frown upon any traveler with considerable luggage, as it means they can pack less-sardines-in-the-can (all non-AC buses don’t charge per seat but per passenger). Now we consider the ‘French hitchhiker couple’ trick: where in France the ugly bearded sandal-wearing boyfriend hides in the bushes whilst the attractive blonde lady puts her thumb up near the road, in Lanka we will hide our backpacks in the bushes and grab them once the bus has stopped to let us inside.’

Buses – the facts

Now the more formal stuff. There are two kinds of public buses in Sri Lanka: government (SLTB), red colored, and private which currently have all kinds of colors but there are plans to dictate a blue color by law. For the passenger the difference is not much – main point is that SLTB buses tend to follow a timetable (if existing) more strictly, and won’t use the ‘wait for more passengers’ trick. More important is the bus service type. There is a gliding scale of speeds/types/prices, with as main types:

  • Local/normal bus. Stops everywhere.

  • Express bus / ‘limited stop’. Still stops almost everywhere as long as they can get more passengers or someone wants to disembark. Should not charge extra.

  • Semi-luxury buses (blue sticker). Again 'limited stop' for what it's worth. Charges extra (50% over normal price), should have slightly more comfortable chairs and aisle space but that depends a lot. Officially should not allow standing passengers (hence free aisles), but violations of that rule abound.

These three are standard buses, non-AC, have seats and standing in the aisle, and have severely restricted luggage space. As exemplified by the ‘hitchhiker’ story above, the best way for tourists to board them is at the start of the line or at least at a bus station – at the latter point less guarantee for a seat or room for your luggage though. Comfort is on the rough end of the scale, generally these are Indian-designed rugged buses. And it is absolutely advised against bringing younger kids on them -  age 7 or 8 is about the minimum. Imagine the always open doors at neckbreaking speeds and potholed roads, you need quite some discipline to survive near a door of these buses.

  • AC Express bus (always private). Charges extra (about double the price), and though it’s illegal conductors often try to charge tourists for the end-to-end stretch instead of a partial stretch if they embark/disembark halfway. Plus, next to the comfort of AC: fewer stops and a guaranteed seat, and kid-safe due to the closed doors. Minus: for serious luggage often one has to pay for an extra seat, and as the aisle is filled with folding seats it can really feel like sardines-in-a-can. Even these can’t handle larger luggage like hardshell suitcases or surfboards.
  • Super Luxury (Express) Coach. Charges extra (about triple the price of a normal local bus). Basically the AC bus model but it is more aimed at long-distance services, often also at night. And is also the only bus allowed on the Expressways (Matara-Galle-Kottawa-Maharagama/ Kaduwela and Colombo-Airport services). Rule of thumb is that no aisle seats are allowed which gives it a more spacious feeling, and also generally more provisions for (tourist) luggage. Reserving seats of some of these buses can be done through a few commercial websites like  and

As mentioned the bus stations (bus stands) are the best places for starting your trip and transferring. In most towns they’re not that hard to find (though thanks to the old Colonial Empire city planners often quite distant from the railway stations). And moreover compact and modern enough to find your way, and if not locals are always willing to point you to the right bay. Only two bus stations are so big and scattered that it can be a bit challenging, hence some more advice for them:

  1. Pettah/Colombo: most AC express buses, relevant for tourists, leave from Bastian Mawatha stand which is about 500 m east of Fort station, behind the shops on south side of Olcott Mawatha. However, there are at least 3-4 quite different other parts of the 'bus station'. Another important part is opposite this Bastian Mawatha bus station on the north side of Olcott Mawatha. It is mainly for SLTB (red) long distance buses but in a corner is also the halt for the very important buses to Katunayake Airport. Two lines: EX03 (expressway, 45-60 minutes but more expensive) and 187 (1.30 hours, cheaper).

    Avoid the '187-Expressway' AC Express small private buses. They charge same as EX03 but have far more difficulty complying with the on-this-route-compulsory large luggage space rules, and moreover on the normal-road stretch between Pettah and Expressway entrance tend to display the typical-private-bus behaviour of wait stops to attract more passengers - therewith killing the speed advantage of the express bus (and abusing your more expensive ticket money).

  2. Kandy: most SLBC long-distance buses leave from the ‘good shed’ stand northwest of the station. Most (private) AC express buses leave opposite the station from the road leading to Clock Tower and the other main bus stand.

Finally some links to get you started – though most bus timetables in Lanka are unpublished, or outdated if published at all. ‘Ask around at bus stand or hotel’ is still the best recipe for planning.

Partial bus timetable:

Some routes information:



Some Super Luxury Services (East coast and North)

A growing list of bus routes and maps:

Sites allowing online seat reservations: 

Up til now TA forum feedback on these reservation sites has been mostly positive, though the 2nd of these three sites employs at least one notorious spammer who against all warnings repeatedly polluted the forum. Not the best promotion if you want to attract tourists, breaking TA rules does not promise well for a company sticking to all other types of rules and agreements :-(


These are not only superior to buses in comfort and luggage options, but also a tourist attraction in themselves. The Colombo-Kandy-Nuwara Eliya-Badulla line contains the three most scenic stretches of the country.

Luckily for information here the tourist is aided by the authorative volunteer-maintained train travel site of the world. So for facts like the main timetables (and the link to get more details) and the – overtly complex - booking systems, refer to

However, the format of that site does not allow all touristy information relevant to SL tourists, hence a few extra tips and pieces of information. Firstly on stations-fitting-for-a-tourist-town. These are not always the logically nearest station. A few main relevant ones:

  • Use the trip planner from, not the link which was originally on that site (starting with 'GIC', government information center). That is slightly getting outdated. The trip planner, as seat61 also says, is best to use to check all timetables; there are e.g. outdated details or bigger omissions in the timetables for the hill country trains and on Colombo-A'Pura-Jaffna route.
  • For Unuwatuna, use Galle station. U’tuna itself is mainly served by a few local trains hence you would need a lengthy transfer to those, and moreover the station is on the ‘wrong’ (non-touristy) side of town. From Galle take a bus or private vehicle.

  • For the Cultural Triangle coming from Colombo, use Habarana station.

  • For Passekudah/Kalkudah beaches, use Valaichchenai station. Kalkudah station, an impressive desolated place fitting movies like Westerns and the 'Spectre' 007 movie, again is only served by local trains.

  • And finally Kandy has a good station but one of the tree Hill Country stations does not attend to that but only to the curious triangular Peradeniya Junction station. It’s in Pendeniya suburb and has a good bus connection from/to Kandy (Clock Tower bus stand).

Also the number of classes and reservation options on the rail network can be quite overwhelming. Hence below a table trying to summarise the options; see seat61 for more detail about each class.


Operator and class

Reservable through

Reservable routes (not all rides!)

AC or open windows

What is Included

Rajadhani (Express)










Snacks and coffee/drinks

On _some_ C-B rides an open balcony

SLR Observation Car

SLR (3rd party agent)

Jaffna, Kandy and Badulla routes



SLR AC First Class (AFC)


Jaffna, Badulla, Kandy



SLR Second Class


Jaffna, Batti/Trinco, Kandy, Badulla



SLR 3rd class






Note: 2nd and 3rd class on almost all trains also exist as carriages with only nonreservable seats.


A few more additional pieces of information:

  1. If you travel from Colombo to South and have a nonreservable train, try to get one that starts at Maradana (2 km east of Fort station) and embark there. The chance for a seat is much higher there. Similarly, if you embark towards Colombo from Galle try to be there 20 mins before scheduled time – the train comes in that time from Matara and either the loc is moved to the other side or at least the driver has to change sides, when you come later all seats are often grabbed.
  2. Normal luggage (including large hardshell  suitcases) is okay near the chairs and the racks. Oversized luggage like bikes or surfboards is possible in the older long-distance trains, often at the rear end (and Observation car) side they have a guarded cargo compartment. In the more modern trains it can be a challenge, check ahead - e.g. at the station – which rolling stock will be used.
  3. Though not indicated well in the timetables, trains 1040-8040 and 8039-1039 are one through train; early morning Kandy to Matara and afternoon the other way round. Same for 4086-8086 (Vavuniya to Matara) and 8085-4085 (Matara to Vavuniya). This also means an addition to [1], unlike what the table on Seat61 says the 8040 and 8086 trains _do_ stop at Maradana also prior to Fort but it's technically under their different train number.
  4. Colombo Fort is not the closest station to the airport on the Northeast-Eastern bound lines (Anuradhapura, East Coast, Kandy, Badulla). Ragama, Gampaha and Veyangoda are all served by some of those long-distance lines. So people arriving from the airport, or taking an early train like the 6 AM one to east coast, might sometimes prefer to board here. Unless you have a reserved seat however be prepared to stand for quite some time, as the train fills up at Fort station already!
  5. If you want to reserve seats for a Srilankan Railway train, the only place with a special tourist counter is Colombo Fort. However normal counters at a few more stations also sell reservations on all reservable trains. The official list (from the SLR site) is Kandy, Badulla, Jaffna, Anuradhapura and Vavuniya. But tourists also reported success on a few other stations like Ella, so it's worth trying at such places - including Trinco and Batti.  E.g. Ella allows reservations of trains of that same day only.
  6. Take care with booking reservations over the Internet, which is a growing business. As indicated in Seat61, Exporail and Rajadhani are the initial suppliers and there is no surcharge for Internet booking with them. Also the number of agencies selling the service of making SL Railways reservations on your behalf is growing; they tend to have a considerable surcharge on the (low) SLR ticket price but seeing their efforts that makes some sense.
  7. Firstly a 'mistake' in some of these agencies offering: they sell you a 1st class journey from Colombo to Matara or v.v. once a day, at a price of roughly Rs 2,000. The mistake is caused by SLR/Mobitel which do resell Rajadhani Express on a.o. this route, but.... the price of Rajadhani is Rs 1,100. Hence do not buy this route from SLR or any agent of theirs!
  8. Secondly a warning for Rajadhani and SLR reservations. Contrary to Exporail you don't obtain a full e-ticket but solely a reservation number, and this needs to be converted to a 'validated M-ticket' (Rajadhani) or just initial M-ticket (SLR). You DO need to do this paperwork before you board the train. With Rajadhani the list of places to convert is relatively large and includes all stations they sell tickets from (but not all intermediate stations, in case you want to board there). With SLR however the list is a limited set of Railway stations plus lots of Mobitel shops, so beware and inquire with the agency ahead whether the station (and time) you plan to convert is possible! And better take some margin, e.g. Peradeniya station has solely one printer and if that breaks down passengers boarding there are in big trouble; better try to convert 1-2 days earlier then you also have a backup (in this case driving to not-that-far-away Kandy station)
  9. However as correction/nuance on the previous: according to Exporail site their e-ticket confirmation is not a full e-ticket but needs to be shown to SLR counter staff at the departure station and replaced by a full ticket/boarding pass. In practice passengers have reported not to need it, but sometimes being checked by SLR staff when exiting stations after arrival and getting some discussions. Hence advice for Exporail is to try to make time to get this boarding pass before departure if enough time and queues not too long, but it's definitely far less needed than with the Rajadhani and SLR reservations.
  10. And final point about reservations: info for SLR at Colombo Fort. 3 different counters sell/deliver different things. Same day reservations for some Express trains are sold from the normal counters (1-10 numbers?) for 1st and 2nd class for these routes; solely for the trains departing from Fort. Any-day reservations for all reservable stretches (upto 30 days now it seems, whilst Mobitel bookings start 45 days before travel date) are sold at counter 17 at the east front side of the station, with one queue per line. And finally conversions of Mobitel reservation numbers to M-tickets are done at the Mobitel counter, between counter 17 and the luggage depot.

Another useful piece of information for some is Mobitel. This callcentre based service (also available from Hutch mobile network) is used by all the 3rd party operators selling SLR reservations. Once a tourist is in the country, and not close to a station where reservations can be made, it could be worth doing it oneself; afterwards still the M-ticket needs to be converted to a physical ticket, see procedure above. See (but timetable there tends to be outdated, use the official ones). A few further guidelines:

  • Though staff speaks good English, their skills in finding the proper ticket are limited. Always use the departure time of the train from its origin station and preferably also the train number (on SLR and Mobitel sites), not the departure time from the station where you depart from if different. E.g. one tourist needed a reservation Nanu Oya to Colombo departing 09.25 and asked so. Callcentre replied 'we only have 8.30' and sold one. Which is the train leaving Badulla (origin) 8.30 and attending Nanu Oya at 12.02 :-(
  • And one can safely assume all trains where SLR site and Seat61 say 'reservable' are available through them. Again be precise - e.g. for the daytime connection from/to Trinco specify you want reservations Colombo - Gal Oya or v.v. for the Colombo-Batticaloa (!) train.
  • Have enough balance on the Mobitel or Hutch SIM for the tickets _and_ for 10 minutes calling time at least. Staff gives the impression that part of their job is to keep you on the phone longer to sell more call minutes, e.g. they ask about your gender.
  • Have an id ready, the M-ticket contains your id number and for conversion to physical ticket you need to show this.
  • Just like with Rajadhani/Exporail, reservations are for longer stretches only. E.g. when boarding at all stations between Nanu Oya and Hatton need a reserved seat from Nanu Oya.

Some advice if you could not get a reservation (because of it being full or because the train lacks this option).

Be early at the station, before the train rolls in. And be prepared for all kinds of tricks, e.g. finding an empty seat through an opened window and putting a 'flag' like a piece of clothing or bag on it before squeezing yourself through the doors. Better even: board the train a few stations before the (bigger) station you plan to leave from, though it takes some extra time and rupees. You might have to stand for some time but at this bigger station many people will leave, and you'd be able to grab a seat before anyone from the platform has a chance.

To demonstrate all of this, a live experience from a forum contributor:

"It was absolute bedlam getting on the train in the scrum at Weligama, just a unruly mass with no manners whatsoever :). Thought I had secured one of the last seats left, but as I stood up from it & put my bag on the rack above my seat, a man climbed over the seats from behind & refused to move, despite being asked to. In the end I had to move & stand, just unlucky that my 20kg bag on the rack somehow managed to fall onto his head as I moved it :)

Eventually got a seat at Galle, but what I saw on the rest of the journey was not good. Several times, women were actually pulled off seats where they were sitting, or basically forced off seats & made to stand so Sri Lankan men could sit there instead."

Back to another topic on trains: night trains. They exist (see seat61) and run on time. But generally we don't recommend for tourists, because of

  • The Badulla-Colombo line being simply too scenic not to travel by daytime. At night one misses the scenery which is an attraction in itself.
  • For the other lines (Jaffna, Trinco and Batti) it's quite a choice for the travellers. 2nd class seats are fine, they're the same as daytime, but really are not suitable for falling asleep for most people.
  • The '1st class' sleeping berths allow sleep, yes. As Seat61 says 'these cars are old, fairly basic and grubby' which is true, for those familiar with Indian trains despite the berths they are more on '3rd class SL' level than on 2nd or 1st class. One traveller even reported 'make sure to have socks on and put your trousers in your socks, to avoid the cockroaches creeping upwards along your legs'. But the major problem next to hygien is safety. Many of the berths locks are damaged or even fully broken, and enough stories of fellow passengers or even train staff trying to take advantage of this and attempting to rob (or even worse) of sleeping passengers exist. The train doors of the sleeping compartments are locked from the outside now but that has not lowered the number of problem reports enough.


Domestic flights

These are of course the only type public transport which is superior to private-car-with-driver in its high speed. Infrastructure, however, has barely developed. There are three main (groups) of routes:

a) Jaffna (Palaly airport). Flown by

from Ratmalana airport, which is south of Colombo and hence 2 hours from Katunayake International Airport at least.

Helitours is a mixed bag because of their bad website and e-mail booking process; best way to book is by phone or in person at an office (including the one at CMB airport arrivals hall), and some foreign and all local tourist operators have also managed to book flights with them. However their reputation in comfort, timeliness and safety is fine.

b) Trincomalee. Served three times a week by Helitours; actually their only scheduled flight is Ratmalana-Trinco-Jaffna.

c) Scheduled flights by Cinnamon Air

The sole widely available routes are the Air Taxi (water or amphibian) scheduled flights by Cinnamon Air. They’re serving a.o. the  Colombo-Kandy stretch and other routes like Koggala-Galle and Dickwella (close to Hambantota-Yala), East coast (Trinco, Batticaloa and Arugam Bay) and Nuwara Eliya. They do have a schedule, prices generally 4-5 x that similar distances of Helitours hence really for the upmarket tourists. They have a domestic terminal at the airport. Next to this there is an aerodrome closer to Colombo city centre, at Water's Edge/Rajagiriya (near parliament in an eastern suburb).

The site is