Shirley is located at . While most of Shirley is in Hancock County, Main Street is the county line and the smaller portion of Shirley is in Henry County. According to the 2010 census, Shirley has a total area of, all land.
Demographics
2010 census
As of the census of 2010, there were 830 people, 328 households, and 225 families living in the town. The population density was. There were 365 housing units at an average density of. The racial makeup of the town was 97.7% White, 0.6% African American, 0.6% Native American, 0.4% Asian, 0.2% from other races, and 0.5% from two or more races. Hispanic or Latino of any race were 0.4% of the population. There were 328 households of which 40.5% had children under the age of 18 living with them, 46.3% were married couplesliving together, 14.0% had a female householder with no husband present, 8.2% had a male householder with no wife present, and 31.4% were non-families. 27.7% of all households were made up of individuals and 13.7% had someone living alone who was 65 years of age or older. The average household size was 2.53 and the average family size was 3.04. The median age in the town was 35 years. 28.9% of residents were under the age of 18; 6.6% were between the ages of 18 and 24; 25.6% were from 25 to 44; 25.3% were from 45 to 64; and 13.6% were 65 years of age or older. The gender makeup of the town was 49.3% male and 50.7% female.
2000 census
As of the census of 2000, there were 806 people, 320 households, and 224 families living in the town. The population density was 2,178.1 people per square mile. There were 339 housing units at an average density of 916.1 per square mile. The racial makeup of the town was 98.76% White, 0.12% Native American, 0.25% Asian, 0.25% from other races, and 0.62% from two or more races. Hispanic or Latino of any race were 0.37% of the population. There were 320 households out of which 30.9% had children under the age of 18 living with them, 58.1% were married couples living together, 9.4% had a female householder with no husband present, and 30.0% were non-families. 26.3% of all households were made up of individuals and 13.8% had someone living alone who was 65 years of age or older. The average household size was 2.52 and the average family size was 3.04. In the town, the population was spread out with 25.3% under the age of 18, 10.8% from 18 to 24, 28.0% from 25 to 44, 19.9% from 45 to 64, and 16.0% who were 65 years of age or older. The median age was 36 years. For every 100 females, there were 93.8 males. For every 100 females age 18 and over, there were 86.4 males. The median income for a household in the town was $37,000, and the median income for a family was $39,583. Males had a median income of $35,455 versus $22,692 for females. The per capita income for the town was $16,603. About 6.4% of families and 6.3% of the population were below the poverty line, including 6.9% of those under age 18 and 11.7% of those age 65 or over.