La commune de Bastia est située en Haute Corse. Elle s'étend entre la mer (0 m d'altitude) et le sommet de Serra di Pigno culminant à 963 m.

Elle est soumise à un climat méditerranéen avec une température moyenne annuelle de 15.5 ° C, une pluviométrie abondante (799.3 mm /an), une moyenne de 240 jours d'ensoleillement par an. 

Relevé météorologique de Bastia
Moisjan.fév.marsavrilmaijuinjui.aoûtsep.oct.nov.déc.année
Température minimale moyenne (°C)5,14,96,78,812,4161919,416,513,39,26,311,5
Température moyenne (°C)9,19,410,812,916,32023,223,320,617,112,910,115,5
Température maximale moyenne (°C)13,613,815,617,82225,829,129,325,821,917,414,520,6
Ensoleillement (h)1341581922142682963453042321761331282 579
Précipitations (mm)67576076504113218112711493799,3
Source : Météo-France, données sur la période 1981-2010