战国,属巴国地。
东汉永元二年(90年),属宣汉县。
清,属绥定府宝芝乡。
民国,属达县(今达川区)。
民国二十二年(1933年),置北山区、乡苏维埃。
民国二十四年(1935年),置北山镇,属达川区第五区。
民国二十九年(1940年),镇改乡。
1958年9月,乡改公社。
1983年12月,公社改乡。
2013年7月,将达川区北山乡划归达州市通川区管辖。
2015年6月,撤销北山乡,设立北山镇,以原北山乡的行政区域为北山镇的行政区域。