Saint-Jean-Saint-Maurice-sur-Loire est dans la partie nord du département de la Loire, à 15 km de Roanne, à 78 km de Saint-Étienne (Loire) et à 100 km de Lyon (Rhône).
Village d'environ 1100 habitants, à 17 km de la sortie 32 de l'autoroute A89 reliant Clermont-Ferrand à Saint-Étienne.
La commune est issue de l'association en 1974 de deux villages très proches : Saint-Jean-le-Puy et Saint-Maurice-sur-Loire. L'altitude de Saint-Jean-Saint-Maurice-sur-Loire varie de 320 à 802 mètres en partant du fleuve (la Loire et le Lac de Villerest) jusqu'à la moyenne montagne. Elle possède un territoire des deux côtés de la Loire, un fait unique pour une commune de cette taille.