商周到战国时期属巴国。
秦代属巴郡朐县。
西汉属临江县。
晋泰始二年(266),属巴郡临江县。
西魏恭帝三年(556),析临江县地置垫江县。
天和二年(567),改垫江县为魏安县。
开皇十八年(598),魏安县复名垫江县。
唐武德元年(618),垫江县改属邻州。
武德八年(625),邻州废,垫江县属临州。
贞观八年(634),改临州为忠州,垫江县属之。
宋乾德三年(965),垫江属夔州路忠州。
元至元二十一年(1284),省垫江县入丰都县。
明万历年间,置顺庆分府,垫江县属之。
清雍正十二年(1734),忠州升为直隶州,垫江县属之。
嘉庆五年(1800),垫江属忠州直隶州。
1912年,垫江县属四川省东川道。
1935年,属四川省第十行政督察区。
1949年10月,新中国成立后,垫江县属川东区行政公署大竹专区。
1953年3月,大竹专区撤销,垫江县属涪陵专区;9月,涪陵县辖31乡划隶垫江县。
1968年8月,属涪陵地区。
1997年12月,属重庆市直辖。