Good article, but the one main item you forgot to mention about 'free' upgrades is when it's not actually free.
I've been involved in travel for over 25 years before starting my own company more than 10 years ago, so I've seen alot in that time. And one of the 'tricks of the trade' that I see on a regular basis involves those 'unscrupulous' agents who like to pull a fast one on their clients.
Let me explain the scenario;
Keep in mind that the agent's commission is based on the cruise fare (not the total cruise price and not even the advertised price), so when the cruise fare goes down, so does the agent's commission.
An agent sees that the price of a client's cruise just went down. The agent contacts the cruise line and gets the client upgraded to a different cabin that is now the same price as the client originally paid. Then the agent calls the client and proudly announces, "Hey, I just got you a free upgrade!"
The truth of the matter is that the price went down. A reputable agent will call the client and tell them that the price went down and they have two choices; they can either get the lower fare or get an upgrade. But it's the client's choice to make, not the agent's.
In today's electronic environment, this doesn't happen as much as it use to because many travelers are more tech savvy. But those who are most susceptible to this type of ploy are seniors who don't have/use computers.
And most of the mass-market cruise lines require everyone to advertise the same cruise for the same price, so those that do have computers can easily verify prices.
Plus, cruise line's policies have changed and most now only allow price changes to be made before the final payment has paid. Whereas in the past, price changes could be made even up until the day before sailing.
Bottom line, using an agent is still the most preferred method to book a vacation. If you have problems, they represent you and have resources not available to the average traveler. Plus, they have information and experience that can be invaluable. And since their services are free to use, it makes sense to use them. Booking directly with the cruise line or an online site is not wise as they don't offer the personal services a traveler deserves and should problems occur, they represent themselves.
But no matter how you book your cruise, there are certain precautions one should always take;
1) Always check prices on the cruise line's website. If the rate you're getting is less, verify it. It's possible it could be a group rate, which could be less than the advertised rate, but if it's alot less - be weary.
2) Always make sure you get a cruise line confirmation, not just a confirmation from the agent.
3) Always insist your credit card is charged by the cruise line and not by the travel agency. If the agency says they're going to charge your credit card, run the other way.
4) After you get your confirmation, always go to the cruise line's website and verify your reservation.
5) Always double check the reservation to insure everything is correct, especially the spelling of names.
While 'free' upgrades do occur occasionally, unless you purchased a guarantee cabin, they are no longer as common as they use to be in the past. So if you get a free upgrade, it may just be a gift from the upgrade fairy, but verify it just to make sure it's not costing you money.