Cotton is an unincorporated community in Cotton Township, Saint Louis County, Minnesota, United States. The community is located 36 miles north of the city of Duluth at the junction of U.S. Highway 53 and Saint Louis County Road 52. Cotton is located 27 miles south of the city of Virginia.