Henry P. Speer was born on February 9, 1839, in Indiana to William Speer and Mary Barnhill. His father was a farmer. Speer grew up and attended school in Wayne, Indiana.
He enlisted in the Union army on September 13, 1861, and he mustered in as a corporal in Company I of the 7th Indiana Infantry later that day. The regiment took part in the Second Battle of Bull Run, the Battle of Antietam, the Battle of Fredericksburg, the Battle of Chancellorsville, the Battle of Gettysburg, the Overland Campaign, and the siege of Petersburg. He mustered out on September 20, 1864.
Speer returned to Indiana after leaving the army, and he married Eliza J. Alford on February 2, 1865. They had at least two children: Flora, born around 1867; and Clyde, born around 1871. They lived in Eagle, Indiana, and Speer worked as a stone cutter. He applied for a federal pension in March 1869 and eventually secured one. By 1870, he owned $600 of personal property. They moved to Pike, Indiana, in the 1870s, and Speer worked as a farmer there. He died on July 5, 1898.