By clicking a retailer link you consent to third-party cookies that track your onward journey. This enables W? to receive an affiliate commission if you make a purchase, which supports our mission to be the UK's consumer champion.

How to book a cheap cruise holiday

Find the best cruise deals and cut the cost of shore excursions and on-board drinks with our expert tips 
Which?Editorial team

Cruise holidays aren’t cheap – but you can keep costs down with some savvy forward planning.

We’ve worked out how much you could save by finding the sweet spot of when to book. We also reveal whether you should use an agent or organise your own flights and excursions, plus why you should keep an eye on prices even after you’ve handed over your deposit. 

Our research found that it rarely makes sense to splash out on a drinks package.

Read on for more expert tips to get the best deal on your cruise in 2025 and beyond.


For more independent travel advice and recommendations, subscribe to Which? Travel


1. Don’t book too early

Cruises go on sale 18 to 24 months before departure, but don’t assume that early birds enjoy the biggest savings. 

Seven out of 10 cruises we checked (for Fred Olsen and P&O) were cheaper within 12 weeks of departure compared with the early-bird price. One 14-night Mediterranean voyage was a huge £400 less per person when booked just six weeks in advance. 

Our advice is don’t rush to book, unless you have your heart set on a specific cabin that’s likely to sell out.

Instead, compare fares across different months and look out for promotions. Set up a price alert at cruisewatch.com or cruiseline.com.


See how passengers rated the cabin quality, customer service and value for money in our survey of the best cruise lines


2. Use an agent

Travel agents are often able to give a better range of discounts or deals than you'd get by going direct to cruise lines. Some get special offers or split their commission with you, so they can pass that discount on to the customer. 

For example, we found a balcony room on Celebrity’s six-night Bahamas, Mexico and Cayman cruise for £622pp on vivavoyage.co.uk, rather than £660pp direct – a saving of £76 per couple.

And don't just stick to one cruise agent. There's often some wiggle room if you're happy to haggle. Even if agents can't beat the cruise line's own rate, they can sometimes offer sweeteners such as on-board credit, prepaid gratuities or excursions.

Solo travellers can search for cruises that don’t charge a single supplement on vacationstogo.com – a US travel agent. If you’re paying in dollars or euros, consider paying in full at the time of booking if the exchange rate is favourable.

3. Buy your own flights

Flight-inclusive deals from cruise lines give you peace of mind in case of flight delays or cancellations (in which case the ship will wait for you). Sometimes they offer great rates, too, as they bulk-buy seats. But, in some cases, buying your own flights can be significantly cheaper.

When we looked, Princess’s cheapest flight quote for a cruise beginning in Rome and ending in Barcelona was £235pp. We found the same flights for £153pp, so a couple would save £164 by booking for themselves.

If you do book your own flight, make sure you're aware of your consumer rights. It may be that if your flight is delayed or cancelled, you won't be able to get a refund on the cruise (unless your travel insurance covers it). And if you choose to catch up with the ship, it will be at your own expense.


Want to know what cruise insurance covers? Every year, Which? rates the best and worst cruise insurance policies


4. Look out for promotions – even after you’ve booked

After you’ve booked, keep an eye on the price of your cruise. If it drops, contact whoever you booked with and ask for the cheaper price. One Which? Travel reader told us he’s received substantial price cuts and perks by doing this. 

He added: 'Norwegian upgraded us from an interior to a balcony cabin for free. They were running a promotion: a free upgrade to a balcony cabin if you booked an Oceanview cabin. So I asked if I could upgrade to an Oceanview room and pay the difference – and they upgraded me to a balcony cabin without charging.'

5. Save on drinks on board

Cruising and boozing can be very bad for your wallet, especially if you travel with one of the big US-based cruise lines that whack a service charge on top. A glass of wine on board a Princess ship, for example, ends up costing around £11.

Think you can cut costs by bringing your own drinks on board? Think again. Very few cruise lines allow this (the exceptions are Celebrity, Disney, P&O and Royal Caribbean, but only for limited amounts). 

Most cruise companies sell all-inclusive drinks packages, so you don’t have to worry about running up a huge bar bill. But when we added up how much you’d need to consume with Celebrity, Cunard, Fred Olsen, P&O and Princess to get your money’s worth, we found it rarely makes sense to pay full price for a drinks package.

For example, Celebrity’s costs $107 (£85) per person, per day after you add on its 20% service charge. So you’d need to put away 13 beers (around £7 each) or 10 glasses of wine (£9 each) every day for a package to save you money. 

Keep an eye out for promotions – drinks packages are often heavily discounted or thrown in for free in cruise sales. If you’ve already bought a package and spot a better deal, check if you can cancel for free and take advantage of the lower price – many cruise lines allow you to cancel up to two or three days before you set sail.

6. Save on shore excursions

Most cruise lines sell excursions at exorbitant prices, and you’ll save money if you go it alone or book with a third party.  

We looked at the shore excursions offered by Norwegian Cruise Line (NCL) on its six-day Mediterranean cruise and found similar options for a lot less. When we checked, NCL’s Rome & Leisure tour was £143pp, whereas Shore Excursions Group’s equivalent tour was $89pp (£71).

Companies such as Shore Excursions Group promise to get you back to your ship in plenty of time, but will get you to the next port of call if there’s an unavoidable delay. 

Booking with a local company is likely to be even cheaper, but allow plenty of time to get back to the ship. You can ask cruise-goers for alternatives to shore excursions and local recommendations on cruisecritic.co.uk’s forum.

The cheapest option is to go it alone. In Athens, the metro will whisk you from Piraeus to the city centre in 30 minutes (€2.40/£2 return) and there’s a free shuttle bus in the cruise terminal. Make sure you check how far the port is from the city or attraction, as well as the logistics and cost of transport options.

7. Consider going all-inclusive

Some brands lure you in with a low headline price, but costly add-ons soon mount up once you’re on board – from drinks and premium restaurants to wi-fi and service charges.

Our research found that P&O passengers on a seven-night cruise can expect to fork out around £400 extra per week for a drinks package, a couple of speciality dinners and wi-fi. Holidaymakers on Cunard also have to cough up for service and daily gratuities: around $16pp (£13) per day and 15% on every drink ordered. 

All-inclusive cruises may cost more upfront, but they could save you money in the long run. 

Noble Caledonia, Saga and Viking – which include everything from wi-fi to excursions in the headline fare – were among the top-rated ocean cruise lines in our survey and received four out of five stars for value for money.


Read our reviews of Noble CaledoniaSaga and Viking, plus how passengers rated other cruise lines