St John has the best beaches and snorkeling compared to Grenada and I believe most everything will be open. But really St John almost feels like you're still in the U.S. Grenada has some nice beaches also but also has rain forest, rivers and waterfalls. It's south of the hurricane belt and has more Caribbean vibe compared to St J. People are friendly. For quiet beautiful beaches and snorkeling I'd recommend St John. For more adventure and Caribbean immersion I'd recommend Grenada.