金堂县地处成都平原东北部,东经104°20´37"~104°52´56"、北纬30°29´10"~30°57´41"之间。县境东邻中江县,西连成都市青白江区、龙泉驿区,南靠乐至县、简阳市,北接广汉市、中江县。县城距成都市中区28千米、广汉市20千米、中江县45千米、成都市青白江区18千米、龙泉驿区36千米。全县幅员面积1156平方公里。
县境地处四川盆地西部,跨盆中和盆西两大褶皱带,成都平原东沿,川中丘陵西缘,龙泉山脉中段由东北转向西南横卧县域中部,形成西北高逐渐向东南降低的地势。县域位于成都平原与川中丘陵接壤地带。地域由平坝、丘陵、低山组成,西北部属川西平原,冲积平坝与浅丘占幅员面积的14.7%;东南部属川中丘陵区,丘陵占74%;中部低山11.3%。地势最高峰在栖贤乡尖山村老牛坡,海拔1048.7米;最低处在云合镇江龙桥村,海拔386米。