Cabestany est une commune de 1042 hectares, située dans la plaine côtière du Roussillon, juste au sud-est de Perpignan, à proximité de l'étang de Canet-en-Roussillon. Son territoire s'étend entre les fleuves de la Têt (la Tet) et du Réart. Il s'agit pour l'ensemble d'une ancienne zone marécageuse, occupée autrefois par des étangs aujourd'hui asséchés.
En 2012, la commune comptait 9 399 habitants.