« Pieces

How it actually works

What running SEO for a small business actually looks like

Forget the strategy deck. Here's a real week-by-week account of doing SEO for a small business — the tasks, the spreadsheets, the awkward client calls, the slow grind.

Strategy decks for SEO are written for the kickoff. They are clean. They have arrows. They have a section called “Phase 1: Foundation” and another called “Phase 2: Growth,” and in the middle there’s a chart that goes up and to the right.

What actually happens is much weirder, much slower, and much more dependent on whether the client’s developer answers their email. I’ve been running SEO for a small services business — call them around fifty staff, one location, the kind of company that would never buy Ahrefs on their own — for eight months. Here’s what the work actually looks like.

What I do every Monday

Every Monday I open three things, in this order:

  1. Google Search Console. I look at the last seven days of impressions and clicks, filtered by query. I’m not looking for big movements. I’m looking for queries that appeared this week and didn’t appear last week, and queries the client started ranking for in the 11–20 range. The 11–20 queries are the ones I can move to page one with a bit of effort. They’re the work for the week.
  2. The rank tracker. I use Wincher — about £20 a month — to track about 80 queries. (Nightwatch is the alternative I’ve used on engagements where Wincher’s locale data was thin.) Half the queries are the obvious commercial ones the client cares about. The other half are content terms I’ve added since starting. I look at the weekly trend, not the daily one. Daily SEO data is mostly noise.
  3. Google Analytics (or rather, GA4, which I tolerate). I look at organic sessions for the previous week, broken down by landing page. I’m checking which pages are getting traffic and whether any of them are new pages we’ve published. If a new page is getting impressions but no clicks, the title tag needs work. If it’s getting clicks but no engagement, the page itself needs work.

This whole thing takes about 25 minutes. Not 25 minutes in a flow state — 25 minutes of clicking, copying, pasting into a spreadsheet, and writing two sentences in a Notion doc about what I noticed. The spreadsheet is the unsexy heart of the engagement.

The spreadsheet

There is always a spreadsheet. Mine has six tabs:

  • Page inventory — every URL on the site, with status (live, redirected, deleted), word count, last edit date, and a column for “needs work” / “OK” / “kill.” A page goes in the “kill” column if it ranks for nothing, has no traffic, and there’s no realistic version of it that would — usually because it’s a near-duplicate of a better page on the site, or because it’s so thin it dilutes the rest.
  • Query targets — the 80 queries I’m tracking, with current rank, target rank, and which page is targeting them.
  • Backlinks — every link the site has earned in the last 12 months, where it came from, what it points to, and whether it’s a “good” link or a directory dump.
  • Content calendar — the next 12 things I’m going to publish, in priority order, with target keywords and estimated effort.
  • Technical issues — every crawl error, redirect chain, slow page, missing alt text, etc., with a status of “open” / “fixed” / “won’t fix.”
  • Client conversations — a running log of every decision the client agreed to, with the date. This one has saved me three times.

That last tab is the one nobody tells you about. SEO engagements are long enough that the client will forget what they signed off on, and they will sometimes remember a different version of the conversation. Having “agreed on the call 2026-02-14: we will rewrite the services pages, client to provide one round of feedback, no more” written down with a date saves you from a lot of awkward “but I thought we said…” conversations.

What a typical week looks like

Last week:

  • Monday. The 25-minute review above. I noticed the client had started ranking #14 for a query around their secondary service line. I made a note to revisit the page targeting that query.
  • Tuesday morning. Wrote a brief for a new piece of content based on a query that’s been climbing. The brief was about 600 words long. It included the target query, three “supporting” queries, the angle, the structure, three internal links to add, and two external links to suggest. The brief took 90 minutes.
  • Tuesday afternoon. Two hours on a technical issue. The client’s developer had launched a new feature and accidentally added 40 pages with auto-generated, near-duplicate content. I had to spot it (Search Console flagged it as “discovered – currently not indexed,” which is the early warning), figure out what was happening, write a clear explanation for the developer, and propose a fix (canonicals pointing to the parent category page). Then I had to chase the developer to actually do it. The fix took the developer 20 minutes. The chasing took about a week.
  • Wednesday. Client call. 45 minutes scheduled, 70 minutes actual. The client wanted to talk about a new service they were launching and whether we should “do SEO for it.” I spent half the call asking questions and the other half explaining that the page they were planning to write would need to exist for at least three months before we’d see meaningful organic traffic, and that in the meantime the launch should rely on email and direct outreach. They were disappointed. They also agreed.
  • Thursday. Wrote one piece of content myself (about 1,400 words, took most of the day with research), and reviewed one piece written by the client’s in-house person (about 800 words, took 90 minutes to mark up with comments). The client’s in-house person is good but new. Most of my comments are about specificity — they write in generalities, the way most people do, and SEO content needs to be specific enough to actually answer the query.
  • Friday. Reporting and admin. Updated the spreadsheet, sent the client a short Friday note (more on that in a minute), invoiced for the month, and spent an hour going down a rabbit hole on a competitor who’d suddenly started ranking for one of our target queries. (Turned out they’d republished an old post with new content — useful to know, also depressing because it means the content arms race is real.)

That’s a real week. Notice what’s missing: there’s no “build 50 backlinks.” There’s no “do an SEO audit.” Audits are for kickoffs and emergencies. The actual work is small, slow, repetitive, and mostly about being organised.

The Friday note

Every Friday I send the client a short email. It’s never more than 250 words. The format is:

  • What I worked on this week — three to five bullet points.
  • What changed in the data — one or two numbers, in plain English. Not “your average position improved by 0.3” — more like “you started ranking on page one for ‘X service near me’ this week.”
  • What I’m doing next week — one or two bullet points.
  • One thing I need from you — usually a content review or a developer chase.

The Friday note is the most important deliverable I produce. It’s not the work, but it’s the evidence of the work. SEO engagements that don’t have a regular reporting rhythm get cancelled in the third or fourth month, no matter how well they’re going, because the client can’t see what they’re paying for. The Friday note is cheap insurance.

The Friday note is the most important deliverable I produce. SEO engagements that don’t have a regular reporting rhythm get cancelled in month three.

What the client thinks the work is vs. what it actually is

The client thinks the work is “writing blog posts and getting backlinks.” The actual work breaks down roughly like this in any given month:

  • 30% — content production. Briefs, drafts, edits, fact-checks, internal linking, publishing.
  • 20% — technical fixes. Crawl errors, redirect chains, page speed, schema, indexation issues, duplicate content. Most of this is finding the problem and explaining it to the developer in language they’ll act on.
  • 15% — keyword and topic research. Looking at what’s working, what’s almost working, and what nobody on this site has touched yet.
  • 15% — client conversations. Calls, email, Slack, decision-making, fielding questions about things that aren’t really SEO (“can we change the homepage hero?”).
  • 10% — measurement and reporting. Including the Friday note.
  • 10% — outreach for links. When it’s a focus, more. Most weeks it’s almost nothing because cold outreach is brutal and most of what works is earning links by publishing things people want to link to.

Notice “outreach for links” is 10%. Notice “do an audit” is 0%. Notice that “client conversations” is the same size as “technical fixes.” The client always underestimates how much of the work is conversation.

The slowest thing about SEO is not Google

The slowest thing about SEO is everything that has to happen between you having an idea and the idea being live on the website. Most of the delay is human. The brief takes a day to write, then sits with the client for a week before they get to it. The draft takes another few days to write, then sits in review for two weeks because the founder is travelling. The final version goes live on a Tuesday and the developer breaks the breadcrumb schema by accident, which takes another week to spot and fix.

A piece of content I started in February might not be fully live and fully indexed and fully ranking until June. That’s not Google being slow. That’s a small team and a real client and the realities of getting work shipped through a business that has other priorities.

If you want SEO to feel faster, the highest-leverage thing you can do is shorten the delay between “idea” and “live page.” Streamline the brief template. Get the client to commit to a one-week review window. Don’t wait for “perfect” before publishing. The compounding effect of shipping faster is bigger than any specific tactic I could write about.

What this engagement has produced after eight months

Real numbers from the actual engagement:

  • Organic sessions: up from about 1,200/month at the start to about 4,800/month now. Not a hockey stick. A line.
  • Ranking queries (any position): up from about 340 to about 1,100.
  • Page-one rankings: up from 28 to 96.
  • New leads attributed to organic (using a generous attribution model): roughly 14 a month, up from “approximately none.”

That’s the result of eight months of grinding. It’s not viral. It’s not a case study. It’s a real small-business SEO engagement, doing fine, and the work next month will look almost exactly like the work this month did.

If you want a piece in a similar key but on a different topic, the email sequence nobody talks about: post-purchase is another behind-the-scenes look at unglamorous marketing work that compounds. Or, if you’d rather read something with a sharper take on what isn’t worth doing, stop A/B testing your button colours is the opinion piece that pairs with this one.

Real SEO is mostly Mondays and Fridays, spreadsheets and developer chases, and a Friday note that nobody important reads. It also works.