1903 m. baigė Veiverių mokytojų seminariją.
Mokytojavo Sedoje, Gargžduose, Kurtuvėnuose.
Prasidėjus I pasauliniam karui mobilizuotas į Rusijos kariuomenę.
1916 m. baigė Aleksejaus karo mokyklą Maskvoje, paskirtas 133 pėstininkų atsargos pulko 15 kuopos jaunesniuoju karininku, vėliau 15 pėstininkų atsargos pulko 3 kuopos, 773 pėstininkų pulko 6 kuopos jaunesniuoju karininku. Dalyvavo kovose Pietų fronte, pasiekė Rumuniją.
1918 m. paleistas iš kariuomenės kaip liaudies mokyklos mokytojas.
1919 m. mobilizuotas į Lietuvos kariuomenę, paskirtas 1 atsargos bataliono (nuo 1920 08 01 10 pėstininkų pulkas) 2 kuopos jaunesniuoju karininku, vėliau – ūkio kuopos vadu. Suteiktas vyresniojo leitenanto laipsnis. Dalyvavo nepriklausomybės kovose su lenkais.
1920 m. pakeltas į kapitonus.
1923 m. perkeltas į 8 pėstininkų pulką.
1926 m. baigė Aukštųjų karininkų DLK Vytauto kursų Bendrąjį skyrių (VI laida).
1927 m. pakeltas į majorus. Perkeltas į Kariuomenės intendantūrą.
1929 m. paleistas į atsargą, ūkininkavo Šiaulių apskrityje.
1938 m. persikėlė į Kauną.
1940-1958 m. mokytojavo Mozūriškėse, Lapėse, Kaune.
1963 m. mirė Kaune, palaidotas Eigulių kapinėse.
Lietuvos nepriklausomybės medalis (1928 m.)
1. Juozas Kudirka. Veiverių mokytojų seminarija (1866-1918). Vilnius, 1970, p. 76
2. Lietuvos kariuomenės karininkai 1918-1953. Vilnius: Lietuvos nacionalinis muziejus, 2006, t. 6, p. 205