Niamatpur Upazila () is an upazila of Naogaon District in the Division of Rajshahi, Bangladesh.
Niamatpur is located at . It has 35,299 households and a total area of 449.09 km<sup>2</sup>. It is bounded by Porsha Upazila on the north, Tanore and Nachole upazilas on the south, Manda and Mahadevpur upazilas on the east, Gomastapur and Nachole upazilas on the west.
According to the 2022 Bangladeshi census, Niamatpur Upazila had 73,523 households and a population of 270,452. 8.11% of the population were under 5 years of age. Niamatpur had a literacy rate (age 7 and over) of 72.63%: 74.81% for males and 70.49% for females, and a sex ratio of 98.68 males for every 100 females. 19,792 (7.32%) lived in urban areas.
According to the 2011 Census of Bangladesh, Niamatpur Upazila had 61,811 households and a population of 248,351. 49,712 inhabitants (20.02%) were under 10 years of age. Niamatpur had a literacy rate (age 7 and over) of 44.71%, compared to the national average of 51.8%, and a sex ratio of 1,026 females per 1,000 males. 5,953 (2.40%) lived in urban areas.
According to the 2022 census, total population was 270,452. Ethnic population was 29,710 (10.98%) in which Santal people was 6,029, Munda people was 7,965, Oraon people was 6,955 and Barman was 3,528.
Twenty years earlier, the number of female inhabitants was lower, and males constituted a slender majority. As of the 1991 Bangladesh census, Niamatpur had a population of 193,197. Males constituted 50.37% of the population, and females 49.63%. This Upazila's eighteen up population was 98,284. Niamatpur had an average literacy rate of 25.8% (7+ years), and the national average of 32.4% literate.
Niamatpur Thana was formed in 1918 and it was turned into an upazila in 1983.
Niamatpur Upazila is divided into eight union parishads: Bahadurpur, Bhabicha, Chandan Nagar, Hajinagar, Niamatpur, Parail, Rasulpur, and Sreemantapur. The union parishads are subdivided into 317 mauzas and 344 villages.