St. James is a town located in Brunswick County, North Carolina. St. James has a 2026 population of 7,315. St. James is currently declining at a rate of -0.97% annually but its population has increased by 11.7% since the most recent census, which recorded a population of 6,549 in 2020.