Roofing Marketing Expert Book Your Audit
Home · Blog · DIY SEO
DIY SEO

SEO for a Roofing Company: 10 Plays You Can Run Yourself This Week

By Tony RomoRoofing Marketing Expert~6 min readUpdated May 16, 2026

Not every roofing contractor needs a full-service SEO retainer on day one. If you're in your first two years of business, running under $500K in annual revenue, or just trying to build enough organic presence to reduce your dependence on lead vendors, there are 10 plays you can run yourself this week that will move your rankings without spending a dollar on a vendor.

These are the same plays I check on every audit. You can do most of them in under an hour each.

10 DIY roofing SEO plays

Play 1: Optimize your Google Business Profile categories

Your primary category should be "Roofing Contractor." Add secondary categories for every service you do: "Roof Repair Service," "Gutter Cleaning Service," and so on. Most roofing companies have one category. Adding three to five moves your map pack visibility in two to four weeks.

Play 2: Upload 10 geotagged job photos this week

Take photos at your next three jobs. Use a free tool like GeoImgr to embed GPS coordinates into the image metadata, then upload with a description that includes the neighborhood and service type. Geotagged photos signal real local service delivery — a ranking factor in competitive markets.

Play 3: Build a review request text template

Write a two-sentence text you can send within 24 hours of every completed job: "Hi [Name], thanks for trusting us with your roof. If you have two minutes, a Google review would mean a lot: [your GBP review link]." Send it to your last 20 customers tonight. Review velocity now outweighs raw review count in map pack rankings.

Play 4: Run a NAP audit on your top five directories

Check Google, Yelp, Angi, Bing, and Facebook. Your name, address, and phone must be identical on every platform — "Suite 100" vs. "#100" is a mismatch. Fix every inconsistency. This takes 90 minutes and often moves local rankings within 30 days.

Play 5: Create one service-area page for your highest-value city

Pick the city or suburb where you most want to win jobs. Write a 400-word page titled "[City] Roofing Contractor" with the services you offer there, a geotagged job photo, a customer name from that zip code, and your phone number in tap-to-call format. Publish it at yoursite.com/roofing-[city]. Build one per quarter.

Play 6: Add LocalBusiness schema to your homepage

Generate a JSON-LD block at schema.org/LocalBusiness with your name, address, phone, service area, hours, and GBP link as "sameAs." Paste it into the <head> of your homepage and validate at Google's Rich Results Test. This item is missing on roughly 60% of roofing sites I audit.

Play 7: Run a free page speed test and fix the top issue

Load your homepage URL into Google's PageSpeed Insights. Look at the "Opportunities" section on mobile. The most common roofing site issue is an uncompressed hero image above 500KB. Download your hero image, run it through Squoosh (free, browser-based), and re-upload it compressed to under 150KB. This single fix often moves your mobile LCP score by 2–3 seconds.

Play 8: Internal link your top three service pages to each other

Go into your roof replacement page and add a natural sentence that links to your storm damage repair page and your gutter installation page. Do the same from those pages back to roof replacement. Internal linking distributes page authority and helps Google understand your service relationships. It takes 15 minutes and has compounding ranking benefit over 60 to 90 days.

Play 9: Write a post about the last major storm in your market

After any significant hail or wind event, write a 400-word post within 48 hours: what happened, what damage to look for, and what homeowners should do first. Include the storm date, affected zip codes, and a NOAA storm report link. These rank quickly for local, time-sensitive searches.

Play 10: Verify your tracking is actually working

Open Google Analytics 4 in one browser tab. Open your website in another. Fill out your contact form. Did the form submission show up as a conversion event in real-time? If not, your analytics is broken and you have no idea how your site is performing. Fix this before you run any paid traffic. You cannot optimize what you cannot measure.

THE PATTERN

Most roofing SEO wins in the first 90 days don't require a retainer — they require attention.

Plays 1 through 5 on this list are free, take under two hours each, and collectively represent the most impactful SEO work I see undone on roofing sites. Do these before you spend a dollar on any vendor. They'll also make your paid campaigns more efficient if you're already running ads.

Once you've run through these plays and want to go deeper, the 10-point roofing SEO services checklist covers the full audit I run before any retainer engagement. And if you want to understand what a legitimate roofing SEO company should be doing with your budget each month, that post breaks it down item by item.

Want me to run the same audit on your live site? Thirty minutes, every leak named, fix-list yours to keep.

See your own conversion leaks named.

Thirty minutes, shared screen, every leak in plain English, ranked by revenue impact. Fix-list yours to keep.

Book Your Audit