[5] El municipio abarca 63.38 km² y se encuentra a una altitud promedio de 230 m s. n. m., oscilando entre 900 y 100 m s. n. m.[1][6] Colinda al norte con San Agustín Chayuco y San Juan Colorado, al este con San Agustín Chayuco, al sur con Santa Catarina Mechoacán y San Andrés Huaxpaltepec, y al oeste con Pinotepa de Don Luis y San Juan Colorado.
Su territorio lo abarca el sistema de topoformas del Valle de laderas tendidas con lomerío en el 56%, sierra baja compleja en el 42% y lomerío con llanuras en el 2% restante.
[6] San Lorenzo se encuentra en la subcuenca del río La Arena, perteneciente a la cuenca homónima, dentro de la región hidrológica de Costa Chica-Río Verde.
[5] El clima del municipio es cálido subhúmedo con lluvias todo el año en la totalidad de su territorio.
[6][7] De acuerdo al último censo, realizado por el INEGI en 2010, en el municipio habitan 5955 personas, repartidas entre 8 localidades.