Sheffield is a village in Lorain County, Ohio, United States, along the Black River. The population was 3,982 at the 2010 census.
Sheffield is located at 41°26′53″N 82°5′0″W (41.448009, -82.083397).
According to the United States Census Bureau, the village has a total area of 10.84 square miles (28.08 km2), of which 10.74 square miles (27.82 km2) is land and 0.10 square miles (0.26 km2) is water.
As of the census of 2010, there were 3,982 people, 1,581 households, and 1,160 families living in the village. The population density was 370.8 inhabitants per square mile (143.2/km2). There were 1,666 housing units at an average density of 155.1 per square mile (59.9/km2). The racial makeup of the village was 89.3% White, 4.0% African American, 0.3% Native American, 2.7% Asian, 1.4% from other races, and 2.2% from two or more races. Hispanic or Latino of any race were 6.1% of the population.
There were 1,581 households of which 26.9% had children under the age of 18 living with them, 63.3% were married couples living together, 6.9% had a female householder with no husband present, 3.2% had a male householder with no wife present, and 26.6% were non-families. 21.9% of all households were made up of individuals and 10.7% had someone living alone who was 65 years of age or older. The average household size was 2.51 and the average family size was 2.94.