Roofing SEO is the work that gets your company into the Google map results and the ordinary results when someone searches for roof repair, a new roof or storm damage help near them. It comes down to six things: a Google Business Profile that follows the rules, one page for each kind of roofing work, steady reviews, a few real local links, photos of finished jobs, and calls you can trace back to search.
It isn't instant and it isn't free of cost. Google says some changes take effect in a few hours and others could take several months (Google). Paid help often costs $501 to $1,000 a month, the most common SEO retainer in one survey of 439 providers across all industries (Ahrefs). The rest of this guide shows where the time and money go.
This page keeps to search. Storm plans, insurance wording, door-knocking and estimate follow-up are in our roofing marketing ideas. The wider mechanics of local search are in our HVAC SEO guide, and apply to roofers too. We sell marketing to roofing companies, so we have an interest here. Everything below can be done without us.
- Google profile: real name, address hidden, service area within about 2 hours, one profile
- Photos of finished roofs added every month
- Separate pages for repair, replacement, storm and insurance, and commercial work
- License number, insurance and warranty on every service page
- A project page for each finished job worth showing, with the town named
- No copied city pages
- A review request sent after every job, and every review answered
- Links from manufacturers, suppliers, inspectors and agents you work with
- UTM tags on your profile link, call tracking on your site, a source on every job
How roofing searches split
Roofing searches come in a few shapes, and each needs a different page. Sort what you want more of before you write anything:
| Search type | Examples | What the searcher wants | Where it should land |
|---|---|---|---|
| Repair | roof leak repair, missing shingles, flashing repair | Someone soon, at a fair price | Repair page, phone number at the top |
| Replacement | new roof cost, roof replacement, metal roof installation | A price range, proof and someone to trust | Replacement page, one per material you actually fit |
| Storm and insurance | hail damage roof, storm damage roof repair | Help, and a clear explanation of the claim | Storm page, written carefully for your state |
| Commercial | flat roof repair, commercial roofing contractor | A contractor for a building, often a manager | Its own page, only if you do this work |
| Research | metal vs shingle roof, signs you need a new roof | An answer | An article linked to the right service page |
Your own phone calls are the best keyword research you have. Homeowners rarely say "roofing system". They say "water coming through the ceiling" or "shingles in the yard". Google Search Console shows which searches already bring people to your site. Use their words on your pages.
Your Google Business Profile
This is where to start, because it costs nothing and it's what appears in the map. Google says local results depend on relevance, distance and prominence, and that "there's no way to request or pay for a better local ranking" (Google). Distance is the part you can't change. You'll rank best near your base, so don't expect to top the map 50 miles away.
Roofers break four of Google's rules more than most (Google):
- The name. Google says "including unnecessary information in your business name isn't permitted". "Smith Roofing" is fine. "Smith Roofing, Hail and Storm Experts" isn't.
- The address. If customers don't come to your office, hide the address and set a service area instead.
- The service area. Google says it shouldn't extend farther than about 2 hours' drive from your base. Following storms into the next state with new listings breaks this.
- Extra profiles. A rented mailing address where you don't work isn't eligible, and there should be only one profile per business.
Then fill it in properly: a primary category that matches your main work, services listed in plain words, and accurate hours. Photos matter more for roofers than for most trades, because the work is visible from the street. Google's photo rules ask for JPG or PNG files between 10 KB and 5 MB, 720 by 720 pixels recommended, in focus, well lit and without heavy filters (Google). Add finished roofs, crews at work with their permission, your trucks and your yard. Add a few every month, not 200 at once.
One page for each kind of work
A single "Services" page can't rank for repair, replacement, storm and commercial searches at once, because each searcher wants something different. Give each its own page. Every one of them needs your phone number at the top, a way to request an inspection, your license number and a few reviews that mention that kind of job.
Roof repair
Say what you fix, how fast you can usually come out, and how you charge for an inspection or a small repair. If you tarp roofs in an emergency, say so and say when. List the repairs you'd rather not do, too, such as patching a roof that needs replacing, and explain why. That honesty is rare, and it builds trust.
Roof replacement
This is your biggest page, and the one homeowners study longest. Explain how you quote, what's included (tear-off, underlayment, flashing, cleanup, disposal), how long a typical job takes for you, and what warranty comes from you and what comes from the manufacturer. Give each material you really install its own section or page: asphalt shingles, metal, tile. Only list brands you're certified for, and link to their contractor locator if you're on it.
Storm and insurance work
This page can rank well after a storm, and it can also get you in trouble. Rules on what a roofer may say about claims differ by state. In Texas, for example, it is illegal for a contractor to offer to waive, rebate or absorb a deductible, a roofer can't act as a public adjuster, and the state's rules count a website as an advertisement (TDI). So write what you do: inspect, document the damage with photos, give a written estimate and answer questions. Leave out promises about what an insurer will pay. Have a lawyer in your state read it. Our roofing marketing ideas go further on storm plans and claim wording.
Write it calmly. The FTC warns homeowners that scammers may come to the door after a windstorm, and tells them to check license and insurance and get three written estimates (FTC). A page that helps them do that, with your license number and how to verify it, reads very differently from "free roof" copy.
Commercial roofing
A property manager or building owner searches differently from a homeowner and needs different proof: the roof systems you work on (such as TPO, EPDM or modified bitumen, if you really do), maintenance contracts, how you work around tenants, and insurance limits. Give it its own page only if you take this work. One real commercial job, written up properly, is worth more than a list of systems.
Structured data
Add LocalBusiness markup with the most specific subtype. Google requires a name and address and recommends the most specific type available (Google), and schema.org has a RoofingContractor type. Google also says it doesn't guarantee that features using structured data will show, so add it once, correctly, and move on.
Why city pages hurt more than they help
The most common roofing SEO package is a page for every town in a 50-mile radius, each the same text with the town name swapped. Don't buy it. Google's spam policies name "multiple domain names or pages targeted at specific regions or cities that funnel users to one page" as doorway abuse, and call many pages generated mainly to manipulate rankings scaled content abuse (Google). Those pages also don't beat distance, which is one of the three things Google ranks on.
Do this instead. Write a page for each finished job worth showing: the town, the problem, the material, what you did, and before-and-after photos taken with the owner's permission and with no house number. Google's starter guide says to put sharp images near the text they relate to and to give them descriptive alt text (Google). Link each project from the matching service page. Over a year, the towns where you do the most work end up with real pages about real roofs. If a town gets enough of them, a short page listing those jobs is honest. Google's guidance on helpful content asks whether a page shows first-hand expertise, and warns against using generative AI to produce large amounts of text without oversight. A project page passes that test. A swapped-name page doesn't.
Reviews
Reviews help you rank and decide who gets the call once you're on the list. Google says "more reviews and positive ratings can help your business's local ranking" (Google). BrightLocal's 2026 survey of 1,002 US adults shows why the habit matters more than a big push once a year (BrightLocal):
Roofing jobs come in bursts, so make the ask part of closing every job: a text when the crew leaves, with a photo of the finished roof and a direct link. Reply to every review in your own words. Don't pay for positive reviews or tie a gift to one. Our roofing marketing ideas cover the FTC's rule on that.
Local links
Prominence partly depends on "how many websites link to your business" (Google). Buying links for ranking breaks Google's spam policies. Paid links for advertising or sponsorship are allowed if they carry a nofollow or sponsored tag (Google), so a sponsorship link is fine for referrals but isn't a ranking shortcut. Good links for a roofer come from people you already work with:
- Shingle and metal manufacturers' contractor locators, if you hold their certification.
- Your roofing supply house, if it lists contractors.
- Home inspectors, real estate agents and property managers who send you work.
- Your chamber of commerce and any state roofing association you belong to.
- Local teams, schools and charities you really support.
- Local news, when you have something useful to say, such as how to check a roof safely after hail.
Skip offers that arrive by email promising links. They are usually what the spam policies describe.
Tracking calls back to search
Rankings aren't the result. Signed jobs are. Your Google profile's performance page counts "the number of times a customer clicked on the call button" and the number of clicks on your website link (Google). That's a start, but it misses people who dial your number by hand.
Three steps close the gap. Add UTM tags to the website link on your profile, so visits from it show up separately in Google Analytics. Google says to always use utm_source, utm_medium and utm_campaign (Google). Use a call tracking number on your website, and on your profile only with care: Google requires a number under your direct control and bars numbers that redirect callers elsewhere (Google). Keep your main number listed and consistent. Then add a "how did you find us" field to every job in your software, and fill it in.
- Calls and website clicks from your Google profile
- Visits from the tagged profile link, and calls to your website tracking number
- Inspections booked and jobs signed, by source
- Clicks to each service page, from Search Console
- New reviews, your rating and replies sent
- Project pages and photos added this month
What roofing SEO costs, and whether it pays
There are three ways to pay for it. Doing it yourself costs time: a few hours a week for photos, reviews and one good page a month. A freelancer or agency costs money. The only survey we found with real sample sizes covers SEO providers of every kind, not roofers, and dates from 2024:
| Who does it | Typical monthly cost | Source |
|---|---|---|
| You | Your time, plus any software | None needed |
| Freelancer | About $1,349 on average | Ahrefs, 2024 |
| Agency, most common retainer | $501 to $1,000 (20.4% of providers) | Ahrefs, 2024 |
| Agency, average | About $3,209 | Ahrefs, 2024 |
The same survey found 68.8% of providers charge $2,000 a month or less, and the average hourly rate was $111 (Ahrefs). For what the rest of a contractor's marketing costs, see our home service marketing cost guide.
Whether it pays depends on the size of your jobs. Here is the break-even arithmetic, with example numbers:
| SEO fee, example at $1,000 a month | $12,000 a year |
| Replacement job, example $12,000 at 30% gross margin | $3,600 gross profit |
| Replacement jobs to break even | About 3.3 a year |
| Repair job, example $600 at 40% gross margin | $240 gross profit |
| Repair jobs to break even | About 50 a year |
Because one replacement covers so much, a roofer can often afford SEO sooner than a trade with small tickets. The catch is the wait: you pay for months before the jobs arrive, and no one can tell you exactly how many. Agree a review date before you start, and judge it then by signed jobs, not by rankings.
How long it takes
Nobody can promise a date. Google's starter guide says some changes take a few hours and others could take several months (Google). Google's advice on hiring an SEO says "no one can guarantee a #1 ranking on Google", and suggests asking what results to expect and in what timeframe. Profile fixes are the quickest to make, service pages come next, and links and project pages build slowly. Your market and your rivals matter more than any calendar.
If you hire someone, ask these questions as well:
- Who owns the website, the Google profile and the Search Console account? It should be you.
- Will you build town pages? Show me one.
- Where will links come from?
- Will you report calls and signed jobs, or only rankings?
- What happens to the site and the profile if I leave?
Ask us the same. Our Essentials plan, at $399 a month, runs your website, Google Business Profile and review requests. Scale, at $699 a month, adds a page for each service and each main town you cover, plus call tracking. Ad spend, if any, is separate. See what we run for roofers and the full plans and pricing.
