Situato nella porzione inferiore della Valle Brembana non lontano da San Pellegrino Terme (4 km). Il capoluogo si estende lungo la strada di fondovalle, sulla sponda orografica destra del fiume Brembo, mentre gli altri centri abitati sono dislocati prevalentemente sulla sponda sinistra.