垫江建县于汉代，属巴郡。唐朝初年，朝廷改临江县地为清水县，后又更其名为桂溪县。宋朝时期，桂溪县并入垫江县。元朝初年，垫江县并入丰都县，同时设置临江巡检司管理原垫江县地区。元朝末年，又复置垫江县。清朝时期，垫江县先后隶属于重庆府忠州 (唐朝)和忠州直隶州。民国时，垫江又先后隶属于东川道和第十行政督察区。中华人民共和国成立后，垫江仍先后隶属于大竹、涪陵专区。直至重庆升格为直辖市，垫江才改为由重庆市直接管辖的县级行政区。
行政区划.下辖2个街道办事处、22个镇、2个乡：又划