Southwest Macedonia Loop from Ohrid
A 4-day Ohrid loop over Galicica to Prespa, Bitola and Pelister: distances, nights, pass closures and when a rental pays.
Fly into Ohrid, keep one car for four days, and you can string both lakes, Bitola and Pelister into a single circuit without touching Skopje. That’s the job of this loop: the driving order, the nights, and the one date that shuts the mountain road. It isn’t a second Galicica park guide, and it is not the country-wide 7-day itinerary. If you try to see each stop as a full day trip from the same Ohrid hotel, you will spend the week on the same 70 km of road.
You need the car. There’s no useful bus over the pass, no public boat timetable you can treat as a plan for Golem Grad, and Pelister’s trailhead sits above Bitola, not on a city line. Pick the car up at Ohrid St. Paul the Apostle Airport (OHD), 10 km northwest of town on the aerodrome sheet, or take a taxi into town for 550 MKD on the municipal day tariff for those 10 km and collect wheels the next morning.
How the four days run
| Day | Sleep | Driving |
|---|---|---|
| 1 | Ohrid | Airport to town, then walk |
| 2 | Prespa (Stenje or Otesevo) | Ohrid over Galicica to the Prespa shore, about 50-55 km |
| 3 | Bitola | Prespa to Bitola via Resen, about 50 km |
| 4 | Ohrid (or fly) | Bitola up to Pelister (about 12 km) and 70 km back to Ohrid |
Count on about 200 km for the whole circuit if you return the car to OHD. The scenic Ohrid-Galicica-Prespa-Bitola arc is longer than the straight 70 km Ohrid-Bitola road; you pay that extra for the ridge. Best months are May to October, which is also when the pass is usually open. Winter is a different trip: the state roads company closed the Ohrid-Resen route through the park to all vehicles from 21 November 2025 to 31 March 2026, and reopened it on 15 April 2026 for vehicles up to 3.5 tonnes. Expect the same closure window next winter, but check before you go. Confirm before you book a February rental expecting both lakes in one frame.
Day 1 in Ohrid
Land, dump the bags, leave the car parked. Ohrid’s old town is compact, and a restricted regime for motor vehicles has been in force in the historic core since 28 May 2026. Walking is the faster option anyway: Kaneo on its cliff, Samuel’s Fortress, a slow waterfront. Things to do in Ohrid is the day. Where to stay in Ohrid flags rooms with their own parking, which you’ll want from tomorrow.
OHD has no regular airport bus. The official taxi page names Taxi Mercedes and publishes no fare card. Ohrid’s council tariff from 6 May 2026 is 50 MKD to start plus 50 MKD a kilometre by day. Ten kilometres on that meter is 550 MKD, about 9 euros at 61.5 MKD to the euro. Rank drivers often prefer a round euro number; that is bargaining, not the tariff. The hop itself, and the 550-725 MKD range that page prints, where the upper figure comes from routers that draw a longer line out of the terminal, not from a second tariff, sits in OHD to Ohrid. If you are collecting a hire car in arrivals, you skip the taxi entirely.
Day 2 over Galicica
This is the day the rental pays for. The P-504 climbs from the Ohrid shore, about 20 km and 30 to 40 minutes to the viewpoints where Lake Ohrid and Lake Prespa sit in the same frame. Galicica National Park has the walk up Magaro and the wildlife. Your job today is to cross, not to catalogue the park.
The park e-shop (checked 18 August 2026) sells a daily ticket at 100 MKD for visitors over 7. The Magaro trail is a separate 300 MKD. Buy before rangers ask, and don’t assume the road is free because a blog said so. The surface is narrow asphalt that turns rough near the top. Go in daylight. In cloud you’ve made the climb for a grey wall.
Drop east to Prespa rather than returning to Ohrid for lunch. That is the whole trick of the loop. Doing the pass as an out-and-back from the same hotel is how people spend four hours in the car and still never swim on the quiet shore.
The Prespa night
Lake Prespa sits about 160 m higher than Ohrid, with no river flowing out of it. The water sinks through Galicica’s limestone and comes up in the springs at Sveti Naum. You don’t need that hydrology to enjoy the swim, but it’s why the two lakes belong on the same trip. The Macedonian shore is sleepy: Stenje, Otesevo, Pretor. July crowds that choke Ohrid’s waterfront don’t make it over the ridge.
Golem Grad, the country’s only island, is the one outing that needs a phone call. Villa Prespa, a local operator, prices a private boat at 120 euros per boat from Stenje or 80 from Konjsko, maximum four people, May to October, booked at least two days ahead, weather allowing (checked 18 August 2026). The park sells a Golem Grad visit ticket at 300 MKD on top. There is no ticket window on the island and no standby ferry. If the boat is full or the lake is rough, you still have the beach, and you haven’t wasted a night in Ohrid to find that out.
Sleep on this shore. Rooms are simpler and cheaper than the Ohrid old town, and morning light on Prespa is why you came over the mountain.
Bitola on day 3
From the Prespa villages to Bitola is about 50 km via Resen, an hour of ordinary road after yesterday’s hairpins. The city is North Macedonia’s southern counterpart to the lake: a promenade instead of a harbour, consulate facades instead of churches on cliffs. Things to do in Bitola covers Siroki Sokak, the bazaar and the clock tower. Give the afternoon to the city and Heraclea Lyncestis, the ruins founded by Philip II of Macedon in the mid-4th century BC, 2 km south of the centre. Pay at the gate in denar; don’t walk up quoting a blog price.
One night is enough if Pelister is tomorrow. Two nights if you also want Kruševo, which this loop skips on purpose: that town is a northward spur, and folding it in turns day 4 into a scramble. Bitola’s university cafes stay open when Ohrid’s season has packed up. That’s the argument for sleeping in Bitola rather than driving back to the lake tired.
Pelister and the drive home
Pelister National Park is the mountain wall behind Bitola, protected since 30 November 1948 - the country’s oldest park. The peak is 2,601 m. Most visitors drive about 16 km up to the Kopanki trailhead (20-30 minutes) and walk in the molika pines. The two glacial lakes locals call Pelister’s Eyes are a full day; a forest loop is a morning. Don’t promise yourself the summit and a 70 km drive to OHD in the same afternoon.
The park FAQ said on 18 August 2026 that entry is currently free. The same site’s tickets page still lists 100 MKD per visitor and 150 MKD per car. Carry cash and confirm at the gate; don’t budget on either page being the last word.
Then the easy road: Bitola to Ohrid is about 70 km, an hour to an hour and a half via Resen, not over Galicica unless you specifically want the pass twice. Return the car at OHD. If your flight is that evening, skip the lakes walk and do the pines only.
When the pass shuts
The loop as written needs the P-504 open. JP Makedonija pat closes the Ohrid-Resen road through the park every winter. Last season that meant 21 November 2025 to 31 March 2026, all vehicles, no exceptions. It reopened 15 April 2026 for vehicles up to 3.5 tonnes. A hire car is under that limit. A motorhome may not be.
If you arrive in January, you can still do Ohrid, the lakeshore to Sveti Naum, Bitola and a lower Pelister walk. You cannot do the two-lake viewpoint. Drive Ohrid-Bitola via Resen on the main road and treat Prespa as a separate, longer day from the east. Don’t let a booking site sell you a “scenic mountain drive” in February. The road will not be there.
What the four days cost
A floor of about 130 euros for the driver covers a small car in the shoulder, fuel for 200 km, and the park tickets above. Rooms are extra and swing with July. The denar is pegged near 61.5 to the euro, so what you see in MKD converts cleanly.
The car is the line that moves. Alfa Rent, which has an OHD office, priced a 5-day mini at 66 euros a day for 15-20 July 2026 on its own booking page, and 19.5 euros a day for 15-20 October 2026, both checked 18 August 2026. April 2027 was not yet loaded (the same page returned 0). Relax, which delivers to Ohrid hotels, advertises from 22 euros a day and says that floor holds October through April. July is not “a bit more”. On Alfa it was more than triple the October rate. Book the car before the flight, and read car rental in Ohrid for deposits and Green Cards if you also want Albania.
Tours exist for Galicica and Prespa if you’d rather not drive. They will not put you in Bitola for the evening promenade and on Pelister the next morning. That’s the loop’s advantage, and it’s why the nights move.
If you only have a weekend, cut Prespa’s night and Bitola’s night becomes a long day from Ohrid: pass, a swim, Heraclea, back. You’ll do it, and you won’t remember the swim. Keep the four days. The extra night is the cheap part.
Route day by day
- Days on the road
- 4
- Distance
- ≈200 km
- Budget from
- 200 EUR
- Best season
- May, June, July, August, September, October
The route at a glance
-
Ohrid
Route startstop ≈1440 min
Land at OHD, walk the old town, sleep by the lake. The car earns its keep from tomorrow.
Photo: kallerna · CC BY-SA 4.0 · Wikimedia Commons ( source) -
Galicica National Park
38 km from the startstop ≈180 min
The P-504 over the ridge: both lakes in one view, then drop east toward Prespa. About 38 km and close to fifty minutes from town.
Photo: Ksenija Putilin · CC BY 2.0 · Wikimedia Commons ( source) -
Lake Prespa
55 km from the startstop ≈720 min
Stenje and the quiet shore. Boat to Golem Grad if the weather holds; sleep here so Bitola is not a race.
Photo: Pudelek (Marcin Szala) · CC BY-SA 3.0 · Wikimedia Commons ( source) -
Bitola
95 km from the startstop ≈720 min
Siroki Sokak and Heraclea Lyncestis, 2 km south of town. One night is enough if Pelister is tomorrow.
Photo: Marcin Konsek · CC BY-SA 4.0 · Wikimedia Commons ( source) -
Pelister National Park
110 km from the startstop ≈300 min
The country's oldest national park, about 12 km above Bitola. Forest walk or the lakes, then 70 km back to Ohrid.
Photo: Liridon · CC BY-SA 4.0 · Wikimedia Commons ( source)
Route map
The map with stops loads on click - to keep the page lightweight.
The map didn’t load. Check your connection and refresh the page.