Le château de Grangent se trouve sur une petite île située sur le lac de Grangent, en contrebas du château d'Essalois. Il se situe au sud du territoire de la commune de Saint-Just-Saint-Rambert, dans le département de la Loire en Auvergne-Rhône-Alpes (France).