St. David is a village in Fulton County, Illinois, United States. The population was 589 at the 2010 census.
St. David is located in eastern Fulton County at 40°29′30″N 90°3′7″W / 40.49167°N 90.05194°W / 40.49167; -90.05194 (40.491796, -90.051958). Illinois Route 100 runs along the southeast edge of the village, leading southwest 10 miles (16 km) to Lewistown, the county seat. Canton, the largest city in Fulton County, is 5 miles (8 km) to the northeast via IL 100 and IL 78.
According to the 2010 census, St. David has a total area of 0.3 square miles (0.78 km), all land.
As of the census of 2000, there were 587 people, 239 households, and 163 families residing in the village. The population density was 1,982.1 people per square mile(755.5/km²). There were 260 housing units at an average density of 877.9 per square mile (334.6/km²). The racial makeup of the village was 99.83% White and 0.17% African American.
There were 239 households out of which 28.0% had children under the age of 18 living with them, 54.8% were married couples living together, 9.6% had a female householder with no husband present, and 31.4% were non-families. 25.1% of all households were made up of individuals and 18.0% had someone living alone who was 65 years of age or older. The average household size was 2.46 and the average family size was 2.95.
In the village, the population was spread out with 24.5% under the age of 18, 7.3% from 18 to 24, 27.1% from 25 to 44, 22.0% from 45 to 64, and 19.1% who were 65 years of age or older. The median age was 38 years. For every 100 females, there were 107.4 males. For every 100 females age 18 and over, there were 96.9 males.
The median income for a household in the village was $30,625, and the median income for a family was $37,188. Males had a median income of $34,792 versus $18,250 for females. The per capita income for the village was $14,292. About 8.2% of families and 11.1% of the population were below the poverty line, including 12.8% of those under age 18 and 5.8% of those age 65 or over.