北斗镇地处榕江北河上游,位于县境中西部,北邻建桥、丰良镇,南连汤西镇,西与五华县接壤,东与汤坑镇交界,距县城9公里。206国道、梅汕高速、广梅汕铁路均经过北斗,交通地理位置重要。全镇面积91.8平方公里,有山地面积13.5万亩,耕地面积5493亩,其中水田面积4689亩,旱地面积1993亩。辖8个村委会,分别是庆瑶村、北斗村、下溪村、茜坑村、拾荷村、才口村、桐岽村和桐新村,36个村民小组。境内四面高山环绕,韩山山脉和桐梓洋山脉东西相连,构成猴子岽一带绵亘20公里,海拔800米以上的高山。韩山、桐梓洋山溪水汇于桐岽村蛤蟆落井,形成榕江北河上源,流经镇内全境,榕江北河横贯境内13公里,落差较大,水流湍急,水力资源丰富。气候温凉,年平均气温为21.4℃,2014年全镇总户数是3818户,总人口是16789人。