Jonathan Beal, 24, also pleaded guilty to abuse of a corpse and tampering with evidence for burying the body of 19-year-old Justine Jackson near the Great Allegheny Passage hiking and biking trail in Meyersdale.
Her remains were found Nov. 11, nearly two months after the date Beal acknowledged killing her, Sept. 14, 2012.
Somerset County public defender Steve Miller said Beal didn't mean to kill Jackson when they argued about whether to reconcile. Miller said Beal didn't want to resume their relationship.
District Attorney Lisa Lazzari-Strasiser said prosecutors agreed to the lesser charge because they weren't sure they could prove Beal intended to kill.
He'll be sentenced Nov. 26.