I thought the shopping was best on St. Martin(Maarten). St. Thomas was a close second. I didn't think the shopping was too good on Nassau. I have yet to go to San Juan (I will go there next month on my next cruise). I have never been to Tortola as well.
St. Thomas and St. Maarten are the best places for shopping. Nassau is a fun place. My suggestion is to take a cab to the Atlantis, tour that and then go to the public beach adjacent to the Atlantis. Tortola is a beautiful island. There is a lovely beach in the Northwest corner of the island. We did 2 catamaran sail/snorkels that went over by Norman's Island that were great. There are plenty of cabs there, so we grabbed one and he took us around the island. He charged is $30 for a 3 hour tour. My recommendations in San Juan are the Bacardi Factory tour for some yummy samples and/or a tour of Old San Juan. Best wishes and have a wonderful cruise!
Thanks for all your help. This is our 5th cruise, but first time to these ports. We are taking our 4 adult children and their spouses. We aren't able to get all of us together very often so this should be fun. I know the most important thing for all the girls will be the shopping!