The answer to this question largely depends on two things; what passport you are travelling on, and where you are cruising. When it comes to visas and cruise holidays, however, the situation is complex, but immigration matters are taken very seriously on cruises today, so don’t think for a second that you will be exempt from protocol just because you’ve arrived on a ship and may only be in port for a few hours. While some countries have waived visa requirements for cruise arrivals, especially those which have been a part of the world of cruising for a long time, other countries such as Indonesia allow for a visa to be issued on arrival to most people. In this situation, however, the cruise line pays for the visa during the immigration inspection, and charges the fee to your shipboard account.
If you think you might need a visa, or multiple visas, for a cruise holiday, the first thing to do is check the expiration date of your passport, as many countries require people to travel on one which is valid for at least six months beyond the date of entry. Next, check with the embassy of the country or countries you are visiting if you need a visa as a cruise passenger, and plan to get one if they say you do. Leave plenty of time before you travel for obtaining any visas, as it can take some time; the more visas you need, the more time it will take. Also make sure you obtain the right kind of visa for a cruise, for example, a multiple-entry visa or a single-entry visa. Finally, as obtaining visas can be time consuming, consider paying an agency to do the legwork for you especially if you need more than one, and if in doubt, get a visa anyway to avoid being stopped from going ashore at the gangway.