Gelegen in het zuiden van het departement Corrèze, in de regio Nieuw-Aquitaine, in een rotsachtig kalksteengebied, bestaat de stad Nespouls uit kleine dorpjes.
De stad Nespouls, die deel uitmaakt van de plaats Belveyre, ligt vlakbij de hoofdweg D920, ongeveer halverwege tussen Brive-la-Gaillarde en Souillac. De dichtstbijzijnde afrit van de snelweg is afrit 53 van de snelweg A20, op 2 km afstand.
Nespouls wordt omringd door de gemeenten Chasteaux, Noailles, Jugeals-Nazareth, Chartrier-Ferriere, Estivals, Turenne en Cressensac.
De dichtstbijzijnde grote stad bij Nespouls is Brive-la-Gaillarde.
De stad ligt dicht bij het Regionaal Natuurpark van Causses du Quercy.