Nestled between St. Thomas and the British Virgin Islands is St. John, the snorkeling jewel of the Caribbean. With shallow and protected waters along its nine-mile-long coast, this tiny island is a paradise of beaches and marine life. Its unspoiled natural beauty is unparalleled (Virgin Islands National Park covers almost sixty percent of the island), making it the perfect place to catch a glimpse of the majestic turtles, rays, and tropical fish. And as the smallest of the US Virgin Islands, it’s not unusual to spend a day snorkeling at multiple beaches, whether you’re a day tourist from St. Thomas or based on St. John.
St. John’s laid-back vibe is distinct from St. Thomas’s luxury resorts, high-end shopping, and happening nightlife. The Westin St. John Resort Villas offers spacious rooms with a view and a private beach. But the best way to disconnect from daily life, feel like a local, and connect to the island may be by renting a no-frills cottage directly on the beach at the Cinnamon Bay Campground. For snorkeling options beyond our shoreline picks, charter a private tour and be sure to request a stop at the exclusive Lovango Resort and Beach Club on their private island just off the coast.
With almost every beach featuring coral reefs and calm water, which ones are not to be missed? We share the very best spots from an insider, in precisely the order you’ll experience out Cruz Bay and going clockwise around the island from the North Shore to East End to South Shore. Grab your flippers and hit North Shore Road with our top picks for St. John’s best snorkeling spots.
North Shore Beaches

Honeymoon Beach
With crystal clear waters and the softest white sand beach, Honeymoon is aptly named. This is the only beach to rent cabanas (plus the bonus private drink service, thanks to the Caneel Bay Beach Club). Look for sea turtles and rays on the western side of the beach by the reef that separates Honeymoon from another favorite snorkel spot, Salomon Beach. More experienced snorkelers swim between these two beaches to expand their underwater terrain. Use the Caneel Bay Beach Club’s shuttle service or hike in via the Lind Point Trail.

Hawksnest Beach
When other north shore beach parking lots are full, head to Hawksnest’s less crowded shores. The parking lot is about a mile past the [closed] Caneel Bay Resort. Hawksnest has picnic tables, pavilions, and plenty of shade. Use caution when snorkeling along the shallow reefs and mind the waves and currents here, as these waters aren’t as sheltered as other beaches. You’ll see plenty of fish, but skip this beach if coral is what you’re after. Be sure to hit up Beach Bum in Cruz Bay for snorkel gear before heading out.

Gibney & Oppenheimer Beaches
Gibney and Oppenheiimer beaches are perfect for a morning snorkel before hitting another reef. Get there early in the morning to snag one of the few parking spots and look for the white picket fence that marks the access point to follow the path down to the water. Gibney Beach is public, but the surrounding land is private and belongs to the Gibney family, so be sure not to wander. The best snorkeling is along the eastern side of these beaches, in front of Oppenheimer. A stay in the beach villa at the Gibney Beach Cottages might just be one of your favorite vacation rentals.

Trunk Bay
St. John’s most famous beach, Trunk Bay, lives up to the hype. A small access fee makes this beach family-friendly with concessions, restrooms, and a lifeguard on duty. While there are better snorkeling spots on the island, the underwater snorkeling trail maintained by Virgin Islands National Park is a great place to see favorites like puffer fish and parrot fish. Snorkelers follow the trail plaques along the sandy bottom to learn about the region’s tropical sea life. For a less crowded beach and more adventurous snorkeling, snag one of the few parking spots at nearby Jumbie Beach.

Cinnamon Bay
With over half a mile of white sand beach, Cinnamon Bay Beach is not only the longest beach but the most beautiful. If you can only visit one beach, this is your beach. Westin Concessions, restrooms, watersports rentals, and groceries for the nearby campers are onsite. Take the half-mile walk through the sugar mill ruins to glimpse a piece of St. John’s Danish colonialism history. Snorkel along the coral shelf at the bay’s eastern end, or all the way out to the cay in the middle of the bay. But leave circumnavigating the cay to advanced swimmers—strong currents make circling the exposed side a challenge.

Maho Bay
Without question, Maho Bay Beach is the best St. John snorkeling spot for green sea turtles and southern stingrays. And for first-timers. Only a mile from Cinnamon, Maho’s vibe is popular and loud. Especially when it comes to parking. A visit to Maho early or late in the day avoids the SUP and Kayak crowd. For a quieter beach, go a little farther down the road to Francis Bay. Top off a day of sun with a bushwacker or painkiller at Rum Hut in Cruz Bay, stay for their innovative dinner menu.

Waterlemon Cay
Waterlemon Cay is one of our favorites for seeing beautiful coral, starfish, an array of colorful fish, and the occasional reef shark. After the one-mile walk on the Leinster Bay Trail from the Annaberg Sugar Mill Ruins parking lot, snorkelers reach the cay by swimming to the middle of the bay. From the beach, swim over the seagrass or keep walking around the rocks for a shorter swim (but watch out for sea urchins). Swimmers in the know use the currents to go counterclockwise around the cay easily. But avoid making the entire loop around (and hitting strong currents) if you are a less confident swimmer.
East End Beaches

North Haulover Beach
Recommended for more advanced snorkelers, North Haulover is a pebble beach with excellent snorkeling and a lot of seaweed. The best snorkeling is along the western side, where you’ll see large brain coral, and perhaps reef squid. For less seaweed, head to South Haulover, where you’ll see sea cucumbers, blue tangs, and larger fish. Did we mention no seaweed? Check out Skinny Legs on the way through Coral Bay for a delicious bite.

Hansen Bay
Tucked away from the north shore crowds, the beach at Hansen Bay Beach is quiet, yet public..ish. The rustic beach is owned by a local family that rents out lounge chairs and kayaks. For snorkeling, the long stretch of shore at the eastern end of the bay is an underwater paradise, with an option for comfortable swimmers to follow the reef all the way out to Pelican Rock. Check the beach’s facebook page for updates on this rarely crowded beach, and show your thanks to the family with a generous parking donation.
South Shore Beaches

Salt Pond Bay Beach
Looking for an alternative to the popular North Shore Beaches? Salt Pond Bay Beach is the next best thing. The hike from the parking lot is well worth it for the clear, calm waters and sandy beach. Visibility in the water is excellent, allowing snorkelers to explore quite a ways out into the bay. Take a break from snorkeling for the spectacular views on the Ram’s Head Trail. On a clear day, you can see all the way to St. John’s neighboring St. Croix. After a long day of snorkeling and hiking, head back to Cruz Bay for a fantastic dinner at Morgan’s Mango.

Great & Little Lameshur Bay
Rental car companies prohibit driving to Lameshur Bay, so get friendly with the locals (and one who has a 4×4). Great Lameshur Bay Beach is a pebble beach—we recommend skipping it and continuing down the dirt road to Little Lameshur Bay’s white sand beach. There are picnic tables and grills, and the snorkeling is excellent for all skill levels of swimmers with a wide variety of marine life. Snorkeling is best on the eastern side, going along Yawzi Point. Up for a short hike? Try the Yawzi Point Trail for beautiful south shore views.