EDSA southbound starts to thin around the Magallanes flyover. By the time the SLEx tollgate is behind you, the office towers have given way to billboards, then to the long flat stretches of Cavite, then the first proper hill that says you’re nearly out. Somewhere past the Tagaytay turnoff, the air changes. The temperature drops by two or three degrees and the windows go down. Half an hour after that, on the right side of the bus or your rented Mitsubishi, the South China Sea appears.
In This Article
- The Manila Bay Question
- Beaches Within Two Hours of EDSA
- Anvaya Cove (Bataan)
- Hamilo Coast and Pico de Loro (Nasugbu)
- Punta Fuego and Terrazas de Punta Fuego (Nasugbu)
- Calatagan and Burot Beach
- Nasugbu and Anya Resort area
- Anilao (Mabini, Batangas)
- Subic Bay (Zambales)
- Caylabne Bay (Ternate, Cavite)
- Punta Verde (Calatagan)
- Beaches Within Four Hours or Worth an Overnight
- La Union for Surfing
- Zambales Coast (Anawangin, Capones, Crystal)
- Bataan (Las Casas, Montemar)
- What to Bring
- When to Go
- Where Manila Beaches Stop and the Islands Start
- Frequently Asked Questions
- Can you swim at Manila Bay?
- What is the closest white sand beach to Manila?
- Can you do a beach day trip from Manila by public transport?
- How much does a beach day trip from Manila cost?
- Are there any beaches you can swim at within an hour of Manila?
- Is it safe to swim at the beaches in Batangas and Cavite?
- Where do Manileños actually go for the beach?
That’s the moment Manila beach trips actually start. Not at the resort gate. Not at the parking lot of the day-pass place. The moment the coast appears.
This guide is the thing I wish I’d had on my first weekend after moving here. I keep getting the same question from friends visiting town: where can you actually swim near Manila? The answer needs more nuance than most people want, but here it is, with the prices, the drive times, the names of the resorts, and a real call on which ones are worth the petrol money.
I earn a small commission on some of the booking links here. It covers the hosting bill, that’s it.
The Manila Bay Question

Let me kill this myth fast. The Manila Bay baywalk along Roxas Boulevard has a long stretch of imported white dolomite sand that the government laid down in 2020. It looks like a beach. Tourists photograph it. People sit on it at sunset and the silhouette of the boats and the burning orange sky is genuinely one of the great urban sunset views in Asia.
You cannot swim in it. The water is heavily polluted, fenced off in most stretches, and even the dolomite section is essentially a viewing terrace, not a beach. The Department of Environment and Natural Resources has run sporadic clean-up campaigns and bay water quality has improved on paper, but no Filipino I know would actually get in. Treat the baywalk as a sunset destination, walk the promenade from the US Embassy area down to the Mall of Asia, get a halo-halo at one of the stalls, and accept that the swimming part of your trip is happening somewhere else.
For the actual swimming, you’ve got two budgets. Two hours from EDSA gets you a day at a real beach. Four to six hours, and you’re at the better ones. Anything beyond that is a flight, and we’ll get to those at the end.
I cover the practicalities of escaping the city in my day trips from Manila guide, but the beach-specific picks below are what you came here for.
Beaches Within Two Hours of EDSA

This is the realistic day-trip range. Leave Makati at 5am, you’re swimming by 8am. Drive home Sunday night before 6pm or you’ll be stuck on the SLEx for hours. The Cavite-Batangas coast is where most of these sit, and the shorthand pattern is: Nasugbu and Calatagan for sand, Anilao for snorkelling, Subic for variety, Bataan if you’re willing to pay for the gated stuff.
Anvaya Cove (Bataan)

Distance from Manila CBD: ~135 km, around 2.5 to 3 hours via NLEX-SCTEX-Subic Freeport-Bataan.
Transport: Private car is the only sensible way. Public bus from Pasay (Genesis Transport to Mariveles or Bagac, ~₱400) plus a tricycle from Morong, but the resort itself is a members-only beach club so you need a guest invitation. Day-trip Grab from Manila will run you ₱4,500 to ₱6,000 (~$80-110) one way.
Swim quality: Calm, deep enough to actually swim, sheltered by the Bataan peninsula. The sand is golden-grey, not the powder white people imagine when they hear “tropical Asia.” Coral patches offshore.
Day-pass price: Members and guests of members only. There’s no walk-in day pass. If you don’t know an Anvaya member, this one isn’t for you. Stay overnight via the Anvaya Cove Beach & Nature Club room rates if you can get an introduction (₱8,500 and up, ~$150). Otherwise, look at neighbouring properties along the Bataan coast.
My take: Lovely, well-managed, totally inaccessible to the general public. I include it because people search for it. If you can get the invite, do it. If you can’t, scroll on.
Hamilo Coast and Pico de Loro (Nasugbu)
Distance from Manila CBD: ~96 km, 2 to 2.5 hours via SLEx-Tagaytay-Nasugbu.
Transport: Private car or Grab (₱3,500 to ₱4,500, ~$65-80 one way) is easiest. Public bus to Nasugbu town (Ceres or DLTB from Pasay or Buendia, ₱200-250) then a tricycle or shuttle to the resort gate. The Pico Sands Hotel runs a paid shuttle from a Manila pickup point on weekends; check before you go.
Swim quality: Hamilo Coast is a cluster of cove beaches (Pico de Loro, Etayo, Santelmo) inside a SM-developed enclave. The water is calm, blue-green, and noticeably cleaner than Calatagan because the development has actively protected the marine area. Sand is fine, light grey, not the postcard white of Boracay but pleasant underfoot. Snorkelling is decent off Santelmo Cove.
Day-pass price: Pico Sands Hotel day-use rates run ₱2,500 to ₱3,500 (~$45-65) per person on weekends, including pool and beach access. Beachclub-only day passes appear and disappear seasonally.
Accommodation: Pico Sands Hotel rooms from ₱8,000 (~$140) on weekends. Pico de Loro Beach & Country Club for members. Casa Pico is the more residential, condo-rental option.
The verdict: The closest “real resort experience” to Manila. Manicured, predictable, expensive. It feels like a managed gated community because that’s what it is. Good for one night with kids when you don’t want to deal with the chaos of Calatagan.
Punta Fuego and Terrazas de Punta Fuego (Nasugbu)
Distance from Manila CBD: ~110 km, 2.5 hours via SLEx-Tagaytay-Nasugbu.
Transport: Private car. Members-only club, no public bus route ends at the gate.
Swim quality: Cove sand is medium-fine, light golden. The bay sits at the tip of the Calatagan peninsula and the water is genuinely clear. The clubhouse end has a long deep pool that gets more use than the actual sea on hot days.
Day-pass price: Members and member-guests only. Day-rates for invited guests are around ₱2,500 (~$45). The club does not advertise.
Accommodation: The villas are private rentals through Airbnb-style listings; expect ₱25,000 to ₱60,000 (~$450-1,100) for a 4-bedroom for a weekend, often shared between two families.
The verdict: Punta Fuego is the answer when “I want to drive less than three hours and stay somewhere that feels like Phuket” is the brief. You need to know someone, or you need to rent a villa, or it isn’t happening.
Calatagan and Burot Beach

Distance from Manila CBD: ~120 km, 2.5 to 3 hours via SLEx-Calabarzon to Calatagan town.
Transport: Private car, or DLTB bus to Calatagan terminal (₱220 from Buendia or Cubao, around 3 hours) then jeepney or tricycle to Burot Beach (₱150-200). The road from Calatagan town to the beach is unsealed in places; budget extra time.
Swim quality: Burot Beach has a long stretch of semi-fine cream sand and shallow water that stays waist-deep for a hundred metres out. The reef offshore makes for reasonable snorkelling at low tide. Stilts Calatagan and Acuatico Beach Resort are the prettier paid options nearby. The sand at Acuatico is whiter and the resort has the over-water bungalow look made for Instagram.
Day-pass price: Burot Beach: entrance fee ₱100 per person, cottage rentals from ₱500 to ₱1,500 depending on size. Stilts Calatagan day-use ₱1,500 to ₱2,500 (~$27-45) including pool. Acuatico Beach Resort day-pass around ₱2,500 (~$45) with food credit.
Accommodation: Burot allows tent camping (₱100 per tent overnight), with a few simple beachfront cottages. Stilts Calatagan rooms from ₱5,500 (~$100). Acuatico from ₱8,000 (~$145).
The verdict: Calatagan is the most varied of the close-to-Manila options, with a budget tent option (Burot) and resort options at the top end. Don’t go on a long weekend without a reservation. The local government has tightened crowd management at Burot since 2018, but Holy Week is still chaos.
Nasugbu and Anya Resort area
Distance from Manila CBD: ~95 km, 2 to 2.5 hours.
Transport: Private car. DLTB or Ceres buses to Nasugbu (₱200) then tricycle to your specific resort. Door-to-door public transport is doable but expect 4 hours including waits.
Swim quality: Nasugbu’s beaches (Calayo, Wawa, Munting Buhangin) are grey-sand, calm, fine for swimming. Munting Buhangin gets the best reviews of the public beaches. The Anya Resort sits up in Tagaytay proper, not on the coast, so combining Tagaytay overnight with a Nasugbu day-trip works well.
Day-pass price: Munting Buhangin entrance ₱100 per adult, cottages ₱500 to ₱1,500. Resort day-passes at smaller properties along the coast run ₱500 to ₱1,200.
Accommodation: Munting Buhangin overnight cottages from ₱1,800 (~$32) for a basic four-pax setup. Look at Canyon Cove Beach Resort (₱5,000 and up, ~$90) for a slightly more polished mid-range option in Nasugbu.
My take: Nasugbu is where Manileños actually go on a normal weekend when Tagaytay is too crowded and Boracay is too expensive. It’s not pretty in the postcard sense. The sand is grey because half the Batangas coast is volcanic. But you’ll swim, you’ll eat fresh seafood at a beachside grill, and you’ll be home Sunday evening.
Anilao (Mabini, Batangas)

Distance from Manila CBD: ~140 km, 2.5 to 3 hours via SLEx-STAR Tollway to Mabini.
Transport: Private car (the easiest), or DLTB bus from Buendia to Batangas Port (₱200), then jeepney or tricycle to Mabini-Anilao (₱150 plus). Total bus journey: 4 to 5 hours.
Swim quality: Sand is stony in places and the beach itself is unremarkable, but Anilao’s reputation is built on what’s underwater. The reefs of Maricaban Strait have over a thousand species of fish and the macro photography here ranks among the best in the world. Sombrero Island, Sepoc Beach, and the Twin Rocks reef are the day-boat targets.
Day-pass price: Most resorts here are dive-focused. Day-use without diving runs ₱500 to ₱1,500. Add a single boat dive at ₱1,800 to ₱2,500 (~$32-45) plus equipment rental. Snorkel rental at most resort piers is ₱200 to ₱400 for the day.
Accommodation: Acuatico Beach Resort, Eagle Point, Camp Netanya, Aiyanar Beach & Dive Resort. Rooms from ₱4,500 to ₱9,000 (~$80-160).
The verdict: If you’re chasing white sand and beach loungers, Anilao is genuinely bad. If you snorkel or dive, Anilao is the most accessible serious dive destination in the Philippines and the only one you can do as a one-night Manila trip.
Subic Bay (Zambales)

Distance from Manila CBD: ~120 km, 2 to 2.5 hours via NLEX-SCTEX direct to the Subic Freeport.
Transport: Private car (best), or Victory Liner bus from Pasay or Cubao to Olongapo (₱250-300, ~3 hours) then jeepney into the Freeport zone. Direct Manila-to-Subic shuttles run from BGC and Makati on weekends, ₱500 to ₱700 per seat.
Swim quality: The Subic Bay beaches inside the Freeport (All Hands Beach, Camayan Beach) are managed, charge an entrance fee, and have decent grey-cream sand and calm water. Real beach quality is at the Zambales side past Olongapo: Anawangin Cove (boat from Pundaquit), Crystal Beach in San Narciso, Capones Island.
Day-pass price: Camayan Beach ₱300 weekend entrance plus parking. All Hands Beach similar. Anawangin Cove boat from Pundaquit ₱1,500 to ₱2,000 split among the group, plus environmental fee ₱100 each.
Accommodation: Subic Bay Yacht Club for the corporate-style stay. Vista Marina Hotel for budget. Crystal Beach Resort in San Narciso for the actual beach. Rooms from ₱2,500 (~$45) at Crystal Beach to ₱8,500 (~$155) at the Yacht Club.
My take: Subic isn’t really one place. The Freeport is duty-free shopping, family-friendly attractions, and the cleanest infrastructure of any beach within 3 hours. Real beaches start past the Olongapo gate. The Zambales coast is where I’d go for the actual swimming. The Freeport is where I’d take in-laws who don’t want to be too far from a hospital.
Caylabne Bay (Ternate, Cavite)
Distance from Manila CBD: ~80 km, 2 to 2.5 hours via Cavitex-Ternate.
Transport: Private car only. The road from Ternate town down to the bay is windy and not on any public bus route.
Swim quality: Caylabne sits inside a horseshoe bay that stays calm even in monsoon. Water is greenish-blue, sand is brown-grey, and the bay is small enough that you can swim across it in a relaxed half hour. Decent snorkelling on the rocks at the south end.
Day-pass price: Caylabne Bay Resort day-use ₱1,800 to ₱2,500 (~$32-45) on weekends, including pool, beach, and lunch credit. Cheaper midweek.
Accommodation: Caylabne Bay Resort rooms from ₱5,500 (~$100). The resort is the only show in town here. Boracay de Cavite Beach in nearby Ternate is a different, smaller property worth checking if Caylabne is full.
The verdict: Caylabne is the closest “calm cove” beach to Manila and the easiest 24-hour escape if you don’t want to leave Friday afternoon. Quiet, modest, not exciting, but it does the job.
Punta Verde (Calatagan)
Distance from Manila CBD: ~115 km, 2.5 hours.
Transport: Private car. Public transport works to Calatagan town (DLTB bus, ₱220) but the resort is 6 km out on a side road.
Swim quality: Punta Verde has white-leaning cream sand (whiter than most of Calatagan’s public beaches) and a calm, deep-water shore. Genuinely good swimming. Coral immediately offshore is decent for a casual snorkel.
Day-pass price: Day-use ₱1,500 to ₱2,000 (~$27-36) including pool, beach, and a basic lunch package. Booking ahead is wise on weekends.
Accommodation: Cottages and rooms from ₱4,000 (~$70). Family-run, modest, no pretensions to luxury.
My take: Punta Verde is the workhorse middle-bracket Calatagan option. Less polished than Stilts, less cheap than Burot, more reliably booked-out than either. If your group includes a swimmer who actually wants to do laps, this is one of the few close-to-Manila beaches that allows it without coral underfoot.
Beaches Within Four Hours or Worth an Overnight
Once you’re willing to do an overnight, the choice expands. La Union for surf, Zambales for the wilder beaches, and a handful of Bataan options that aren’t gated.
La Union for Surfing

Distance from Manila CBD: ~270 km, 4 to 5 hours via NLEX-SCTEX-TPLEx, with the new expressway extension shaving an hour off the old route.
Transport: Private car is fastest. Partas or Dominion bus from Cubao or Pasay to San Fernando La Union (₱600-800, 5-6 hours), then tricycle to San Juan (₱150).
Surf quality: San Juan beach is the surf capital of the northern Philippines. Peak swell August through November (the same Pacific season that brings typhoons, so check before you go). December to February has smaller, more beginner-friendly waves. March to July is mostly flat. Boards rent for ₱200 to ₱400 per hour. Lessons are ₱400 to ₱600 per hour with an instructor.
Sand and swim: The sand is volcanic-dark, almost grey. Don’t come for the swimming. Come for the waves, the surf-town atmosphere, the cheap mango shakes, and the cluster of hostels on the road behind the beach.
Accommodation: Surf hostels from ₱600 to ₱1,200 per bed (~$11-22). Mid-range like Kahuna Beach Resort or San Juan Surf Resort from ₱4,500 (~$80). The 2018-onwards condo developments at Aureo and others have changed the vibe; some welcome it, some don’t.
The verdict: La Union isn’t really a beach trip. It’s a surf trip with beach as the venue. If you’re going to learn to surf, this is where you do it in the Philippines without flying.
Zambales Coast (Anawangin, Capones, Crystal)

Distance from Manila CBD: ~180 km to Pundaquit (jumping-off for Anawangin), 4 hours.
Transport: Private car to Pundaquit, then outrigger boat to Anawangin or Capones Island. Public option: bus to San Antonio, Zambales then tricycle to Pundaquit.
Beach quality: Anawangin Cove has cream-grey volcanic sand backed by an unusual cluster of agoho pine trees that look out of place in the tropics. Capones Island has the better swimming and the lighthouse hike. Crystal Beach in San Narciso is the resort-and-camping middle ground. Nagsasa Cove (the next bay over from Anawangin) is quieter and quieter still on weekdays.
Costs: Boat from Pundaquit to Anawangin ₱2,000 round trip, splittable up to 6 people. Anawangin entrance ₱100, camping ₱200 per tent. Capones Island day boat ₱2,500 round trip. Crystal Beach Resort day-pass ₱500.
My take: Zambales is camping-style, not resort-style. Bring a tent, bring water, bring a cooler. The reward is a cove with no infrastructure other than a few sari-sari stalls and the kind of stars you don’t see in Manila.
Bataan (Las Casas, Montemar)
Distance from Manila CBD: ~150 km, 3 to 4 hours via NLEX-SCTEX-Subic-Bataan provincial road.
Transport: Private car. Bus to Bagac is doable but the resort transfers from Bagac town are inconvenient.
What’s there: Las Casas Filipinas de Acuzar is a heritage resort built around relocated 18th and 19th century Filipino-Spanish houses. The beach itself (Bagac Bay) is grey-volcanic and unremarkable, but the resort is the destination. Montemar Beach Club is the more traditional resort option down the coast at Morong.
Costs: Las Casas day-tour with heritage walk ₱1,800 (~$32). Overnight from ₱11,000 (~$200) on weekends. Montemar day-use ₱2,500.
The verdict: Bataan as a beach destination is mediocre. Bataan as a heritage destination with a beach is genuinely interesting. Pair it with the World War II sites at Mariveles and the Bataan Death March monument for a one-night history-and-coast trip that the average Manila visitor never does.
What to Bring
The packing list for a Manila beach day-trip is shorter than people think.
Reef-safe sunscreen because Anilao and Hamilo enforce it now and you’ll be turned away from some snorkel sites without it. A rash guard if you burn easily; the Batangas sun is genuinely brutal between 11am and 3pm. Cash for the entrance fees, the cottage rental, the boat hire, the sari-sari water runs. ATMs at most of these places are unreliable. A dry bag if you’re doing any boat transfer; the outriggers take spray. Flip-flops you don’t mind losing on a rocky shore. A water shoe for Anilao and the rocky stretches of Calatagan. A hat. Bug spray for the late-afternoon Subic mosquitoes.
What you don’t need: fancy beach attire, a parasol, a snorkel set if you’re going to a real dive resort (they rent better gear). The Manila beach trip is informal. Nobody is judging your swimwear at Burot.
When to Go

The Philippines runs on two seasons that the tourist boards call “dry” and “wet” but which any Manileño will tell you are “less rain” and “more rain.” For beaches close to Manila:
November to April is dry season and peak time. Calm seas, clear days, predictable conditions. The downside is crowds, especially the Holy Week period (Maundy Thursday, Good Friday, Black Saturday, Easter Sunday) when the entire NCR empties out toward Batangas and prices double. Avoid Holy Week unless you’ve booked four months out and are ready for traffic that puts EDSA at 5pm to shame.
May to October is wet season. Mornings are usually clear, afternoons can pour, swells can pick up. The advantage is empty resorts and rates that drop 20 to 40 percent. La Union actually peaks in this window for surf. Anilao stays diveable year-round but visibility drops July to September.
December is the sweet spot. Cooler air, dry skies, manageable crowds outside the December 24-January 2 window. If I had to pick one weekend a year, I’d pick the second weekend of December.
Avoid the typhoon track windows: a named storm anywhere in the Sea of Japan or the Bicol region can make the Batangas coast choppy three days later, and Subic in particular gets hit. Check PAGASA before you go.
For a deeper national-scale breakdown, my best time to visit the Philippines guide has the regional patterns; for itinerary planning around a beach day, my Manila 3-day itinerary covers how to fit it in alongside the city.
Where Manila Beaches Stop and the Islands Start

Here’s the part nobody at the resort sales counter will tell you. The beaches near Manila are pleasant. They are not the beaches you saw on the cover of the Lonely Planet. The famous Philippine beaches, the ones with the impossibly white sand and the postcard limestone karsts, are not within driving distance of EDSA. They are flights.
The two flights that matter for a Manila beach upgrade:
Boracay is a 1-hour flight to Caticlan, a 15-minute boat hop, and a tricycle ride to White Beach. Door to door from Manila is 4 to 6 hours, comparable to driving to La Union. The sand is genuinely powder-fine and white. The water clarity is what you came to the Philippines for. Stations 1 and 2 are where you swim. November to April is the calm windward window. I’ve covered the practicalities in my Boracay travel guide and the best Boracay hotels piece.

El Nido is a 1.5-hour flight to Puerto Princesa plus a 5-hour van north, or a more expensive direct flight to El Nido’s Lio Airport on AirSWIFT. The Bacuit Bay lagoons (Big Lagoon, Small Lagoon, Secret Lagoon) are the Philippine images that go viral on Instagram. The town beach itself is mediocre; you go for the boat tours. December to May is the dry window. My El Nido travel guide has the tour breakdowns.
If your time is limited and you’re choosing between Calatagan and a flight to Boracay or El Nido, fly. Genuinely. The Calatagan day-trip is what you do when you can’t get away for a long weekend. The flight version is what you actually came to the Philippines for.
For the Manila practicalities around beach trips, the Manila resorts piece covers the few in-city options and the day-trip resort upgrades, and things to do in Manila has plenty of city alternatives if the weather kills your beach plans. Where to stay in Manila covers the night before and after.
Frequently Asked Questions
Can you swim at Manila Bay?
No. The Manila Bay water along the Roxas Boulevard baywalk and the dolomite “beach” is heavily polluted and not safe to swim in. The bay is for sunset views, not swimming. The closest actual swim from Manila is roughly 80 km away at Caylabne Bay or Hamilo Coast.
What is the closest white sand beach to Manila?
Genuinely white sand starts at Calatagan (Acuatico Beach Resort, Stilts Calatagan, Punta Verde) at around 120 km from Manila, 2.5 to 3 hours by car. Hamilo Coast and Caylabne are closer (95 to 100 km) but their sand is more cream-grey than white. For tropical postcard white sand, you need to fly to Boracay or El Nido.
Can you do a beach day trip from Manila by public transport?
Yes, to a few. Calatagan (DLTB bus to Calatagan town, then jeepney to Burot Beach), Nasugbu (DLTB or Ceres bus to Nasugbu, then tricycle), and Subic Freeport (Victory Liner to Olongapo, then jeepney) are the most realistic public-transport options. Allow 4 to 5 hours each way and pack lighter than you would in a car. Hamilo Coast, Anvaya Cove, Punta Fuego, and Caylabne don’t have practical public transport routes to the resort gate.
How much does a beach day trip from Manila cost?
Budget option (Burot Beach with public bus): around ₱1,500 (~$27) per person including transport, entrance, and lunch from the cottage canteen. Mid-range (Hamilo or Stilts Calatagan day-pass with car): ₱4,500 to ₱7,000 (~$80-130) per person including fuel, day-pass, and lunch. High-end (Pico Sands or Las Casas overnight with car): ₱12,000 to ₱20,000 (~$220-360) per person for one night.
Are there any beaches you can swim at within an hour of Manila?
Not really. Caylabne Bay (Ternate, Cavite) at 80 km is the closest swimmable beach but still takes 2 to 2.5 hours in real Manila traffic. Inside the 1-hour radius, the only “beaches” are the dolomite section of the Manila baywalk (not swimmable) and a few small public beaches in Cavite (Naic, Tanza) that are murky and not worth the trip.
Is it safe to swim at the beaches in Batangas and Cavite?
Generally yes. The main beaches at Calatagan, Nasugbu, Hamilo, Caylabne, and Anilao have calm, swimmable water on most days from November to April. Currents at the Calatagan headlands and the seasonal swell on the open Nasugbu coast can catch beginners; swim where the locals swim, not at the rocky points. Avoid the bay water near any river mouth after heavy rain.
Where do Manileños actually go for the beach?
The real answer: Nasugbu and Calatagan for normal weekends, Anilao for divers, La Union for surfers, Subic for family trips with kids, and a flight to Boracay or El Nido for actual vacations. The Bataan and Hamilo Coast options are a smaller scene of members and corporate offsites. Almost nobody from Manila goes to “Manila Bay” expecting to swim.


