Where to Stay in Puglia: Ultimate Beach Resort Guide

Please double check requirements before your trip and be sure to follow all local guidelines to keep yourself and others safe! (This post may contain affiliate links. Find more info in my disclaimer)

Heading to Puglia (also known as Apulia) this year for some summer sun? This region in the south east of Italy is home to a heady combination of white sand beaches, stunning coastal scenery, historic villages, baroque towns, and vibrant turquoise seas.

This is a beach-lover’s guide to where to stay in Puglia and it will cover:

  • which part of Puglia to choose
  • Puglia’s main beach resorts and coastal highlights
  • the best places to stay for atmosphere and nightlife
  • the best sandy beaches
  • the best luxury and boutique beach hotels in Puglia
  • the best quiet unspoilt areas for couples, families and nature-lovers
  • the best hotels right on the beach

PUGLIA OVERVIEW

Rock formations at the Costa Otranto marine park.
Costa Otranto Marine Park

Once a rustic and little-visited part of Italy, Puglia has really grown in popularity as a tourist destination over the past few decades thanks to the arrival of budget flights.

And it’s no surprise – it has a unique appeal, a rich culture, and abundance of charm. Most visitors to Puglia come for the beautiful architecture, with the beaches are merely a bonus. But Puglia has over 800km of coastline and is to some of Italy’s most beautiful white sand beaches and rocky seascapes.

The characteristic towns are a mix of whitewashed medieval and sandstone Baroque. Pale tonal hues and ornate facades abound, with a lingering Greek influence. Many of the popular destinations are inland but there are also some lovely fishing villages and harbour towns.

By and large, the best beaches are in or near functional resort areas. They are highly seasonal, plenty of campsites, lidos (beach clubs), and traditional 2 and 3-star beach hotels aimed squarely at the domestic crowd.

The medieval towns are awash with lovely hotels and guesthouses though. And lots of the regions masseria (farmhouses) have been converted to boutique resorts.

They are likely to be very busy (and hot) during the summer break in July and August, and feel dead outside or even close down completely outside these months. Beach cleaning is often performed by the occupying lidos and is patchy in unorganised areas.

Shortlist – Best Places to Stay in Puglia

Which Part of Puglia to Stay In?

Map of main towns and beach resorts in Puglia.

The two main cities in Puglia – and gateways to the region – are Bari and Brindisi. The other major city of note is the gorgeous Lecce, a university city with well-preserved baroque buildings.

Most of the tourist attractions in Puglia are located in the Salento Peninsula. If you’re looking at a map of Italy, his is the ‘heel’. The Salentine Peninsula is sandwiched between two seas – the Adriatic on the north side, and the Ionian on the south.

  • Spur of Italy: Wild and beautiful Gargano National Park with several  beach resorts, popular with Italians.
  • North Coast (Adriatic): Main cities and a rocky coastline with many small sandy coves, limestone cliffs (particularly around Otranto) and picturesque fishing towns. A cycle path runs the length of this coast.
  • South Coast (Ionian): Miles of incredible white sand beaches backed by dunes, but the resorts are functional and bland.
  • Interior: Dominated by olive groves and, to the north, grain crops. Many beautiful medieval villages including the famous beehive houses.

Getting Around

Airports: There are two international airports in Puglia – Brindisi (BDS) and Bari (BRI). Both are served by budget European airlines – check Skyscanner for cheap fares.

Train and bus: Puglia is relatively well connected by train and certainly you should be able to reach the highlights with a little research. There’s a route that runs along the north coast to Lecce with a few branches inland and to the south coast. Don’t forget to validate your ticket before getting on the train.

For exploring the smaller villages inland or the quieter beach areas you’ll need a car. Rental is common. To drive across the peninsula often involves small country roads, route times are longer than you might expect.

Local buses can be tricky to pin down as often there isn’t an official schedule.

You can check train and bus routes on Rome2Rio and book tickets through Omio

Ferry: Connections to Greece and the Balkans are available at Bari and Brindisi, see Ferryhopper for more information.

Ionian Coast

Beach at Porto Cesareo from the sky.

The Salento Peninsula’s south coast is where you’ll find the blockbuster sandy beaches and flat resort towns surrounded by sparkling seas and low-lying shrub. 

Taranto

Taranto is a port city with a less-than-salubrious reputation and an abundance of historical sites.

You’re unlikely to choose it as a base – its golden-hued old town sits on an artificial island surrounded by apartment blocks and heavy industry – but there’s enough to occupy you for a day trip, including an archeological museum, an atmospheric harbour, fish markets, local life, and fantastic Aragonese fortifications. 

Stay at the charming Hotel L’Arcangelo or at the spacious spa hotel Histo San Pietro Sul Mar Piccolo.

To the north is one long dune beach that starts at Lido Azzurro and keeps going deep into Basilicata. Head to the Blue Flag Marina Ginosa if this sounds up your street.

The family-friendly resort vibe begins to the south at Spiaggia di San Vito and Lido Bruno. There are several camping villages and plenty of budget B&Bs around here.

Transfer time: 1 hour from Brindisi Airport.

Porto Cesareo

Sandy beach at Porto Cesareo.

Porto Cesareo is one of the most popular beach towns in Puglia. The main beach here – Torre Lapillo – is a whopping 18km and has a shallow sandy bottom that extends far out to sea. These lagoon-like waters form a protected marine park and its fine sands give it a tropical feel.

To the south there are several smaller bays as well a mini archipelago of uninhabited islets just offshore. 

The town is also home to a large fishing fleet and plenty of seafood restaurants. It’s very popular with Italian tourists – particularly families with small children – and in July and August is packed to the gills. There are lidos to suit every style, including the stylish Bahia.

The Massaria Corda Di Lana Hotel & Resort is the standout hotel in the area. It’s just a 5-minute drive from town, and has access to private beaches.

Closer to the action, Hotel Falli and Le Dune Suite Hotel are comfortable modern 4-stars near the water.

The stretch of coast between Taranto and Porto Cesareo is packed with clean, quiet, and unorganised dune beaches such as Spiaggia di Borraco, Campomarino, San Pietro in Bevagna, and Torre Colimena.

Transfer time: 50 minutes from Brindisi Airport.

Gallipoli

Gallipoli town and beach.

The fishing village of Gallipoli is the ideal combination of seaside location and whitewashed villages so typical of the Puglian interior.

The fortified medieval old town – which has Ancient Greek roots – sits on a limestone island that you reach via an arched bridge. It’s the prettiest place to stay on the Ionian Coast. There’s even a natural park at the end of the bay, with trails through the dunes and camping facilities. Some sections of the bay (notably Samsara) come alive with beach parties in the summer.

As well as electric blue seas and colourful fishing boats, it has a generous sweep of golden sand. And there are some lovely boutique places to stay such as:

If you don’t mind being out of town, the Grand Hotel Costa Brada has a beachfront location.

Highlights to the north of Gallipoli include the quieter Padula Bianca beach, and the smaller village Santa Maria al Bagno with a wilder section of coast

Transfer time: 1 hour from Brindisi Airport.

Pescoluse

Day beds on Pescoluse beach.

Pescoluse is one of the best sandy beach resorts in Italy, not just Puglia. It’s known as ‘the Maldives of Italy’ for its gently shelving turquoise waters which are Blue Flag rated.

The beach of soft white sand extends for 4km and is backed by dunes. It’s organised and lively in the summer months with a number of lidos. The Instagram crowd head to the Lido MaldiVe de Salento for daybeds, pictured above. The village itself is small and tourism is mainly domestic and highly seasonal.

Top hotel pick is the relaxed rural retreat Relais Masseria Sant’Antonio, a short walk from the beach.

Or traditional landscaped beach hotel Tenuta Li Fani Residence has a pool.

Transfer time: 1 hour 25 minutes from Brindisi Airport.

Santa Maria di Leuca

The well-heeled coastal town Santa Maria di Leuca (or just Leuca) is located on the southernmost tip of the heel. This is where the Adriatic and Ionian seas converge and it has long been a site of strategic importance.

There are a few beach clubs along the palm-lined promenade and a buzzing marina.

The beaches around Pescoluse are a short drive away – just over 10 minutes – so the two are easily combined. Boat trips around the rocky shorelines at the end of the peninsula are a popular pasttime.

There are some smart places to stay around here, including the spacious Approdo Boutique Hotel which has a pool and central location, and the relaxed and rural Montiro Hotel.

Transfer time: 1 hour 30 minutes from Brindisi Airport.

Adriatic Coast

The tip of the heel, between Leuca and Otranto, is the Costa Otranto coastal park studded with grottos and coves.

Castro

Castro waterfront.

Cute Castro is a medieval fishing village in an exceptionally scenic part of the coast, with ragged green-flecked hills, a clifftop Norman castle, and azure seas.

As with many settlements in the region, it was originally founded by the ancient Greeks. It’s small and charming, and there’s little to do but relax, eat, and enjoy la dolce vita and the surrounding vistas.

There’s no proper beach to speak of, but if you enjoy swimming off rocks and going on boat trips you’ll be in heaven.

There’s a cluster of good 4-star hotels:

Transfer time: 1 hour 15 minutes from Brindisi Airport.

Santa Cesarea Terme

Villa Sticchi in Santa Cesarea Terme.

The coastal spa town of Santa Cesarea Terme is just north of Castro (10 minutes in the car) and is notable for its thermal springs and elegant clifftop architecture with colourful Moorish influences. It’s quite different to the rest of Puglia.

The sulphurous water and picturesque landscapes attract tourists year-round. As you might expect from an established spa town, there are several upmarket hotel options:

Up the coast is the sleek Capase Resort which has a fantastic infinity pool.

Transfer time: Transfer time: 1 hour 15 minutes from Brindisi Airport.

Otranto

Otranto waterfront.

On the eastermost tip of Puglia is the popular resort town of Otranto, a Puglian gem and one of the nicest coastal towns in Italy.

This harbour town is loaded with atmosphere and surrounded by excellent beaches and seascapes. It has been an important port since Roman times. Landmarks include its pentagonal castle, a Romanesque cathedral, and the pale streets of its stone old town and bastion.

Otranto is also a short distance from Lecce so ideal if you’re after a combination of beach and culture.

Otranto beach.

There is a town beach as well as the stunning white sand beaches north at Baia di Turchi and Torre dell’Orso. And don’t miss a visit to the famous swimming hole Grotta di Poeti.

For location, Palazzo De Mori is a charming guesthouse inside the old town. For space, look at 4-stars Vittoria Resort & Spa and Relais Valle dell Idro in the new town.

And for facilities, the rural Masseria Mongio dell’Elefante has a pathway that leads to the Baia di Turchi beach.

The lovely Masseria Muntibianchi Agriresort is just 4km outside Otranto. And on the coast to the north is the Posia Luxury Retreat & Spa which has a reservable rooftop infinity pool. 

Transfer time: 1 hour 10 minutes from Brindisi Airport.

Lecce

Baroque architecture in Lecce.

The beautiful city of Lecce is known as ‘the Florence of the South’ for its abundance of medieval architecture. In soft light the page golden sandstone which seems to glow golden in the sun. Tourism here hasn’t yet reached the level of its northern namesake, so for now it has an unspoiled and laid-back feel. Lecce is a university city and you can expect plenty of cafes and wine bars.

Landmarks include the Roman amphitheatre, Lecce Cathedral, and city’s many ornate church facades. 

It’s not by the coast but it’s only a short drive away. Lecce is popular base for exploring the peninsula as the location is relatively central and many road routes go via Lecce anyway.

There are many charming historic places to stay, including glam neutrals at the 5-star mansion Patria Palace Lecce, and the 4-star Dimora Storica Torre Del Parco 1419 which occupies a central medieval fortress.

Looking for something more modern? Boutique Palazzo de Noha has a central location and small pool. Mantatelure has calming decor and thoughtful touches.

Just outside town, the Masseria & Spa LuciaGiovanni has a large pool, spa and Moroccan theme.

Transfer time: 40 minutes from Brindisi Airport.

Brindisi

Brindisi waterfront.

The port city of Brindisi is one of those places often used purely as gateway – most visitors don’t stick around. But it’s prettier than you might expect (despite suffering heavy bomb damage in WWII), with a charming compact old quarter, a fortress, and palm-lined streets.

It makes a good day trip, but if you’re exploring Puglia by public transport then it’s not a bad base either. Most of the hotels cater to business travel and those using the ferries – top pick is the Grande Albergo Internazionale which has a central seafront location and 24 hour reception.

Regular buses run between Brindisi and its small airport.

There are some fantastic sandy beaches north of Brindisi such as Torre Guaceto and the Dune Costiera Natural Park.

Transfer time: 15 minutes from Brindisi Airport.

Ostuni

Stunning medieval Ostuni is known as The White City for its whitewashed spendour that’s popular with international tourists. One of the most enchanting sights in Puglia is Ostuni’s chalky buildings rising up above the surrounding olive groves, illuminated by the golden hour.

As with Lecce, it’s not coastal but it’s only a 15 minute drive to the fishing village of Marina di Ostuni for sea air and swimming. The coast around here is very rocky.

The 5-star Paragon 700 Boutique Hotel & Spa has everything you could want – central location, 18th-century building, frescoed ceiling, classy bar, and landscaped pool and gardens.

And the 5-star Hotel Relais La Sommita has Michelin-starred dining and a spa.

Transfer time: 40 minutes from Brindisi Airport.

Savelletri, Torre Canne, and Fasano

Torre Canne is a beach resort on the coast between Brindisi and Monopoli. It has an old harbour and sandy town beach, and is located at the end of a long stretch of beach near the Dune Costiera Natural Park. It has campsites and summer facilities.

The beachfront Canne Bianche Lifestyle & Hotel is a good pick for sunseekers.

A short drive up the coast is Savelletri, a small traditional fishing village a short drive from Fasano, an upmarket inland town in the heart of an agricultural area. This is masseria country and the area boasts a generous handful of luxury hotels such as the Masseria Torre Coccaro and Borgo Egnazia.

Transfer time: 40 minutes from Brindisi Airport.

Monopoli

Monopoli waterfront.

Monopoli is a handsome fortified harbour town on the north coast, known for its fleet of photogenic blue fishing boats, street markets, and white-gold buildings. The shore is rocky with many small sandy beaches to discover.

It has a lively buzz and many visitors pop in for the day to lunch at one of the excellent seafood restaurants.

Accommodation is clustered in the old town where you’ll find plenty of sleek airy suites in dreamy hotels guesthouses:

Outside town, Playa del Mar is by the sea and has a youthful all-white design. And Dimora Pirella has a small spa.

For space and vibes, 5-star La Peschiera offer cool neutrals and Balearic beach lux a short drive from Monopoli. And the Borgobianco is a an luxurious 5-star masseria with lush pools.

Transfer time: 50 minutes from both Bari and Brindisi airports.

Polignano a Mare

Clifftop seafront buildings in Polignano a Mare.

The photogenic citadel town of Polignano a Mare is one of Puglia’s coastal draws. It’s known for its dramatic position atop limestone cliffs, bright teal waters, and an increasingly famous small pebble cove. The streets of its old quarter are dotted with arts and crafts shops.

The beach (Calo Poro) has become a crazily popular photo spot and gets very busy during the Italian summer break.

There are lots of smart hotels and guesthouses in Polignano a Mare but prices are at a premium for the area, especially if you want to take advantage of wonderful sea views.

Luxury 5-star Grotta Palazzese is a standout, and they have a beach outpost north of town too – Grotta Palazzese Beach Hotel has a private beach and is the best beach hotel in Puglia.

Boutique rooms include:

The Calapone Hotel is a short distance out in the country and has a sleek design and pool.

Transfer time: 50 minutes from Bari Airport.

Bari

Bari from the air.

As with Brindisi, many visitors land at Bari airport and bypass the port city completely. But it’s worth stopping by this regional capital for a day or even a weekend break.

Bari is a major port and cruise ship hub. But it also has a charming old town area, a Norman castle, bustling piazza, a waterfront promenade, good shopping, and some fantastic food. Compared to the honeypot villages it doesn’t feel too touristy and you can taste a slice of city life on a street food tour or pasta-making class.

Beach-lovers are better served in other parts of Puglia, especially if you favour sand, but there are lido beaches just outside town. They are expensive and busy in high season.

The airport is 11km out of town. Trains, public buses, and shuttle buses are available.

The larger hotels are functional. Try the stylish conversion Palazzo Calo or look on Booking.com for studios.

Transfer time: 30 minutes from Bari Airport.

North of Bari

Fishing boats in Trani.
Trani

The coastline north of Bari is home to a strong of picturesque harbour towns and cities. This section of coast is less visited than the Salento Peninsula and it isn’t as crowded or touristy as Monopoli and Polignano a Mare. But it still has a vibrant atmosphere in the summer months – ideal if you’re looking for a small town feel but not too quiet.

They tend to have fortified seafronts and pale rose-gold buildings, as well as a few small beaches if you’re prepared to go looking.

  • Giovinazzo
  • Molfetta
  • Bisceglie
  • Trani

For waterfront accommodation check out the St Martin Hotel in Giovinazzo or the Mare Resort in Trani.

Transfer time: 30 minutes from Bari Airport.

Gargano National Park

Clifftop seafront buildings in Vieste.
Vieste

The Gargano Peninsula is the ‘spur’ of Italy’s boot.  It’s a national park and home to some of the most stunning coastal scenery in Italy.

The landscape here is more rugged and mountainous, with a lush greenness and dazzling cliffs that resemble those across the sea in Corfu. Somehow, it’s not that well-known amongst international visitors.

Beaches are either sandy or pebbly but scenic – standouts include Matinatella, Vignanotica, Manaccora, Pergola, Varcaro, and Zagare (pictured below).

Zagare beach from above.

If you want to visit Zagare beach then it helps to stay at one of the two hotels located there – Baia delle Zagare Hotel and the Baia dei Faraglioni Hotel – otherwise limited tickets are available.

The main towns to stay in are Vieste, Rodi Garganico, and Peschici. Accommodation is mostly small and traditional.

Transfer time:

  • Manfredonia is 1 hour 45 minutes from Bari Airport.
  • Vieste is 2 hours 30 minutes from Bari Airport.

Tremiti Islands

Tremini islands seascape.

Another off-the-beaten-track destination is the small Tremiti archipelago which is also part of the Gargano National Park.

There are 5 islands in the group, although 3 are uninhabited, and they’re approximately 12km offshore.

The Tremiti islands have a dark history as being a place of confinement. Today, San Domino is a tourist destination (it has the best beach) and San Nicola is the main island and cultural heart of the archipelago.

The islands are very quiet and very beautiful. You can catch a boat to the islands from the main resorts in the Gargano.

4-star Hotel Kyrie is one of the few hotels with a pool and also has access to a private cove.

Read more:

Where to Stay in Sicily: Ultimate Beach Resort Guide

Where to Stay in Sardinia: Ultimate Beach Resort Guide

10 Best Beaches in Europe With Dazzling Turquoise Water

Where to Stay in Italy: Ultimate Beach Resort Guide

Enjoyed this post? Follow us on Facebook or Twitter.

Click to save to Pinterest:

Image credits:

Costa Otranto marine park: © jsk12 / Adobe Stock

Puglia resort map:  © The Mediterranean Traveller

Ionian coast: © EnricoPescantini / Adobe Stock

Porto Cesareo: © BrunoBarillari / Adobe Stock

Gallipoli: © kite_rin/ Adobe Stock

Pescoluse: © Balate Dorin / Shutterstock

Castro: © e55evu/ Adobe Stock

Santa Cesarea Terme: © dante1969/ Adobe Stock

Otranto: © arkanto/ Adobe Stock

Otranto beach: © jsk12/ Adobe Stock

Lecce: © luigi/ Adobe Stock

Brindisi: © eunikas/ Adobe Stock

Monopoli: © Mi.Ti. / Shutterstock

Polignano a Mare: © Marco Saracco

Bari: © MZaitsev / Adobe Stock

Trani: © Mi.Ti. / Adobe Stock

Vieste: © StevanZZ/ Shutterstock

Zagare: © kite_rin / Adobe Stock

Tremiti: © vololibero/ Adobe Stock