As of 2001 India census, Shahpur had a population of 12,205. Males constitute 52% of the population and females 48%. Shahpur has an average literacy rate of 59%, lower than the national average of 59.5%: male literacy is 69%, and female literacy is 47%. In Shahpur, 17% of the population is under 6 years of age.