Casteggio is a comune (municipality) in the Province of Pavia in the Italian region Lombardy, located about 61 km south of Milan and about 25 km south of Pavia. As of 31 July 2010, it had a population of 6,537 and an area of 17.8 km².
Casteggio borders the following municipalities: Borgo Priolo, Calvignano, Casatisma, Corvino San Quirico, Montebello della Battaglia, Oliva Gessi, Robecco Pavese, Verretto.