This small business SEO case study follows a B2B services website that Google showed thousands of times a month and almost nobody clicked. If you are asking why your website is not getting traffic when Search Console shows plenty of impressions, this is one worked answer. It covers what was checked, what turned up, what changed in a single day of work and the prescription that came out of it. The results are still coming in, and this post will be updated with them in November 2026.
This on-page SEO case study is published before the outcome on purpose. Finished case studies tend to arrive polished, with the dead ends cut. The reasoning is the part you can reuse on your own site, so it’s all here, misses included.
In Brief
- The site earned 3 clicks from 3,924 Google impressions in 28 days. Most of its pages sat on page 2 or deeper.
- A keyword plan already existed. Nobody had worked it. Every status column in 3 planning files was blank.
- 30 of 67 grouped search terms appeared nowhere on the page Google ranked for them, including the main service page’s top search term.
- A sudden impression drop looked like a penalty. It was 4 pages holding their positions while fewer people searched.
- In one day, more than 20 pages were changed, 4 thin or overlapping posts were merged into stronger ones, and 4 redirects went in.
The Situation
The site belongs to a small B2B services firm. It had well over 100 blog posts, a handful of service pages and a steady publishing schedule. Traffic from Google was close to zero.
Here are the baseline numbers for the 6 pages that mattered most, from Google Search Console over 28 days.
| Page type | Impressions | Average position |
|---|---|---|
| Long-form guide on the core problem the firm solves | 979 | 13.5 |
| Main service page | 583 | 42.4 |
| Broad topic guide | 211 | 34.4 |
| How-to post on a core method | 155 | 23.4 |
| Comparison post in a crowded vendor category | 94 | 69.6 |
| Pricing explainer | 91 | 11.7 |
Across the site that’s 3,924 impressions and 3 clicks. People saw the site in results. They saw it at positions 13 to 70, below where most people stop scrolling. The job was to move the pages closest to page one onto it and to make every page say what people were actually searching for.
Local SEO vs SEO: Which One This Case Covers
This is general on-page SEO. The firm sells to buyers searching by service and problem, not by city, so nothing here is local SEO.
Local SEO is the same foundation with a map layer on top. A business that serves one area adds a complete Google Business Profile, consistent name, address and phone details across the web, and pages written for each place it serves. The checks below still apply to a local site. Terms in titles, headings and body text matter just as much when the search is “plumber near me” as when it is a software category.
What Was Checked
The audit ran on free and low-cost data. Nothing here needs an enterprise SEO suite.
- Search Console performance by page and by query, for 3 months and for recent 12-day windows
- Every query paired with the page Google showed for it, 416 queries across 91 pages
- Each target search term checked against the live page: title tag, meta description, main heading, subheadings and body text
- Index status and last crawl date through URL inspection
- The live search results for the main terms, to see who ranks and whether an AI Overview answers the question first
- Structured data on the main pages, compared with what a visitor can actually see
- Posts competing for the same searches
- Internal links pointing at each weak page
- Every claim, number and example in the posts that were getting impressions
What Turned Up
The Plan Existed and Nobody Worked It
The search terms had already been grouped into 19 topics weeks earlier, each with an owning page and a recommended fix. There was also a 431-row keyword file and a 21-row list of on-page changes. Every status column was empty.
That was the most useful finding, and the least technical one. The plan kept getting refined and never shipped, because planning feels like progress. Any business running SEO alongside everything else should check its own queue for the same pattern before paying for another audit.
The Pages Did Not Say What People Searched For
30 of the 67 grouped search terms appeared nowhere on their page.
The worst case was the main service page. Its top search term brought 1,394 impressions over 3 months at an average position of 39. The exact phrase sat in the body and one subheading. It was missing from the page title and the main heading, which used a looser variation of it. Google and searchers both read the exact words, and the title is where it counts most.
Widening the check to all 416 queries made the gap clearer. On the 15 pages that were about to be edited, only 34 of the 155 terms Google already showed them for appeared on the page.
The Impression Drop Was Not a Penalty
Impressions across the site fell by roughly 45% from mid-September. On a chart that looks like trouble. Comparing 2 equal 12-day windows page by page told a different story.
4 pages accounted for about 470 of the lost impressions, and 3 of them held the same average position throughout. Fewer people saw them at the same spot. That points to lower search demand or more space taken above the results, and neither one is a ranking loss.
Only one page actually slid, a pillar guide that went from position 22.5 to 34.7. The sitewide average hid it completely. That’s the page worth attention.
A New Post That Never Ranked
The comparison post looked like it had crashed, from 90 impressions to 2. It had never ranked. Google tested it for about a week at positions 60 to 86 after it went live, it earned no clicks, and Google stopped showing it. It was indexed and error-free, and Google had not crawled it again since.
The results for that search belonged to Reddit and large software vendors, under an AI Overview that answered the question outright. A new post on a small site, with 1 internal link pointing to it, had little chance there. The lesson is about picking fights, and the technical setup was fine.
FAQ Markup Nobody Could See
The strongest page had 5 questions and answers in its FAQ structured data, and none of them appeared on the page. Google’s guidelines require structured data to reflect what visitors can read. It was a quiet risk on the one page closest to page one.
Two Posts Splitting One Topic
Two tool roundup posts with nearly identical titles were competing for the same 32 searches and 535 impressions. Neither ranked well. Google had 2 half-strong answers to choose from and backed neither of them.
Claims Nobody Could Stand Behind
A close read of the posts getting impressions found things a sharp reader would notice:
- 3 unnamed case studies with precise results and no source
- A price range that contradicted a table further down the same post
- A line describing the target customer by the wrong revenue band
- A statistic about how fast a technology trend moved, with nothing behind it
No SEO tool flags these. Every one of them costs trust with the person deciding whether to get in touch.
What Was Changed
All of the following went live in a single day.
Search Terms on 15 Pages
Terms Google already showed each page for were worked into the body, subheadings and FAQ answers. On those pages, terms present went from 34 to 70 out of 155. Foreign-language queries, other companies’ names and anything that would only fit as filler were skipped.
Titles on 2 Pages
The main service page’s title and main heading now lead with its top search term, word for word. A how-to post got the same treatment for its main phrase.
Copy Edits on About 20 Posts
Unsupported claims came out, numbers were written as digits and rhetorical setups became plain statements. Every search term a page already ranked for stayed in place.
4 Posts Merged
The 2 competing roundups became 1 post of about 4,100 words. 3 thin posts in one topic cluster, with almost no impressions in 12 weeks, were folded into their closest stronger posts. Each old URL redirects to its replacement, and every internal link was updated to point at the final address, so no internal link relies on a redirect.
Visible FAQs
The strongest page now shows its questions and answers on the page, built from the same source as the structured data, so the two cannot drift apart.
Honest Examples
The unsourced case studies became clearly labeled hypotheticals, and prices were brought in line with what the business actually charges.
1 New Post
A niche version of the main service’s search term was already reaching the service page at position 54, with no page written for that audience. It now has one.
What Was Held Back
Some of the most important decisions were about what not to touch.
The site was running a title test, so no bulk retitle. Only the 2 pages with a clear, specific problem got new titles.
The comparison post was not rewritten. Google had not seen its current version, so a rewrite would have been a guess. It got an internal link from the right pillar page and a recrawl request instead.
Publish dates on dozens of posts were earlier than the day each post went live. They stayed as they were, since Google keeps its own record of when it first saw a page.
The Prescription
If your small business site gets impressions and no clicks, this is the order I would work in.
- Pull query and page pairs from Search Console for 3 months. You want every search term alongside the page Google shows for it. The top 1,000 rows are usually enough for a small site.
- Check your own backlog first. If a keyword plan or audit already exists, count how many items were ever done. Execution beats a new plan.
- Check each important page for its own search terms. Look for the exact phrase in the title tag, main heading, subheadings and body. Fix the title and main heading on your most important page before anything else.
- Work the long tail into the pages you are already editing. The small queries with 5 or 10 impressions make good supporting terms. Adding them now saves a second pass on the same page later.
- Split any drop by page before reacting. Compare equal windows. If positions held while impressions fell, it’s demand or layout. If a position slid, that page gets attention.
- Merge posts that compete for the same searches. Keep the one with more impressions and inbound links, fold the other in, redirect it and update every internal link to the final URL.
- Match structured data to the visible page. FAQ markup with no visible FAQ is a liability.
- Read your posts like a skeptical buyer. Cut or relabel any number, story or example you cannot back up.
- Leave new posts alone until Google has recrawled them. Link to them from the right pillar, request indexing and give them a few weeks.
- Save a baseline and set a date. Record clicks, impressions and position for every page you change, then compare the same window length 6 weeks later.
SEO Examples You Can Copy From This Case
Each change above is a small SEO example you can run on your own site.
- Put the exact search phrase in the title tag and main heading of the page that should rank for it
- Merge 2 posts that split one topic, and redirect the weaker one
- Show FAQ answers on the page if the markup lists them
- Replace unsourced case studies with clearly labeled hypotheticals
An SEO Case Study Template
If you want to write your own, use the same order as this post: baseline numbers, what was checked, what turned up, what changed, what was held back, the prescription and a measurement date. Write the measurement date down before you change anything. That one habit keeps a case study honest.
How Results Will Be Measured
The 28-day baseline for every changed page is saved. In early November 2026 the same 28-day window gets pulled and compared page by page.
What would count as working:
- The long-form guide moving from position 13.5 onto page one
- The pricing explainer moving from 11.7 into the top 10
- The main service page climbing from 42, even if it stays on page 3 for now
- The merged roundup ranking better than either of the 2 originals
- More than 3 clicks in the month, which is a low bar worth clearing
Merged pages often dip for a few weeks while Google processes the redirects, so an early dip won’t change the plan. Pages that don’t move will be in the update too.
Two tools I built did much of the checking here: a SERP gap analysis skill and a weekly site SEO check.
Frequently Asked Questions
Why is my website not getting traffic from Google?
Check Search Console before anything else. If your pages get impressions but sit at positions 11 and below, Google knows about them but ranks them where few people scroll. The usual causes on a small site are pages that never use the exact phrases people search, 2 posts competing for the same searches, and thin posts that never earned their place.
Why does my website get impressions but no clicks?
Most often it’s position. A result at 13 or 40 appears in the impression count for anyone who scrolls, but almost nobody clicks that far down. Fix the pages closest to page one first, starting with the title and main heading on your most important page.
How do I improve my Google rankings on a small business site?
Work in this order: make each important page use the exact terms Google already shows it for, merge posts that compete for the same searches, match your structured data to what visitors can see, and remove claims you cannot support. The 10-step prescription above covers each one.
How long do SEO changes take to show results?
Plan on 4 to 6 weeks before judging. Google has to recrawl the changed pages, and merged pages often dip for a few weeks while redirects are processed. Save a baseline before you change anything so you can compare like with like.
What should a small business SEO case study include?
The starting numbers, what was checked, what changed, what was deliberately left alone and how the result will be measured. A case study that only shows the final graph hides the part you can reuse.
What is SEO and how does it work?
SEO is the work of making your pages easy for search engines to find, understand and rank for the phrases your buyers type. It works by matching three things: what a page says, how credible and well linked the site looks, and what the searcher wants. This case focused on the first one, because the pages did not use the words people searched.
How do I do SEO for my website, step by step?
Follow the 10-step prescription above. In short: pull your Search Console data, check each important page for its own search terms, fix titles and headings first, merge competing posts, and measure again after 4 to 6 weeks.
How do I do local SEO, and how is it different?
Start with the same on-page steps, then add a complete Google Business Profile, consistent business details across directories and a page for each area you serve. Local SEO for small businesses is mostly the standard work plus the map layer. If you are a beginner, fix your titles and headings first, then claim your profile.
Status
In progress. Results update: November 2026.
If you want this kind of review on your own site, see how my SEO Accelerator works. If the bigger problem is how your operations run, start with the free process audit.
Related reading: AI-Enabled SEO Operations | How to Run an SEO Content Audit for a Small Business | Schema Markup for SEO