商,属艾侯国。
秦、汉属艾县。
自唐贞元十六年(800)至清末(1911),属分宁县、宁州、义宁州高乡三十六都、三十八都。
1912年后,属义宁县。
1914-1949年,属修水县杭口乡。
1950-1957年,属杭口区。
1958年9月,与西港、上杭、新湾合并组建杭口公社。
1968年11月,与上杭合并组建上杭公社。
1972年10月,复设杭口公社。
1984年5月,撤社建杭口乡。
1995年12月撤区并乡,改为杭口镇。