At the average hourly rate SEO providers reported to Ahrefs, $3,000 a month pays for about 27 hours of work and $1,000 for about a third of that. For a roofer, those hours belong on the Google profile, a page for each service, review requests and links from local websites, with each change listed for you to check. Google’s Business Profile help says there is no way to request or pay for a better local ranking, so the retainer pays for work you should be able to see.
$1,000 a month buys from the cheapest fifth of US and Canadian providers
Ahrefs, which sells SEO software, polled providers in every industry. In that poll, 79.1% of US and Canadian providers charge $1,001 a month or more, and providers serving local markets averaged $1,557 a month.
A staff member at a small Long Island roofing company, shopping with about $1,000 a month to spend, wrote on r/SEO that most firms didn’t publish prices, and asked what actually changes between price points.
The firms they liked quoted $3,500 a month or more, and the ones charging $300 to $500 looked likely to be hands-off. Eight roofing marketing agencies’ published prices and contract terms are compared side by side here.
The poll’s average hourly rate was $111. Most providers bill a monthly retainer, and reports and the provider’s software come out of it, so part of what you pay never becomes work on your profile or site. Ask any provider how many hours a month the retainer covers and who does the work.
$1,000 should cover your profile and reviews, and $3,000 should add pages and links
| Retainer | Ask for |
|---|---|
| About $1,000 a month | Work on your Google profile, a way to ask every finished customer for a review, and a monthly list of every change |
| About $3,000 a month | All of that, plus new service and town pages and work on local links |
Your Google profile. Google’s guidelines say to use as few categories as possible and never to choose one just as a keyword. Google treated a Plano roofer we work with as a general contractor. The roofer ranked first or close to it for “general contractor” searches in Plano, which brought no clicks, and between 20th and 90th for roofing searches. Every page on its website carried a roofing title, and its profile listed general contractor as a secondary category. Check that each category on your profile names work you want calls for.
A page for each service you sell. In Whitespark’s 2026 survey of local search experts, a dedicated page for each service topped the list of factors for the regular results below the map, with content about the city next. Ask for the service pages before any town pages.
Reviews. Google’s help page says the number of reviews a business has counts toward its local ranking. In Local Falcon’s analysis of US map results from late 2025, roofers in the map’s top three had a median of 79 reviews. Google bans any incentive for a review, so the requests can’t carry a discount or gift.
Links from local websites. The same help page says the number of websites linking to a business counts too. Ask for a monthly list naming every new site that linked to you, so you can see whether each one is a real local site.
Monthly posts and listing counts can fill a report without adding calls
The owner of a small roofing company wrote on r/localseo that they had paid an SEO provider thousands of dollars for little or no result. The provider seemed to do nothing beyond writing Google Business Profile posts, which the owner could have written for free.
On the same forum, the owner of an 18-location roofing business described a local SEO firm that kept sending monthly reports on how well the business ranked. Over the same months, traffic and calls from one location’s Google profile were flat or falling. The firm said it had built 20,000 Google Maps citations, meaning listings of the business on other sites.
An owner on r/Roofing whose work comes mostly from referrals put it this way: “Everyone wants a monthly retainer, and after months of paying, nothing seems to change.” That owner was weighing a firm that says it charges nothing until 30 keywords reach page one. If you consider a deal like that, get the searches named in the contract and ask how many homeowners type each one.
When a report leads with a count of posts or listings, ask for the calls from your profile and website over the same months.
Some packages and sales calls break Google’s own rules
Check a package, and anyone selling one by phone, for these:
- Keywords added to your business name. Google says the name must match your real-world name, and that adding unnecessary words isn’t allowed and can get the profile suspended.
- Links bought to raise rankings. Google’s spam policies class buying or selling links for ranking as spam, so ask where every link comes from.
- Town pages that funnel visitors to one page. The same policies count pages that only send visitors on to one page as spam, though a town page itself is allowed.
- Pages turned out in bulk with AI. Google also counts many AI-made pages that add nothing for readers as spam.
- A promise of first place. Google says no one can guarantee a first-place ranking, and to find someone else if an SEO promises one.
- A caller who claims to be from Google, or warns that your profile will be lost. Google’s agency rules prohibit both, and Google tells owners to ask anyone who claims to work for it for a name and an email from a google.com address.
Get the monthly work in writing so you can check each line against this list.
Google’s agency rules keep your profile in your name
As of October 2026, Google’s rules for agencies managing someone else’s Business Profile say:
- An agency that charges to manage your profile must tell you in writing, before it starts, that Business Profile itself costs nothing extra, and must show its fee on your invoices.
- It must keep you informed of every change and edit, and can’t change or switch off profile features without your consent.
- You keep ownership or co-ownership of the profile at all times, and Google tells agencies to make you the owner of any profile they create.
- When you give notice, the agency must let you disconnect it and regain exclusive control within 7 business days.
For a serious violation, Google says it may suspend the agency’s Google account and may suspend the Business Profile itself. Before you sign, check that you’re listed as the profile’s owner, since only owners control who has access. These rules cover the profile alone, so get in writing who keeps the website and domain if you leave.
Search Console and separate phone numbers let you check a provider’s report
Search Console is Google’s free report on your website. It shows how often your site came up in Google Search and how many clicks it got, and its indexing report shows which pages Google has stored and can show in results.
A roofing company’s marketing manager on r/SEO compared an agency’s report with Search Console. The report claimed Google had stored more than 400 of the site’s pages, and Search Console showed 43.
Set Search Console up under your own Google account. If a provider offers an audit first, Google’s hiring page says to give it read-only access at that stage. Then ask for every change with its date. Google’s starter guide says some changes take effect within hours and others take several months, and that you should generally wait a few weeks before judging whether one helped.
Search Console counts clicks to your site and nothing after them, so count the calls yourself. A roofing owner on r/Roofing gives every marketing source its own phone number and uses software to count each source’s leads and cost. Put one number on your website and another on your Google profile, and judge the retainer by the inspections they bring in. How to Track Which Marketing Brings In Your Roofing Jobs covers the setup.
Get these answers in writing before you sign
Google’s hiring page suggests several of these:
- How many hours a month the retainer buys, and who does the work.
- Which of the four jobs the month covers: profile, service pages, review requests, local links.
- Examples of past roofing work in your area, and what results they expect by when.
- Whether they follow Google Search Essentials, Google’s rules for websites, and will share every change they make.
- Proof that you own your Google profile, and who keeps the website and domain if you leave.
- Search Console in your name, with separate tracking numbers on the site and the profile.
How to Hire a Roofing Marketing Company Without Getting Burned covers the rest of the hiring process.
Before you pay anyone for Maps work, see where the map ends for your company today with the free Google Maps heatmap. Pick your Google profile and a search, and in a few minutes you’ll see your rank at 49 points around your office, a baseline to hold any provider’s report against.