Last updated October 17, 2026
Metal roofing
Architectural shingles
Tile roofing
Owens CorningFree roof inspection with deck photos before we talk money - GAF and Owens Corning certified installation
Roofing Cost Breakdown: The San Diego Homeowner’s Reference for 2026
Most roofing cost guides fail San Diego homeowners before they even get to the second paragraph. They quote national averages built around asphalt shingle tear-offs in Ohio or Texas, then leave you wondering why your concrete tile roof in Clairemont came back at nearly double the “expected” price. This guide fixes that. You’ll learn the actual line items that appear on a San Diego roofing quote in 2026, what those line items should cost, and how to spot the Roofing Warning Signs: A San Diego Homeowner’s Reference Guide contractors use to win the job and surprise you later.
Quick Answer
A full roof replacement in San Diego in 2026 costs between $9,500 and $28,000 for an average 1,800-square-foot home, depending on material. Concrete tile runs $14 to $22 per square foot installed, asphalt shingles run $6.50 to $9.50, and standing seam metal runs $18 to $30. The single biggest variable most online calculators miss is the $1,800 to $3,500 concrete tile disposal fee that comes with tearing off an existing tile roof.
Styles & brands we work with




Table of Contents
- Material-by-Material Cost Table for San Diego
- The Five Line Items That Separate a Complete Quote From a Low-Ball
- Why San Diego Labor Costs Differ From the National Average
- What a Workmanship Warranty Is Actually Worth in Dollars
- How to Audit Any Roofing Quote You Receive
- Common Mistakes to Avoid
- When to Call a Professional
- Frequently Asked Questions
Material-by-Material Cost Table for San Diego
Here is what we’re seeing on San Diego roofs in 2026, priced as installed cost per square foot, including standard underlayment and tear-off of one existing layer. These are realistic ranges, not best-case figures. A square in roofing is 100 square feet, so multiply these numbers by 100 per square if that’s how your quote is written.
| Material | Installed Cost per Sq Ft | Cost for 1,800 Sq Ft Home | Lifespan in San Diego |
|---|---|---|---|
| Asphalt Shingle (Architectural) | $6.50 – $9.50 | $11,700 – $17,100 | 20 – 30 years |
| Asphalt Shingle (Impact-Resistant, Class 4) | $8.00 – $11.00 | $14,400 – $19,800 | 25 – 35 years |
| Concrete Tile (Flat Profile) | $14.00 – $18.00 | $25,200 – $32,400 | 50+ years |
| Concrete Tile (Barrel/High Profile) | $16.00 – $22.00 | $28,800 – $39,600 | 50+ years |
| Clay Tile | $18.00 – $28.00 | $32,400 – $50,400 | 75+ years |
| Standing Seam Metal | $18.00 – $30.00 | $32,400 – $54,000 | 40 – 60 years |
| Modified Bitumen (Flat/Low-Slope) | $8.00 – $13.00 | $14,400 – $23,400 | 20 – 30 years |
Two things stand out here. First, concrete tile is not twice the price of asphalt, but it lasts roughly twice as long. If you plan to stay in the home, the math favors tile on a cost-per-year basis. Second, clay tile is where San Diego pricing diverges most from national guides, because those guides rarely account for the specialized labor and the fragility of the material during installation. Boral and similar manufacturers have improved clay tile profiles in recent years, but the install skill requirement hasn’t changed.
For flat-roof sections, which are common on Mission Hills and Bankers Hill homes with mid-century geometry, modified bitumen and cool-roof TPO are the standards. TPO runs slightly less than modified bitumen, but San Diego’s marine layer means modified bitumen’s thicker surface gets called more often on older decking that needs some forgiveness.
The Five Line Items That Separate a Complete Quote From a Low-Ball
When a San Diego roofing quote comes in suspiciously low, it’s usually because one or more of these five line items was omitted. A complete quote from any legitimate roofing company in San Diego will show every one of them as a separate, priced line. Here’s what each one covers and roughly what it should cost in 2026.
- Underlayment Upgrade (Synthetic vs. Felt): Basic 15-lb or 30-lb felt underlayment runs $0.35 to $0.60 per square foot installed. Synthetic underlayment, which is what we recommend on San Diego homes because it handles the wet season’s intermittent downpours better than felt, runs $0.70 to $1.10 per square foot. On an 1,800-square-foot roof, that’s a difference of roughly $630 to $900. A quote that doesn’t specify which underlayment is in the price is worth clarifying before you sign.
- Decking Replacement Allowance: Nobody can see the plywood or OSB decking until the old roof is off. Rot around skylights, chimneys, and unsealed valleys is common in San Diego, where the winter rains saturate wood that then never fully dries in the coastal humidity. A complete quote will include a per-sheet decking replacement price, usually $95 to $150 per 4×8 sheet, and state that you only pay for sheets actually replaced. Missing this line item means you’ll be handed a change order mid-project, which is exactly how low-ball quotes become expensive jobs.
- Permit Fees: The City of San Diego charges a roofing permit fee that typically runs $800 to $1,500 depending on job valuation and the number of inspections required. Unpermitted roofing work may save you money today, but it will surface on a pre-sale disclosure form and can void the manufacturer’s material warranty. If the quote has no permit line, ask why.
- Title 24 Inspection: California’s Title 24 energy code applies to roofing in specific ways: cool-roof requirements for certain single-family homes, minimum insulation levels at the attic-roof boundary, and compliance documentation. A Title 24 verification on a San Diego roof replacement runs $300 to $800, and it’s required for the final sign-off. Contractors who skip this to keep the price down are cutting a corner you’ll discover at inspection time.
- Haul-Away and Disposal: This is the line item most likely to shock you if it was never discussed. Tearing off a concrete tile roof on an average San Diego home produces 12 to 16 tons of debris. Landfill and transfer-station fees, plus the labor to load and the truck time, add up to $1,800 to $3,500. Online per-square calculators rarely include this because they’re built for asphalt markets where the debris is a fraction of the weight. A tile-to-tile replacement will always carry this line. A tile-to-asphalt replacement will too.
When we sit down with homeowners in Tierrasanta or Scripps Ranch, this is the section where they usually pause and start circling numbers. That’s the right instinct. A quote is either complete or it’s a starting negotiation, and a starting negotiation is not a quote.
Why San Diego Labor Costs Differ From the National Average
San Diego roofing labor runs 20 to 35 percent above the national average, and the reason isn’t just California’s cost of living. It’s a combination of three factors that out-of-market estimators never model correctly.
First, the California prevailing wage environment. While private residential work isn’t legally required to pay prevailing wage, the labor pool’s baseline is set by public works projects that do. Skilled tile roofers and metal roof mechanics in San Diego can earn $35 to $55 per hour, and their employers carry workers’ compensation insurance rates that are among the highest in the country. All of that is reflected in your per-square labor price.
Second, concrete and clay tile work is specialized. Most of the country’s roofing labor pool grows up on asphalt shingle nailing. San Diego’s housing stock is dominated by Spanish and Mediterranean architecture with tile roofs, which requires a different skill set: setting battens, laying tiles in a staggered bond, cutting around hips and valleys without cracking the material, and knowing how to walk a tile roof without damaging it. That specialization commands a premium, and the labor supply for it in San Diego is smaller than you’d expect for a city with so many tile roofs.
Third, Seasonal Roofing Care for San Diego: Year-Round Homeowner’s Guide matters. The October-through-December window, when homeowners realize the winter rains are coming and every roofer in the county gets booked simultaneously, drives labor pricing up 10 to 15 percent. The same crew performing the same job in March will quote lower than they would in November, because they’re not fielding six calls a day. We tell every homeowner who asks that if their roof has another season in it, scheduling a spring or summer replacement will save them real money. If it doesn’t have another season, don’t risk it, but know that the fall premium you’re paying is real and universal.
What a Workmanship Warranty Is Actually Worth in Dollars
Warranty coverage is the least understood part of any roofing quote, because every contractor says they stand behind their work. What matters is what the warranty covers, for how long, and whether it’s in writing. Here’s how to put a dollar value on the risk difference between a 1-year warranty and a 10-year warranty.
Manufacturer material warranties cover the shingle or tile itself, but most roofing failures are not material failures. They’re workmanship failures: inadequate underlayment laps, improper flashing around penetrations, fasteners placed in the wrong part of the shingle, sealant applied unevenly. The manufacturer won’t pay for any of that. That’s why the contractor’s own workmanship warranty is the one that actually protects you.
Let’s say you have a roof leak in year three that requires replacing a section of flashing and resealing a valley. On a tile roof, that repair involves lifting tiles, replacing the flashing, rebedding the tiles, and hauling materials. The job runs $1,200 to $2,400. With a 10-year workmanship warranty that covers flashing and sealing, you pay nothing. With a 1-year warranty, you pay the full amount. Now imagine a second, smaller issue in year six: $400. A third in year eight: $700. The total risk you’re absorbing over a decade for a shorter warranty is realistically $2,000 to $4,000. If a contractor’s quote is $1,500 cheaper but carries a 1-year warranty instead of a 10-year, you haven’t saved money. You’ve traded known savings for unknown future expenses.
At Mercer Roofing, every repair and installation carries a written warranty in the contract, not in a sales conversation. The 365-Day Done Right Promise is included on every job: if the work isn’t right within a year, we make it right. That’s a short-term certainty. Many of our full replacements carry longer workmanship coverage, priced into the quote, stated in writing, and never verbal-only. When you’re reading a quote, look for the warranty clause as a written line item with defined coverage. If the warranty section is one sentence, it’s not a warranty, it’s a hope.
How to Audit Any Roofing Quote You Receive
Use this section as a checklist when you have a quote in your hands, whether it’s from Mercer Roofing or anyone else. A good quote will pass this audit in under five minutes. A bad one will fail it in under two.
- Check for the five line items from earlier. Underlayment, decking allowance, permits, Title 24 inspection, and haul-away should each appear as a separate line with a price or a stated range. If any are missing, ask where they are. If the answer is “that’s included,” ask why it isn’t shown as included.
- Look for the material brand name. A quote that says “architectural shingles” without naming the manufacturer (GAF, CertainTeed, Owens Corning, IKO, Atlas, Tamko, or Boral, depending on the job) is leaving room to substitute a lower-grade product. Insist on the brand name and the specific product line in writing.
- Verify the underlayment type. Should say 15-lb felt, 30-lb felt, or synthetic with the product name. If it just says “underlayment,” add it to your questions list.
- Check the warranty clause. It should state the workmanship warranty term in months or years, describe what’s covered (leaks, flashing, sealant), and describe the remedy (we fix it, no charge). One-sentence warranties are red flags.
- Look for the payment schedule. California law caps deposits on home improvement contracts at 10 percent or $1,000, whichever is less. Any contractor asking for more upfront is breaking state law. The schedule should tie payments to work milestones, not to calendar dates.
- Verify the permit commitment. The quote should state that the contractor will pull the permit and schedule inspections. If the homeowner is expected to pull the permit, the price should drop accordingly, and you should know why.
Legitimate extras versus padding: A legitimate quote may include charges for roof access difficulty (steep pitch, second-story work, tight side-yard access), reinforcement of existing decking beyond simple replacement, and updated ventilation or insulation if it’s legally required under Title 24. Padding looks like flat “miscellaneous” line items over $500 without a description, a “project management fee” that isn’t explained, or a “fuel surcharge” on top of an already-complete quote. If you can’t explain a line item on your own quote to a neighbor, the contractor should be able to explain it to you in a phone call.
We’ve audited quoted work we’ve been called in to repair after the fact, and the pattern is consistent. The missing line items on the original quote show up later as change orders, and the homeowner, now with a torn-off roof and a deadline, pays them. That’s not how a complete quote works. At Mercer Roofing, a written price is provided before any work starts, every time. No line item should be a surprise on the invoice.
Common Mistakes to Avoid
- Comparing quotes by total price only. A lower total almost always hides an omitted line item or a substitution. Compare line items side by side, or you’re comparing two different jobs with two different roofs.
- Trusting a quote from a driveway estimate. A contractor who quotes a roof replacement without walking the roof or checking the attic hasn’t seen what they’re pricing. San Diego roofs have valleys, cricket details, and decking conditions that you cannot price from the ground.
- Skipping the permit to save money. Unpermitted roofing work in San Diego can affect your ability to sell the home and can give your insurance company a reason to deny a future claim. The $800 to $1,500 permit fee is cheap insurance against a much larger problem.
- Choosing the cheapest underlayment. On a San Diego tile or shingle roof, the underlayment is your waterproofing layer. Tile and shingles shed water, but underlayment keeps it out of your house. Saving $700 on felt underlayment to spend $3,000 on a leak repair later is a poor trade.
- Replacing a roof in October, by necessity not choice. If your roof can wait until spring, wait. You’ll pay 10 to 15 percent less for the same labor. If it can’t wait, replace it now and don’t look back, but understand the premium you’re paying is a timing cost, not a scam.
- Not verifying who’s actually doing the work. Subcontracted crews are common in San Diego roofing. Ask whether the workers on your roof are employees of the company you hired or subcontractors, and verify that whoever is on the roof carries their own workers’ compensation coverage. If an uninsured worker is injured on your property, the homeowner can be liable in California.
- Believing a warranty that isn’t written. A verbal promise to “take care of you” has no legal weight and a contractor’s memory of it will differ from yours after a year. The warranty should be a written clause in the contract with defined coverage, duration, and remedy.
When to Call a Professional
Roofing work on a San Diego home involves heights, slopes, and materials that are dangerous to handle without training and insurance. Lifting concrete tiles, working around skylights, and walking on steep pitches are not weekend projects. If you can see daylight through the attic decking, if there’s visible water staining on a ceiling, or if tiles are cracked and sliding after a winter storm, don’t wait. A small leak becomes a structural problem faster than most homeowners expect, especially in San Diego’s winter wet season when the roof doesn’t dry out between storms. Mercer Roofing Co San Diego offers free estimates in San Diego, and one call to (619) 810-5520 gets you a written price before any work starts. If you just want a second opinion on a quote you’ve already received, we’ll walk through it with you.
Frequently Asked Questions
A full roof replacement in San Diego runs $6.50 to $30 per square foot installed, depending primarily on material choice. An average 1,800-square-foot home ranges from about $11,700 for architectural asphalt shingles to $54,000 for standing seam metal or premium clay tile. Concrete tile, the most common material in San Diego, falls between $14 and $22 per square foot installed, meaning most tile replacements land between $25,000 and $40,000. Call (619) 810-5520 for an exact quote on your roof, with every line item written out.
San Diego roofing costs more because labor is more expensive, tile disposal fees are unusually heavy, and local code compliance adds line items that don’t exist in most markets. Skilled tile and metal roofers in San Diego earn wages set against the state’s public works baseline, and the sheer weight of concrete tile debris, at 12 to 16 tons per average home, produces disposal fees of $1,800 to $3,500 that national per-square calculators never include. Add in Title 24 inspection requirements and city permit fees of $800 to $1,500, and the San Diego premium is structural, not mark-up.
A concrete tile roof replacement in San Diego typically costs $14 to $22 per square foot installed, including tear-off, underlayment, new tiles, and haul-away. On an average 1,800-square-foot home, that’s $25,200 to $39,600. Existing concrete tile tear-off and disposal is a major component of the cost and runs $1,800 to $3,500 on its own. If your quote seems far below this range, check whether the disposal fee and underlayment are actually included.
Converting a tile roof to architectural asphalt shingles in San Diego typically costs $8 to $12 per square foot installed when you include the heavier tear-off and disposal of the existing tile. The conversion adds about $1 to $2 per square foot over a standard shingle over shingle replacement because of the tile debris weight. You’ll also want to confirm that the roof framing is adequate for the lighter material, an issue that rarely comes up in reverse.
Yes, the City of San Diego requires a building permit for roof replacements, and the permit fee typically runs $800 to $1,500 depending on job valuation. See our detailed guide to Roofing Permits, Codes & Inspections in CA: What You Need to Know. The contractor should pull the permit, schedule the inspections, and include the fee as a line item on your quote. A quote with no permit line is either incomplete or the contractor plans to work illegally, which creates problems for resale and insurance claims later.
It shouldn’t, unless decking damage is discovered under the old roof that no one could see before tear-off. A complete quote includes a stated per-sheet price for decking replacement, so you know the cost of any rot or damage before it’s found. Watch out for change orders that appear mid-project for items that should have been in the original quote, like underlayment or disposal. At Mercer Roofing, the price is written before work starts, and unexpected decking is priced per sheet, agreed to in advance. Call (619) 810-5520 to get your written quote.
The Bottom Line
San Diego roofing costs in 2026 are predictable when you know what’s actually being priced. Expect $6.50 to $30 per square foot installed depending on material, with concrete tile, the city’s default, running $14 to $22 per square foot. The five line items that catch people off guard are synthetic underlayment, decking allowance, permit fees, Title 24 inspection, and the $1,800 to $3,500 tile disposal fee. Compare quotes line item to line item, insist on a written warranty with defined coverage and duration, and verify the permit will be pulled by the contractor. A complete quote from Mercer Roofing Co San Diego home shows every item, in writing, before you sign anything. For roof repair in San Diego or a full roof installation in San Diego, call (619) 810-5520 and we’ll put the numbers in front of you, no surprises.
Written by Grant Whitlock, Owner at Mercer Roofing Co San Diego, serving San Diego since 2000. Explore more guides & resources.
See the difference
Before
After
Before
After
Before
After