Roche est une commune du département de la Loire, dans la région d' Auvergne-Rhône-Alpes.
Roche fait partie du canton de Montbrison 
Roche adhère à la la communauté d'agglomération Loire Forez Agglomération (LFA) 
Roche fait partie du bassin de vie de Montbrison 
Madame le maire de Roche est Christelle MASSON - Agriculteur sur petite exploitation (2026)
La population de Roche est de 252 habitants (2025) 
L'altitude moyenne de Roche 923 mètres.
Le code postal de Roche est : 42600
Le code INSEE de Roche est : 42188
1 Il y a 1 Ecole à Roche. Voir les établissements scolaires de Roche. 
28.4 La part des résidences secondaires est de 28.4 %. 
Tous les chiffres et statistiques sur Roche sur le site Insee.fr 
Lérigneux: à 1.96 km
Châtelneuf: à 3.76 km
Essertines-en-Châtelneuf: à 3.99 km
Saint-Bonnet-le-Courreau: à 4.97 km
Bard: à 5.81 km
Verrières-en-Forez: à 6.21 km
Sauvain: à 7.12 km
Écotay-l'Olme: à 7.90 km
Champdieu: à 8.67 km
Pralong: à 8.85 km
Chazelles-sur-Lavieu: à 9.12 km
Montbrison: à 9.35 km
Saint-Georges-en-Couzan: à 9.74 km
Gumières: à 9.75 km
Saint-Anthème: à 9.75 km
Lézigneux: à 10.42 km
Lavieu: à 10.80 km
Savigneux: à 10.88 km
Marcilly-le-Châtel: à 11.06 km
Saint-Thomas-la-Garde: à 11.74 km
Chalain-d'Uzore: à 11.78 km
Valcivières: à 11.90 km
Marcoux: à 11.98 km
Ecole élémentaire Bourg - Public