It's a long way to our next cruise. Unless we get impulsive, it won't happen until November with our planned river cruise followed by our biannual holiday cruise in the Caribbean. Long ago we gave up on getting to the ship and hoping to be surprised by a stateroom upgrade. Somehow my charming son manages those things but we haven't. We have on occasion paid a discounted price however to get an upgrade.
There are some tips to getting an upgrade and it's all in an article on Cruise Critic. Higher cabins are sold first since they can make more money on them. If you've booked a lower priced cabin you may get offered an opportunity to move up--for a discounted price of course. Beware though, sometimes the higher priced cabin may not be in a prime location. If you don't mind bouncing around at the rear or front of the ship or even on a higher deck, then go for it. (See my post Choosing Your Stateroom).
A good way to find out about a sale of unfilled cabins is through the email newsletters and notices that each line sends out. Sign up for the ones you love to cruise with and if you are flexible in your schedule, you could snag a great deal although you may have to travel sooner rather than later. The reason is that most sales will not happen until the final payment is due for those who have already booked--usually at about three months out from the sail date.
There are lots of other tips and interesting information on how a cruise company fills a ship. They do want that ship filled. They still have staff and crew to pay and of course there's a lot of money to be made through those on-the-ship purchases.
Happy stateroom hunting!