San Andrés Solaga is a town and municipality in Oaxaca in south-western Mexico. The municipality covers an area of 38.27 km². It is part of the Villa Alta District in the center of the Sierra Norte Region.