垛石镇位于东经117°00′91″—117°21′22″,北纬37°00′72″—37°14′22″。地处济阳县西北部,距县城15公里,距省城济南40公里。徒骇河流经中部,东与曲堤镇为邻,南连济阳街道办事处,西与新市镇、太平镇接壤,北靠商河县玉皇庙街道办事处。省道248线、249线、济乐高速、济东高速穿越该镇。