南江口镇在周代属百越。
晋代末年属晋化县,曾为县署所在地。
在清代属罗定州西宁县太平都,置名仙平甲。
民国二年(1913年)至解放初期改称仙平乡,属郁南县第二区。
民国三十五年(1946年)与上四(罗旁)、沥源(地心)合并太平乡(乡府驻地罗旁)。
民国三十七年九月(1948年9月)太平乡又按原来的三个小乡划分,恢复仙平乡。
1950年合并连滩属第四区。
南江口圩初为平罗行政村的驻地。
1953年,改称平罗乡。
1957年与南渡乡合并称南江口乡。
1956年12月,原来第二区(仙平乡)划分南江口、古蓬两个小乡,仍属连滩四区所辖。
1958年4月,南江口、古蓬合并为南江口乡。
同年10月,该乡是东风人民公社的一个管理区。
1961年10月,从东风人民公社分出成立南江口人民公社,翌年与西江人民公社合并称南江口人民公社。
1983年8月,称南江口区。
1987年,建南江口镇。