Roffiac est situé dans le département du Cantal et la région d'Auvergne-Rhône-Alpes.
La commune s'étend sur 21,3 km² et compte 607 habitants depuis le dernier recensement de la population datant de 2022.
Avec une densité de 28,5 habitants par km², Roffiac a connu une nette hausse de 12,4% de sa population par rapport à 1999.
Entouré par les communes de Andelat, Tanavelle et Coltines, Roffiac est situé à 5 km au nord-ouest de Saint-Flour la plus grande ville des environs. Situé à 840 mètres d'altitude, la Rivière le Lander, le Ruisseau de Liozargues, le Ruisseau de Dauzanne sont les principaux cours d'eau qui traversent la commune de Roffiac.
Le maire de Roffiac est Madame Ghislaine DELRIEU (mandat 2020-2026).
La commune de Roffiac fait partie de Saint-Flour Communauté.