
Ten months in, you get a report. It’s fourteen pages. There are graphs. Impressions are up 340%. Something called “keyword visibility score” has moved from 31 to 47. Your phone rings about as often as it did last March.
When you ask the obvious question, you get the standard answer: SEO takes time, you have to be patient, the algorithm updated. And there’s just enough truth in that to be hard to argue with, which is exactly why it works.
Here’s the structural problem. Local SEO genuinely is slow — the compounding parts of it take six to twelve months, and anyone promising page one in thirty days is lying. But “slow” and “nothing is happening” produce identical-looking months if you don’t know what to look at. A good provider in month two and a bad provider in month two both show you a flat call volume. The difference is what’s underneath it, and there are specific, checkable things that should exist by specific dates.
So this piece does two things. It gives you a month-by-month of what should actually be happening in a local SEO program, and for each stage, the evidence you’re entitled to ask for. If your provider can’t produce it, you’re not being impatient. You’re being billed.
What’s in this guide
- The honest range — and why nobody can give you a date
- The four things that set your timeline
- What moves first, what moves last
- Month by month, and what to demand at each stage
- If none of this has happened by month four, you’re paying for nothing
- Vanity metrics versus the three that matter
- How to read a padded report
- What this costs in Texas, and what nobody knows
- Questions contractors actually ask

The honest range — and why nobody can give you a date
For a contractor with an existing website, a verified profile and some review history, the realistic shape is this: technical and profile work lands in weeks one through four, the first long-tail organic movement shows up somewhere in months two through four, and map pack movement on the terms that actually make you money — the ones with your trade plus your city and no qualifiers — takes six to twelve months, if it comes at all.
That last clause matters. Google’s own documentation on local ranking says the quiet part out loud:
There’s no way to request or pay for a better local ranking on Google.
Google Business Profile Help — Improve your local ranking on Google
Which means every timeline anyone gives you, ours included, is an estimate built on what usually happens, not a delivery date. The correct response to a vendor who guarantees a ranking by a date is not to negotiate the date. It’s to stop the meeting.
There are two different clocks running. Work should be visible within thirty days — you can see a rebuilt page, a corrected category, a review request system that’s actually sending. Results lag that work by months. A provider who can’t show you the first clock is not slow. They’re not working.
The four things that set your timeline
Whether you have a real website at all
If you’re starting from a template site that a marketing company owns, or a Facebook page and nothing else, add three to four months before anything else can even start compounding. Organic results depend overwhelmingly on on-page content — in Whitespark’s 2026 practitioner survey, on-page signals account for roughly a third of local organic placement — and you cannot optimise a page that doesn’t exist.
This is also the moment to find out whether you own the domain and the content, because if you don’t, you’re about to spend a year improving someone else’s asset. We walk through how to check in do you actually own your contractor website.
Competitive density in your specific city
This is the variable nobody prices correctly. An HVAC company in a Houston suburb is competing against dozens of established profiles inside a ten-mile radius, several of which have eight years of review history. The same trade in Lubbock or a Hill Country town might be competing against four. Same work, same budget, radically different timeline — and the density is knowable before you start, which is why an honest proposal names it.
Where you’re starting from
A profile that’s already ranking fourth or fifth for its money terms can often be moved into the top three in a couple of months, because the hard part — relevance and prominence — is largely built. A profile that isn’t ranking in the top twenty is a different project entirely. Ask any provider to show you your current position on a rank grid before they quote you a timeline. If they quote without looking, the quote is fiction.
Whether the map pack is even the right target
If the city you want is forty miles from your shop, no amount of time will produce a map pack result there, because proximity to the searcher is structural rather than earnable. That’s a whole separate problem and we’ve covered it in detail in why you don’t show up on Google Maps in every city you serve. For our purposes here: a timeline that promises map pack movement in a city where map pack movement isn’t possible will never come true, no matter how long you wait.
What moves first, what moves last
Local SEO signals don’t ripen at the same rate. Understanding the order is the single most useful thing for judging whether a quiet month is normal or not.
When each signal typically starts moving
Approximate windows for a contractor with an existing site and a verified profile. Bars show when movement usually begins and when it’s typically established.
Most contractors stop at “are we ranking yet.” That is not analysis. The question in month two is whether the inputs to a month-eight ranking exist yet — because if they don’t, month eight is already lost and nobody will tell you until month nine.
Find out what’s actually been done to your listing
The free Lead Engine Scorecard audits your current map pack and organic position city by city, your profile configuration, and your review velocity — so you can see for yourself whether the last six months of retainer produced anything.
Get the free Scorecard
Or call (726) 224-4920 — same business day reply.

Month by month, and what to demand at each stage
Print this. The right-hand column is the part that matters, because it converts “trust me” into something you can verify in ten minutes without knowing anything about SEO.
| Window | What should be happening | Evidence to demand |
|---|---|---|
| Month 1 | Baseline rank grid captured. Primary and secondary categories audited against the top three competitors. Service areas, hours and attributes corrected. Call tracking and Search Console connected. Technical crawl of the site, fixes scheduled. | A dated baseline rank grid image. A before/after screenshot of your profile categories. Proof that call tracking is live — make a test call and ask them to show it in the log. |
| Month 2 | Page work shipping — real service pages, not just title tag edits. A review request process running and producing reviews weekly. First profile posts and job photos uploaded. Citation inconsistencies on the majors cleaned once. | URLs of pages published or rewritten this month. A count of reviews received in the last 30 days. The photo upload log in your profile. Not a list of tasks — links you can click. |
| Month 3 | Long-tail organic terms starting to move. Profile view and discovery-search counts up. First real local links or mentions earned. Content plan for months 4–6 agreed. | Search Console query report showing impressions and clicks by query, exported. A second rank grid on the same terms as month one. The specific URLs of any links earned. |
| Months 4–6 | Map pack movement on secondary and modifier terms (“emergency”, “24 hour”, neighbourhood names). Review count and recency clearly ahead of where you started. Conversion work on the pages that get traffic. | Rank grid comparison across three dated points. Call volume from tracked numbers, month over month. A list of terms where you moved and terms where you didn’t. |
| Months 7–12 | Money terms competitive in the map pack in your core radius. Organic city pages ranking in surrounding markets. Booked-job attribution possible. | Position on the three or four terms you agreed were the money terms on day one — not a basket of 200 keywords. Calls, and where they came from. |
Notice what’s absent from the evidence column: nothing in it requires you to take anybody’s word for anything. A rank grid is a picture. A published URL either exists or it doesn’t. A test call either shows up in the tracking log or it doesn’t.
If none of this has happened by month four, you’re paying for nothing
Month four is the fair cutoff. Month two is too early to judge, month six is late enough that you’ve spent real money. By the end of month four, all of the following should exist. Ask for them in one email, together, and give a deadline.
- Two dated rank grids on the same set of terms and the same geography — one from month one, one from now. Not “keyword visibility,” not a score. A grid.
- A list of every page published or materially rewritten, as clickable URLs with dates. If the answer is “we optimised your existing pages,” ask which ones and what changed.
- Your Search Console query export — not their dashboard’s summary of it. You own that property; you should have login access to it.
- Review count and dates for the last 90 days. If the number is zero, the review program does not exist, whatever the report calls it.
- The list of links or local mentions earned, with URLs. Directory submissions are not links earned; those account for roughly 6% of map pack placement in the 2026 factor weights and can be done once, not billed monthly.
- Call volume from a tracked number, month by month, with the recordings or logs available to you.
- A straight answer to one question: for each target city, are we competing in the map pack or in organic, and why.
Three outcomes. They send it all within a week — good, the work is real even if the results are slow. They send some of it and explain the gaps specifically — probably fine, keep going with a tighter scope. They send another dashboard, get defensive, or explain that SEO is a long game — that’s your answer, and it has nothing to do with how long SEO takes.
Before you sign anything, ask whether Google Business Profile ownership, Search Console, Google Analytics and the domain registrar will be in your accounts with your provider added as a manager. If a vendor holds those in their own accounts, the cost of leaving them isn’t the notice period — it’s starting over. This is the single most common way contractors get trapped, and it costs nothing to prevent on day one.
Vanity metrics versus the three that matter
Reporting software makes it trivially easy to fill fourteen pages with numbers that always go up. Here’s how to sort them.
| Metric | Why it looks good | What it hides |
|---|---|---|
| Impressions / profile views | Always rises with any activity, and rises fastest from a low base. | Impressions for “hvac repair near me” and for “how does a heat pump work” count the same. Useful as a direction, worthless as a result. |
| Keywords ranking / visibility score | A vendor chooses the keyword set. Adding easy terms raises the score without changing anything. | Whether you rank for the four terms that actually produce booked jobs. |
| Average position | Blends hundreds of terms into one number that drifts upward as long-tail terms accumulate. | Map pack position on a money term is 1, 2, 3 or nowhere. Averaging it with position 46 on a blog post is meaningless. |
| Website sessions | Traffic is real and easy to grow with content that no buyer reads. | Whether any of it converts — the exact failure we unpack in traffic up, phone silent. |
| Map pack position, money terms, from the target city | — | Nothing. This is the one to track. Three to five terms, one grid, same dates each month. |
| Tracked calls and form fills | — | Nothing, provided the number is tracked and the recordings exist. |
| Booked jobs from organic and maps | — | Nothing. Hardest to instrument, and the only one that settles the argument. |
One caution before you set expectations on call volume. The most-cited dataset on what a Google Business Profile actually generates is BrightLocal’s GMB Insights study of 45,000 businesses — and the data in it is from September 2017 to December 2018. It’s old, the interface has changed several times since, and anyone quoting it as current is being careless. It’s still the best public baseline that exists for trade categories, so here it is with the date attached.
Median calls per month from a Google Business Profile
By trade category. BrightLocal GMB Insights study — data collected September 2017 to December 2018.
How to read a padded report
The fastest tell is a statistic you can’t trace. The local SEO industry runs on a handful of numbers that get repeated so often they’ve stopped being questioned, and the most common one is that 42% of clicks go to the local pack.
We tried to source it. It has no traceable origin. One page attributes it to a Moz study that doesn’t contain it; another states it with no attribution at all; the trail ends there. The same is true of the local pack click-through rates by position you’ll see quoted as 17.8%, 13.6% and 10.4% — attributed to BrightLocal, not present in BrightLocal’s published research.
We’re not saying the local pack doesn’t matter. We’re saying that if a deck opens with a number nobody can source, you should read the rest of it differently. The verified version of that same argument is less dramatic and more useful: the Whitespark panel of 47 local search practitioners puts Google Business Profile signals at about 32% of map pack placement and review signals at 20%, and they’re clear that these are practitioner estimates, not figures from Google.
Pick the three most impressive numbers in it. For each, ask: who published this, in what year, and with what sample size? A real provider answers immediately or says “I’d have to check that.” A padded report produces a pause, then a re-explanation of why the number is directionally correct anyway.
What this costs in Texas, and what nobody knows
You’ll be quoted a wide range, and the range itself is the honest part.
| Tier | Monthly | Source quality |
|---|---|---|
| Freelancer / micro-agency | $800 – $2,200 | Vendor self-reported |
| Full-service agency | $3,500 – $5,500 | Vendor self-reported |
| Enterprise / multi-location | $6,000 – $8,500 | Vendor self-reported |
Two practical consequences. First, price tells you almost nothing about timeline — a $5,000 retainer in a dense Houston submarket may take longer to produce a map pack result than a $1,500 engagement in El Paso, because density, not spend, sets the clock. Second, the deliverable list matters more than the number — ask what is actually in scope at each tier, in writing. The broader budgeting question, including build costs, is covered in what a contractor website actually costs in Texas.
One more timeline factor most proposals ignore entirely: AI assistants are now a real referral channel, and they build their picture of your business from different inputs and on a different schedule than Google’s map pack does. If nobody has mentioned that to you, ask about it — we’ve written up the mechanics in how AI actually picks which contractor to recommend, and it belongs on a separate line item with its own timeline.
Questions contractors actually ask

How long does local SEO take to work?
For an established contractor with a working site and a verified profile: first long-tail organic movement in two to four months, map pack movement on secondary terms in three to seven, and competitive placement on primary money terms in six to twelve. Starting from no website or a brand-new profile adds three to four months. Google publishes no timeline and explicitly states that ranking cannot be requested or paid for, so every number here is an estimate based on typical patterns.
Is it normal to see nothing in the first 90 days?
It’s normal to see no change in call volume. It is not normal to see no change in the inputs. By day 90 you should have two dated rank grids, a list of published page URLs, a Search Console query export and a count of reviews received in the last 30 days. Flat calls with all of that present is patience. Flat calls with none of it present is a billing arrangement.
What should I ask for if I think my SEO company isn’t doing anything?
Send one email asking for seven things: two dated rank grids on the same terms, a list of published or rewritten page URLs, your Search Console query export, review counts and dates for the last 90 days, the URLs of any links or local mentions earned, tracked call volume by month, and a written answer to whether each target city is a map pack or organic play. Give a one-week deadline. The response tells you everything.
Why does my report show impressions up but no more calls?
Impressions count every appearance in search, including for queries with no buying intent. They rise with almost any activity and rise fastest from a low base, which makes them the most common metric in a padded report. The metrics that can’t be inflated are map pack position on three to five named money terms, tracked calls, and booked jobs.
Does paying more make local SEO faster?
Not directly. More budget can buy more pages, more review outreach and more link work at once, which compresses the schedule somewhat. But the dominant variable is competitive density in your specific city, and no budget changes how many established competitors sit inside a ten-mile radius of the searcher. Published Texas pricing ranges are vendor self-reported and, by at least one publisher’s own admission, not backed by Texas market data.
How many reviews do I need before rankings move?
There’s no absolute number — it’s relative to the top three competitors in the specific city you want to rank in. Review signals are worth roughly 20% of map pack placement in the 2026 factor weights, and the panel separates raw quantity from recency and from sustained influx over time. Steady beats bursts. We work through the competitive count in detail in our guide to how many Google reviews you actually need.
Should I fire an SEO company at six months with no results?
Judge the evidence, not the calendar. If the month-four list exists and the work is visibly real, six months of slow movement in a dense metro is plausible and switching resets your momentum. If the month-four list doesn’t exist, six months is already four months too long. Either way, confirm your profile, Search Console, Analytics and domain are in accounts you own before you give notice.
Will my rankings drop if I stop local SEO?
Slowly, in most cases, and unevenly. The pages you built keep ranking for a while; review recency decays fastest, since a substantial share of consumers specifically look for reviews written in the last three months. The things that erode first are the ones that need continuous input — review flow, fresh content, and being open and answering when people search.
How to run the next ninety days
Agree on three to five money terms and the cities they apply to, in writing, on day one. Everything else is negotiable; this isn’t. A provider who won’t commit to a short list is reserving the right to be graded on a curve they set later.
Capture a dated rank grid before any work starts. It takes twenty minutes and it’s the only thing that makes month four’s conversation possible.
Then spend ninety days looking at inputs rather than outcomes. Pages published. Reviews received in the last thirty days. Categories corrected. Links earned. Calls answered — because a ranking you can’t pick up the phone for is an expense, and we’ve put real numbers on that in what a missed call actually costs.
At day 120, send the email. Real work survives that email easily. Nothing else does.
Get an honest read on where you stand
The free Lead Engine Scorecard gives you a dated baseline — map pack and organic position on your money terms, profile configuration, review velocity and site issues — whether you work with us or take it to your current provider and ask questions.
Get the free Scorecard
Questions first? leads@tradesleadengine.com · (726) 224-4920

Sources
- Google Business Profile Help — Improve your local ranking on Google (relevance, distance, prominence; no paid or requested ranking)
- Whitespark — Local Search Ranking Factors 2026 (47 practitioners; grouped local pack and local organic weights)
- BrightLocal — GMB Insights Study (45,000 businesses; data collected September 2017 – December 2018)
- BrightLocal — Local Consumer Review Survey 2026 (n=1,002 US adults, published February 2026; review recency expectations)
- Sterling Sky — How to create unique and helpful service area pages
- Geek Powered Studios — HVAC SEO cost in Texas, 2026 pricing guide (vendor self-reported pricing; the page itself notes the absence of Texas-specific market data)
- LeadsNearby — Why service area businesses don’t rank everywhere on Google Maps
Ranking-factor weights are practitioner survey estimates, not figures published by Google. The per-trade call medians are from a study whose data was collected in 2017–2018 and should be read as an order of magnitude only. Two figures widely quoted in this topic — “42% of clicks go to the local pack” and local pack click-through rates of 17.8% / 13.6% / 10.4% — are deliberately omitted because neither could be traced to a primary source.