À une moyenne de 680 mètres d’altitude, Aurillac est située au pied des monts du Cantal dans un petit bassin sédimentaire. Le « bassin d’Aurillac » se situe à l’intersection de plusieurs unités paysagères : à l’Est, le massif cantallien composé d’une zone sommitale, en situation supra-forestière (hautes estives coiffées des crêtes qui constituent l’ossature et le centre géographique du massif), et d’un plateau entaillé par deux vallées qui débouchent toutes deux dans le bassin, la vallée de la Cère et de la Jordanne. Les vallées et gorges de la Cère traversent le bassin d’Est en Ouest. Au Sud-Ouest, la région est bordée par le plateau volcanique de Carladès et au sud par le plateau de la châtaigneraie cantalienne qui correspond à un socle cristallin.
La ville est construite sur les rives de la Jordanne, affluent de la Cère qui coule à proximité. Elle est desservie par la route nationale 122 et la voie ferrée Figeac – Arvant.
Aurillac est relié à Paris par deux vols quotidiens par la compagnie aérienne Hop!. Aucun TGV ou autoroute ne dessert Aurillac.