Johann Puch was born on 27 June 1862 to Slovene peasants in Sakušak near Ptuj (Pettau), part of Lower Styria Slovenia. The eldest son of nine children, he left his family home at the age of eight and at twelve apprenticed as a locksmith in Ptuj. Having finished his training in 1877, he moved to the Styrian capital Graz (Gradec), where he did his military service and from 1885 worked for several employers.