Кэрнс расположен на восточном побережье полуострова Кейп-Йорк, между Коралловым морем и плато Атертон. Между плато и Кэрнсом расположена горная гряда — часть Большого Водораздельного хребта, высотой до 1,5 км. С западной стороны гряды, на плато Атертон — субтропический климат, с восточной стороны, в Кэрнсе — тропический климат.
В городе две реки — Беррон и Малгрейв. Они берут начало на плато Атертон. Эстуарий реки Малгрейв (в настоящее время ее русло изменилось) оказался очень удобным для строительства порта.
В 60 км к северу от Кэрнса расположен еще один портовый город — Порт Дуглас. Города соединяет живописная трасса, идущая вдоль побережья. Её называют Великой Океанской Дорогой по аналогии со знаменитой дорогой в штате Виктория.
Кэрнс был основан в 1876 году и назван в честь Уильяма Кэрнса (William Cairns), являвшегося в то время губернатором штата Квинсленд.
Сезон дождей c тропическими муссонами длится с декабря по апрель, а относительно сухой сезон с мая по ноябрь. В среднем, за год, в Кэрнсе выпадает около 2200 мм осадков.