We have taken 3 cruise in the past year. The first one was a 2 night on the Margaritaville at Sea Paradise, second a 7 night on Royal Caribbean's Grandeur of the Seas, and third a 5 night on Virgin Voyages Scarlet Lady. All three are pretty close in length of ships... on the smaller side. What we found is that it seems to have a correlation to the number of nights. Margaritaville at Sea Paradise didn't have tons of things on the ship, but at only 2 nights, they had the right amount, because the cruise was so short. On the Grandeur of the Seas, we found ourselves getting a little board with the onboard activities. Basically, it seemed like they ran out of different things to do. You can only play trivia so many times before you get bored with it, and the things they had that we liked, and were a lot of fun, were only once a day, at most. On the Scarlet Lady we probably had the best time. They had enough activities going on that you had plenty to keep you going throughout the cruise.
We believe that around 5 nights is the max for a smaller ship (even though the Scarlet Lady didn't feel like a smaller ship), unless they have lots of activities. While we thought 7 nights on a smaller ship would be relaxing, but we found ourselves getting bored and trying to find something different to do. We believe Grandeur of the Seas would have probably been perfectly fine had it only been 5 nights. If we ever go on a 7 night or greater, we will definitely go on a much bigger ship