Stem is a town in Granville County, North Carolina, United States. The population was 229 at the 2000 census. In 2006, Stem became home to a high school for the first time since Stem High, when Granville Central High School opened its doors to freshman and sophomores. The school added a grade each year and now has grades 9-12.
According to the United States Census Bureau, the town has a total area of 0.9 square miles (2.4 km²), all land.
As of the census of 2000, there were 229 people, 93 households, and 63 families residing in the town. The population density was 244.5 inhabitants per square mile (94.1/km²). There were 102 housing units at an average density of 108.9 per square mile (41.9/km²). The racial makeup of the town was 90.39% White, 2.18% African American, 1.31% Native American, 2.18% Asian, 3.93% from other races. Hispanic or Latino of any race were 5.68% of the population.