The national average cost to replace a roof is around $8,000, with most people spending in the range of $5,500 to $11,000. The two largest variables you’ll deal with on a job like this are the square footage of your home (and thus, your roof), and the type of roofing material you choose.