Upvote:2
This is hard to say because you risk the fact that the cruise could be sold out. If you work with a travel agent/company, they can reach out with last minute spots. But, travel agents place prior clients ahead of new ones. Your best bet is to book your cruise with a travel agent/company and they usually have special promotions or give you on board spending credits, which is like a discount. That's how I book my cruises. I am going on an Alaskan cruise in July and although I paid full price for my tickets, my travel agent gave me additional perks and onboard spending credit (things I would have bought/money I would have spent anyways), therefore to me, its like a discount.