The new deal is sweet reward for the popular big man, who has produced one of his most durable and consistent seasons after an injury-plagued career.
"It's really exciting for me. We got it all done this week, which is really good," Spangher told AFL.com.au.
"I suppose my focus this year was to have a bit more continuity on the field and then whatever comes from that was going to be the reward.
"So fortunately that's the process that we've stuck to and it's worked out well at this stage."
Click here for all contract news
Spangher has played 13 games this year and is in line to finally reach the 50-game milestone in next weekend's preliminary final.
It has taken him nearly nine seasons on AFL lists – including five at West Coast and two at the Sydney Swans - to get there.
"I suppose I'm lucky – I look at it that way," Spangher said.
"I know many blokes who are good footballers that I've come through with who haven't been given the same opportunities to get their body right and things like that.
"So I suppose I'm pretty thankful to all the clubs, but especially now Hawthorn for giving me an extended opportunity."
The 27-year-old still dreams of playing in an elusive premiership after watching his teammates at West Coast in 2006, the Swans in 2012 and last year at Hawthorn taste the ultimate success.
This season is shaping up to be another chance for the 195cm defender.
Spangher is favoured to hold his position for the preliminary final ahead of "good mate" Ryan Schoenmakers.
Both players missed out on last year's flag and are seemingly battling over one spot in Hawthorn's defence.
"We're pretty close. We're very good mates, we’re close in age and have similar interests," Spangher said.
"We're just one example – there's other examples too – but unfortunately that's just the nature of the business.
"I suppose it's healthy in a way to have that competitive edge but blokes missed out last year, I've missed out a few times.
"It's nice to have that competitive edge going into the finals; it's a good place to be."
Twitter: @TravKing_AFL