Having been to St. Thomas twice before on previous cruises, the first we caught the ferry to St.John and spent the day at Trunk Bay, Last year we got a taxi to Magen`s Bay and spent the day there. This May it`s either Coki Beach or Sapphire Beach, which is the more beautiful place to spend a day for a fortysomething couple?
Coki will have more to offer since Coral World is there. For sheer "beach enjoyment", I'd probably do Coki. Actually, even for snorkelling, I would do Coki. Lots of fish to the right where the rocks are, and beautiful coral to the left cliffs if you snorkel out a bit. Coki can tend to get crowded though, while Sapphire is less so. St. John also has other nice beaches you may want to try. In general, it's hard to go wrong with any of the beaches :-)
These beaches are smaller than Trunk and Magen's, just in case that is important
Coki, for sure if you wish to do more than sit, sun,and bathe. Sapphire is quiet, and not as crowded, but Coki is just more fun and active. Magen's is the lowest on my list at St.thomas. Although St.John's is beautiful, I wouldn't want to waste half my port time traveling there again. I will save that for a land trip.