Apie 1684 m. kapinėse pastatyta medinė koplyčia. 1752 m. įsteigta parapija. Bažnyčia turėjo jurisdiką miestelyje. 1792 m. į bažnyčią trenkė žaibas, ji sudegė. Joniškėlio dvaro dvarininko Ignoto Karpio rūpesčiu 1790–1792 m. pastatyta dabartinė mūrinė bažnyčia. Prie buvusios senosios bažnyčios pastatyta klebonija. Vikaras Stanislovas Parkovskis 1803 m. pastatė 5 registrų vargonus. Jie 1828 m. klebono Kibaro iniciatyva padidinti iki 12 registrų. Ignotas Karpis 1808 m. įkūrė parapinę mokyklą. Eustachas Karpis 1820 m. savo lėšomis pastatė medinę prieglaudą. Jos išlaikymui įkurta Labdarių draugija.
1940 m. klebono Juozapo Liubšio rūpesčiu įsteigta altarija. Po Antrojo pasaulinio karo bažnyčia suremontuota.