Craig is a city in Holt County, Missouri, United States. The population was 248 at the 2010 census.
Craig was laid out in 1868. The city was named after the attorney and Missouri politician James Craig. A post office called Craig has been in operation since 1869.
Craig is located at 40°11′32″N 95°22′25″W (40.192220, -95.373617).
According to the United States Census Bureau, the city has a total area of 0.27 square miles (0.70 km2), all land.
As of the census of 2010, there were 248 people, 110 households, and 67 families living in the city. The population density was 918.5 inhabitants per square mile (354.6/km2). There were 137 housing units at an average density of 507.4 per square mile (195.9/km2). The racial makeup of the city was 99.2% White, 0.4% Native American, and 0.4% from other races. Hispanic or Latino of any race were 0.8% of the population.
There were 110 households, of which 25.5% had children under the age of 18 living with them, 44.5% were married couples living together, 10.0% had a female householder with no husband present, 6.4% had a male householder with no wife present, and 39.1% were non-families.