Brunehaut est situé dans le sud-ouest de la Belgique, au sud de la ville de Tournai et est frontalier avec quelques villages français. L'entité partage ses frontières avec les communes belges Rumes par les villages de Taintignies et la Glanerie, Tournai par les villages Willemeau et St Maur, et Antoing par les villages Bruyelle et Péronnes. Avec les communes françaises Flines, Mortagne, Maulde, Rumegies et Lecelles. 

L'entité est traversée par deux voies de communications linéaires importantes, la N 507 - répertoriée pour le passage du transport exceptionnel - rejoignant Tournai à St-Amand en direction de Valenciennes, et la Plaine alluviale de l'Escaut qui accueille de nombreuses péniches naviguant vers la France et vers la Belgique. L'accès à la commune peut se faire par le réseau ferroviaire via la SNCB vers la gare de Tournai ou celle d'Antoing, qui est la plus proche, et par le réseau routier via TEC dont divers bus sont accessibles au départ des gares