Professional roofing contractors typically provide estimates of materials needed for roofing, including the number of shingles needed. Simple geometric calculations can provide a rough estimate.
Calculate the square footage of the roof
Multiple the length times width for every flat surface on your roof, including dormers. Add together all the totals to get the total square footage.
Divide the square footage by 100
Shingles are sold in "squares," which are 100 square foot sections of roofing. Unless you are applying shingles directly to an already existing asphalt roof, you probably also need the same amount of underlayment. Divide the roof's total square footage by 100 to determine the number of squares of shingles needed.
Add an extra 10 percent
Add 10 percent to your total to make sure you have enough shingles for trim.