Croatia’s public transport is well adapted to the needs of almost any type of traveler. There are half a dozen international airports, roads to all major destinations have been massively improved in the past decade, buses move budget travelers efficiently within the country and across its borders, and most of the 47 populated islands can be reached via an intricate ferry system.
All the big cities along the coast – Pula, Rijeka, Zadar, Split, Dubrovnik – plus Zagreb are serviced by different international airlines. Most of these airports are tiny, which means that they are frequented by a limited number of carriers. With affordable, easy buses connecting the coastal cities with each other, it makes sense to find the cheapest flight first and take it from there. Ryanair, for example, flies to Rijeka, Pula, and Zadar while EasyJet goes to Split and Dubrovnik.
Even though some local public transport authorities offer a regular service, usually between airport and bus terminal, in other places, private companies have filled that void. If you want to save a Euro or two (literally), you can book the shuttles online. Check the airport websites for more info.
Croatia has a very solid national bus network, not only between the cities but also to National Parks such as Krka (Skradin entrance) and Plitvice (Plitvička Jezera), with many routes being serviced several times a day.
Here’s my September 2016 itinerary, with duration and prices of the connections (€1=appr. kn7.5):
To reach remote stops, ask at the bus station or buy a ticket to the next bigger place and request the driver to drop you at your actual destination along the route. I’ve seen people leave my bus in very remote, random places.
The buses are mostly modern (local buses within cities can be the exception), and drivers drive fast but within limits. Sometimes, in true Balkan style, they happily smoke away at work. So get a seat farther back on the bus if you can.
If you can’t find the main bus terminal in a city look for the Autobusni Kolodvor, that’s Croatian for “bus station”. Most bus terminal websites are available in English as well. Simply search “autobusni kolodvor +[city name]” or use the link provided at the end this segment.
On these websites, you’ll usually find all arrivals and departures, which makes them an excellent starting point for deciding when to go where. Sometimes going to the station is inevitable to learn about all available connections. For example, when I wanted to go to Montenegro’s capital Podgorica from Dubrovnik the only connection found online left at 7 in the morning. However, at the station, I learned that there is also a 3 PM bus.
While at the larger stations the different bus companies will have their individual offices, there is usually also a general information/ticketing desk where you can buy tickets or at least easily enquire about when the very next bus to your destination leaves without having to check in with half a dozen companies.
Beware that most of the time you’ll pay a 10 to 15 Kuna surcharge on tickets bought at the station as compared to online prices. Exceptions apply, especially when purchasing last minute tickets.
As almost everywhere in Croatia, rounding is rampant, usually to the next full Kuna, occasionally to the next kn10. While that seems like not a lot, it can add up if you stay a few weeks.
To book your journey online, you can choose from several different aggregator sites. I like getbybus.hr because they also have an app for mobile tickets. However, these sites never cover all available connections. So double-checking at the station or online can uncover entirely new possibilities (price and time wise).
International connections go to the neighboring Eastern European countries, different destinations in northern Italy, and as far North as Munich , Germany.
Note that there might be express and slow connections between the main cities; for example, getting from Pula to Rijeka may take as little as 1.5h or up to 3h.
One last fee to pay: most companies charge up to kn20 per bag/item to put in the underneath compartment (and won’t allow you to block seats or aisles with your luggage).
In most cities, you can buy you local bus tickets at the station, at any Tisak kiosk, or on the bus itself. Prices off the bus for an inner-city ride range between kn9 (e.g. Zadar, Split) and kn11 (e.g. Dubrovnik) while they are kn2 more when bought on the bus.
Again, kn2 is not a lot of money (about 25 cents), but it adds up.
Bus stops are not always easy to identify. When you get on the bus, you want to try to communicate your destination to the driver. If you’re looking for the right spot to get on the bus you’ll have to ask – your host, other locals, bystanders,…
Sadly, the national Croatian train network along the coast is abysmal. Zadar, for example, has a snazzy train station right next to the bus terminal, alas, there are zero trains – the next station in operation is in Knin, about 2 hours on the bus away.
However, the trains can be an affordable and convenient option to get to/from Zagreb and other East European (capital) cities like Slovenia’s Ljubljana, Hungary’s Budapest or Serbia’s Belgrade.
While taxis in Croatia aren’t necessarily expensive, I have been told by Airbnb hosts that Uber is a safe, convenient, and cheap alternative to taxis throughout the Croatian cities.
And don’t forget: if you’ve never used it, the first ride is free.
Vacationing on the islands is a doddle as long as you find out which company serves your island of choice from which mainland port. And if you’re just looking to explore islands off any coastal city, look into self-organizing a tour first. What is it you want to do there? Is a simple ferry + bus option available? It often is.
Some routes are operated by smaller, private companies. Split to Dubrovnik, for example, is run by Krilo. Their fast catamaran leaves Split every morning at 7:40/Dubrovnik in the afternoon at 4:30 (thrice a day in October, not at all in the winter), at kn190 costs about the same as the bus, and takes only 4.5h (it’s at least 6h by bus), all the while stopping in Brac, Hvar, Korcula, and Mljet. – It’s basically a cruise and transfer in one.
*Disclaimer: I took the boat from Split to Dubrovnik (4,5h/190kn). This price/duration is per getbybus.com.