Wilson is located in southwestern Carter County. U.S. Highway 70 passes through the city north of the populated center; it leads east 16 miles (26 km) to Ardmore, the Carter County seat, and west 35 miles (56 km) to Waurika.
According to the United States Census Bureau, Wilson has a total area of 5.7 square miles (14.7 km2), of which 0.01 square miles (0.03 km2), or 0.23%, is water.[4]
As of the census[3] of 2000, there were 1,584 people, 625 households, and 426 families residing in the city. The population density was 278.3 inhabitants per square mile (107.5/km2). There were 785 housing units at an average density of 137.9 per square mile (53.2/km2). The racial makeup of the city was 89.71% White, 0.25% African American, 6.57% Native American, 0.44% Asian, 0.44% from other races, and 2.59% from two or more races. Hispanic or Latino of any race were 1.83% of the population.
There were 625 households, out of which 31.4% had children under the age of 18 living with them, 52.2% were married couples living together, 11.4% had a female householder with no husband present, and 31.8% were non-families. 29.9% of all households were made up of individuals, and 17.9% had someone living alone who was 65 years of age or older. The average household size was 2.45 and the average family size was 3.03.
In the city, the population was spread out, with 26.5% under the age of 18, 7.8% from 18 to 24, 23.9% from 25 to 44, 21.5% from 45 to 64, and 20.2% who were 65 years of age or older. The median age was 38 years. For every 100 females, there were 89.0 males. For every 100 females age 18 and over, there were 84.5 males.
The median income for a household in the city was $22,667, and the median income for a family was $28,199. Males had a median income of $29,063 versus $17,619 for females. The per capita income for the city was $11,258. About 15.4% of families and 20.8% of the population were below the poverty line, including 27.0% of those under age 18 and 18.3% of those age 65 or over.