Bayona se situe dans le sud-ouest de la province de Pontevedra, dans la communauté autonome de Galice, au bord de l’océan Atlantique. Elle est nichée dans une baie naturelle protégée, face aux îles Cíes, à environ 20 km au sud de Vigo, la plus grande ville de Galice, et proche de la frontière portugaise.
La ville est entourée de reliefs doux et de forêts côtières, offrant des vues spectaculaires sur la mer et les rías. Sa localisation en bord de mer et à proximité de la Ría de Vigo fait d’elle une destination idéale pour les sports nautiques, la voile ou encore les croisières vers les îles Cíes, intégrées au parc national des Îles Atlantiques.
Le climat est océanique tempéré, avec des étés doux et agréables (20 à 27 °C) et des hivers modérés. La meilleure période pour visiter Bayona s’étend de mai à octobre, lorsque les températures sont idéales pour profiter de la plage, des terrasses, des fêtes locales et des événements en plein air.