合川在巴人入川前是濮族人主要居住地,合川古城邑“巴子城”(今城区铜梁山下)曾是巴国别都。
秦惠文王十一年(公元前314年),始设垫江县,县域辖今合川、武胜、铜梁、安岳、岳池县地,隶属巴郡,治所在今合川。
西汉元始二年(2年),仍为垫江县,县域辖今合川、武胜、铜梁、大足及安岳、潼南县一部分,县治在今合川区合阳镇,仍隶属于巴郡。东汉建安六年(201),改属巴西郡。蜀汉建兴十五年(237),改属巴郡。义熙元年(405)改属巴州。义熙八年(413)改属巴郡。
南朝宋元嘉年间(424-453),置东宕渠郡,属梁州,郡治今合阳镇。宕渠名源于宕渠水(今渠江)。东宕渠郡下辖1县宕渠县,县治在今合阳镇。
南朝齐建元年间(479-482),因贵州的僚人迁徙进入嘉陵江、渠江流域,东宕渠郡改为东宕渠僚郡,属梁州,郡治仍在今合阳镇。东宕渠僚郡下辖3县:宕渠县、平州县、汉初县。
南朝梁大同年间(535-545),东宕渠僚郡分置新兴郡,平州县、汉初县划出,只辖宕渠县。太清四年(550),东宕渠僚郡复名东宕渠郡。
西魏恭帝三年(556年),置合州,因涪江与嘉陵江汇流而得名,州治在今合阳镇,合州辖4郡7县:垫江(原东宕渠郡)、清居(原新兴郡)、东遂宁、怀化4郡及郡属石镜(合川)、汉初(武胜)、清居(南充市南)、方义(遂宁城区)、德阳(遂宁市中区东南)、长江(蓬溪)、始兴(潼南)7县。
隋初,撤销垫江郡。隋开皇十八年(598)年,合州更名涪州。开皇年间,设赤水县,隶属于涪州。大业三年(607年)又改名涪陵郡,辖3县:石镜县、汉初县、赤水县。
唐武德元年(618年)复名合州,隶属于剑南道。天宝元年(742年),改名巴川郡。乾元初年(758年),复名合州。合州辖六县:石镜县、汉初县、赤水县、新明县、铜梁县、巴川县。
宋乾德三年(865年),改石镜县为石照县,隶属于潼川府路合州巴川郡。熙宁四年(1071年)赤水县并入铜梁县。熙宁七年(1074年)复设赤水县。淳佑三年(1234年)为抗蒙兵,在州城之东5公里的钓鱼山筑新城,州治所迁居钓鱼城。
元至元二十年(1283)年为散郡,赤水县并入石照县。元至元二十二年(1285),合州和石照县返回原治,改属重庆路。明洪武初年(1368年),州治石照县并入合州,隶属于重庆府。以后,合州辖县陆续划出,至清雍正六年(1728年)成为不再辖县的单州,属重庆府管辖。
民国二年(1913年),合州改名合川县。
1950年,合川属川东行署壁山专员公署辖。
1951年,壁山专区更名江津专区,合川属江津专区辖。
1952年4月划出合川县城关区增设合川市。
1958年1月,经国务院批复,合川市建置撤销,原合川市所辖地域改为合川县城关镇。
1983年3月,重庆市和永川地区合并,合川县属重庆市辖。
1992年8月4日,民政部(民行批[1992]89号)批复同意撤销合川县,设立合川市。
1997年,重庆恢复中央直辖市,合川隶属重庆。
2000年6月26日,重庆市人民政府(渝府[2000]131号)批准同意合川市人民政府驻地由合阳城苏家街31号迁至南津街中南村。
2000年,合川市辖6个街道、50个镇、8个乡。
2001年6月5日,重庆市人民政府同意合川市将原有的50个镇、8个乡、6个街道办事处调整为36个镇、3个街道办事处。调整后,乡镇平均面积由调整前的37.7平方千米扩大至60.7平方千米,乡镇平均人口由调整前的2.2万人增至3.6万人。
2002年,合川市辖3个街道办事处、36个镇,95个居委会、529个村委会。年末户籍总人口150.99万人,其中非农业人口26.32万人。
2005年4月19日,重庆市人民政府《关于合川市行政区划调整方案的批复》同意合川市将36个镇、3个街道办事处调整为27个镇、3个街道办事处。
2006年2月23日,根据重庆市人民政府《关于合川市部分村跨镇调整的批复》又对合川市部分村进行了跨镇调整。
2006年10月22日,国务院批准:撤销合川市,设立重庆市合川区。以原合川市的行政区域为合川区的行政区域,合川区人民政府驻南津街街道。