Defiance is a city located in Shelby County, Iowa. Defiance has a 2026 population of 248. Defiance is currently declining at a rate of 0% annually and its population has decreased by -0.4% since the most recent census, which recorded a population of 249 in 2020.