Selected SEO case studies. One standard of evidence.
HVAC, plumbing, franchise and SaaS clients — each with the starting point, the dates, the source and what the numbers don’t prove. These are the ones clients have approved for publication; more are available under NDA on a call.
Franchise SEO case study: home services, 1K to 69.8K organic visits
A home services franchise group with plumbing and HVAC brands — #2 for “local plumbers”, 94% of US traffic non-branded, and 56.3K Google clicks in three months.


Home services SEO case study: plumbing & HVAC, 28K to 74.3K
Top 3 for “emergency plumber” and “water heater repair”, with 75K Google clicks in three months.

HVAC SEO recovery case study: Chicago, 14K to 66.9K
Back from a Google update drop — page one for “furnace repair near me” and “water heater repair near me”.

Plumbing SEO case study: Dallas–Fort Worth, 23K to 57.5K
Plumbing, HVAC and electrical across 40+ Metroplex towns — on page one for “emergency plumber”.

SaaS SEO case study: field service software, 7K to 44.8K
Contractors searching for the problem, not the brand — 77.9K Google clicks in three months and organic as the top channel.

HVAC & plumbing SEO case study: California, 4K to 16.4K
In Google’s local pack for “heater repair”, “heating system repair” and “24 hour plumbing”.

HVAC local SEO case study: Southern California, 500 to 7.4K
A Murrieta HVAC company in the local pack for “air conditioning repair murrieta”, with organic at 75% of all sessions.
Visits are Semrush’s estimated monthly organic traffic (Sep 2026) against the stated starting point. Google clicks and sessions come from the client’s own Search Console and Analytics.
A number without a baseline is decoration
“+340% organic traffic” tells you nothing on its own. Three hundred and forty percent of what, over how long, on what budget, and what else was happening — a rebrand, a funding round, a competitor going under, a seasonal peak? Agencies publish the number and omit every variable that would let you judge it, because the omission is the point.
No baseline stated
A site starting from almost nothing can post enormous percentage gains from trivial absolute movement. Without the starting number the percentage is unfalsifiable.
The winner is selected after the fact
Publish the three best outcomes from forty engagements and the average reader assumes those are typical. Nobody publishes the ones that went nowhere.
Attribution taken on faith
Organic traffic rose during a period that also included a paid campaign, a PR push and a site redesign. Assigning all of it to SEO is a choice, not a measurement.
Traffic reported, revenue omitted
The metric shown is almost always the flattering one. If a case study reports sessions rather than enquiries or revenue, assume the commercial number was less impressive.
What every case study on this page shows.
Every result above comes from a real, ongoing client engagement. We keep client names out of the copy, but not the evidence: each case study shows dated Semrush screenshots and, where the client has approved it, their own Google Search Console and Analytics.
And every one follows the same rules, so you can compare them with each other — and hold them up against anyone else’s.
- Baseline and dates stated — every figure has a starting point and a date, so a percentage never stands on its own.
- Estimates labelled as estimates — Semrush figures are marked as third-party estimates; Search Console and GA4 are marked as first-party data.
- Dips shown, not cropped — where traffic fell, the case study says so and explains what the data can and cannot tell us.
- Limits disclosed — each case study ends with what it proves and what it doesn’t yet — including leads and revenue.
- References on request — if you want to speak to a client in a comparable situation, ask on the call and we will arrange it where the client agrees.
The four questions to ask about any case study: what was the starting number, over what period, what was the budget, and what else changed in the same window? An agency that cannot answer all four is showing you decoration.
The measurement framework behind every engagement
This is the part that makes a result defensible. It is set up before any work starts, because a baseline captured afterwards is not a baseline.
Baseline capture
Traffic, rankings, conversion rate and revenue recorded before anything changes, with the date stamped. Everything later is measured against this.
Define a result
What a customer is worth, what an acceptable acquisition cost looks like, and what number would make the engagement worth continuing. Agreed in writing.
Clean tracking
Conversion tracking verified end to end before launch. A surprising share of engagements begin with tracking that has silently been wrong for months.
Isolate what we can
Where other channels are running we say so and separate what can be separated, rather than claiming the total movement as ours.
Report against the baseline
Monthly, in your own systems, in plain language, including the months where the number went the wrong way.
Review honestly
Quarterly, against the definition of a result agreed at the start. If it is not working we say so rather than reframing the metric.
What we report, and why those
Each of these is checkable in your own systems without taking our word for it.
Qualified enquiries
Enquiries your sales team would accept, not raw form fills. The distinction usually changes the picture considerably.
Organic revenue vs baseline
Attributed in your systems and compared against the figure recorded before we started.
Commercial query coverage
Share of the terms that produce buyers, rather than total keyword count.
Cost per acquisition
Blended across channels, so SEO can be judged against the paid alternative rather than in isolation.
Time to first movement
How long before the baseline moved at all — useful for calibrating what the rest of the year should look like.
Judge us on the things you can actually check
Published numbers are the weakest form of evidence available to you. These are stronger.
The free audit itself
It is a work sample. Whether the findings are sharp, correctly prioritised and actually actionable tells you more about competence than any published percentage.
A reference call
Ask to speak to a current client in a comparable situation. We arrange it where the client agrees, and an agency that cannot arrange any is telling you something.
The written scope
Specific monthly deliverables you can verify happened. Vague scope is the single reliable predictor of a disappointing engagement.
Our own visibility
This site ranks for what it targets across the markets it serves. It is the one piece of our work you can inspect without asking anyone’s permission.
What we decline
Ask what work we have turned down and why. An agency that has never declined a budget is optimising for its own revenue rather than yours.
How we answer hard questions
Ask what would make you fire us, or what typically goes wrong. The quality of the answer is more diagnostic than any case study.
Why Businesses Choose SDM for SEO
Same budget, very different outcomes. Point by point, here’s how a specialist partner compares to a typical agency or going it alone.
| What actually matters | With SDM | Typical Agency | In-House / DIY |
|---|---|---|---|
| Senior specialist on your account | Always | Often a junior | Stretched thin |
| Custom strategy built for your goals | Tailored | Templated | Guesswork |
| Deep audit before any work begins | ✓ | Surface-level | Skipped |
| White-hat, penalty-safe methods | Guaranteed | Varies | High risk |
| Plain-English reporting tied to revenue | Monthly | Jargon PDFs | None |
| Direct access to your specialist | ✓ | Account-manager relay | N/A |
| Baseline captured before work starts | ✓ | Sometimes | Rarely |
| Case studies with dated evidence | ✓ | Percentages only | n/a |
| Reference calls arranged on request | ✓ | Logos only | n/a |
| Bad months reported, not hidden | ✓ | Reframed | n/a |
| Reporting reconciles to your CRM | ✓ | Dashboard only | None |
| Ongoing competitor gap analysis | ✓ | One-off | Manual |
| Conversion-focused, not just traffic | ✓ | Traffic-first | Unclear |
| Premium tools included (Ahrefs, SEMrush) | ✓ | Sometimes | Costly extra |
| No long lock-in contracts | Flexible | 6–12 mo lock-in | N/A |
| Established agency, operating since 2017 | ✓ | Varies | Learning curve |
| Fast onboarding & early quick wins | ~2 weeks | Slow | Trial & error |
| Human, SEO-led content (no AI spam) | ✓ | Outsourced / AI spam | Time-heavy |
| Focus on compounding, long-term ROI | Core promise | Short-term wins | Slow & ad-hoc |
| Recovery from Google penalties | ✓ | Sometimes | Very hard |
20 reasons growing brands make the switch. See the difference for yourself →
Questions about our results
What we can evidence, what we cannot, and why we say so.
Further reading
Go deeper on this
The thinking behind the work. These guides go deeper on the methods this page describes — written by the team that runs them.
Case StudiesThe D2C Fashion Growth Playbook (Composite Case Study)
A composite D2C fashion growth playbook: how founder-led content, offer testing, email retention, CRO and SEO sequence to build a profitable ecommerce brand.
Read the guide
Performance MarketingThe Omnichannel ROI Framework: Stop Burning Ad Spend
A digital marketing ROI framework for 2026: server-side tracking, MER, incrementality testing, marketing mix modelling, LTV:CAC and payback period.
Read the guide