Teardown No. 69 · SEO

Impressions from ~10K to ~41,590 a week, traffic up 57%: Joe Karlsson's weekly SEO audit in Claude Code

Joe Karlsson runs a weekly SEO audit through a Claude Code skill he calls /seo-analysis. The skill pulls data from Google Search Console, Plausible, Ahrefs, GA4, HubSpot and PageSpeed. It correlates the signals, compares them against last week's snapshot and surfaces what moved. He sorts affected pages into one of two failure modes and ships fixes as tagged PRs that Claude Code writes. He checks the results 2 to 4 weeks later. He says the gap between spotting a problem and shipping the fix "went from weeks to hours."

The problem

His organic search traffic had been sliding for months. He says, “It wasn’t a crash.” The company had hired an SEO agency “at around $10,000 a month.” He says the agency was good, “But execution was still slow.” Recommendations waited on the engineering queue, and changes took weeks to get from “identified” to “shipped.” He writes, “I could find issues faster than I could fix them.” One site crawl found “102 pages returning 404 with significant link equity attached,” and that finding went into a doc to wait.

He describes the work as “pulling data from six different tools, synthesizing it, deciding what to fix, writing the fix, tracking whether it worked”. He came to see it as “a data problem,” because each tool showed a different slice and “none of them talked to each other.”

The blueprint (as he describes it)

  1. Pull a multi-source snapshot every week. He runs /seo-analysis, a Claude Code skill he built. He describes skills as “reusable slash commands you build yourself.” It pulls from six sources:

    • Google Search Console: impressions, clicks and position changes.
    • Plausible: actual visitor counts.
    • Ahrefs: keyword positions, traffic value estimates, site audit findings and competitor gaps.
    • GA4: session and conversion data.
    • HubSpot: organic MQL counts.
    • PageSpeed: Core Web Vitals.

    The skill correlates the signals, compares against last week’s snapshot and surfaces what moved. He says building it with Claude Code took a few days.

  2. Use the disagreements. “The sources disagree with each other, and the disagreement is useful.” He gives an example: “If GSC impressions are exploding but clicks aren’t following, that’s the AI Overview signature.”

  3. Diagnose before touching anything. He sorts each affected page into one of two failure modes.

    • Failure mode 1 is ranking up and clicks down, which he calls the AI Overview signature. The fix is GEO work: structured content, quotable definitions, FAQ schema and structured data, plus title and meta rewrites.
    • Failure mode 2 is ranking down and clicks down, which he calls a quality or authority problem. The fix is content quality, internal linking, redirect cleanup and backlink work.
  4. Work the priority list. His order:

    • Pages with high impressions and low CTR in positions 4-16. Elsewhere he gives the filter as GSC positions 4-16 with CTR below 5%. He batches these rewrites into one PR and checks back in three weeks.
    • Redirect chains and 404s with link equity. He sorts Ahrefs crawl exports by URL Rating and fixes the highest-equity broken pages first.
    • Orphan pages with zero internal links pointing to them.
    • Keyword cannibalization. He identifies the cluster, picks a winner, and redirects or re-optimizes the rest.
    • Content gaps against a competitor, filtered by volume and keyword difficulty.
  5. Have Claude Code write the fix. “I find a batch of 404s with link equity and describe the redirect logic to Claude Code. It writes the code, tests it, and opens the PR. I review it and it ships that afternoon.”

  6. Tag the PR and check it later. Every change gets a tracked PR tagged by category: SEO, content, docs, performance or fix. After 2-4 weeks, the workflow checks what happened to the affected URLs’ positions and traffic.

  7. Repeat next week.

His stated weekly time on a heads-down week:

  • The /seo-analysis pulse takes about 10 minutes to run and review.
  • Prioritizing and planning takes maybe 30 minutes.
  • Writing the PRs takes 2 to 4 hours.
  • Getting reviewed and merged takes a day or two.
  • Checking prior PRs for impact takes another 20 minutes.

Stated results

These figures run from Feb 27, 2026 to about four weeks later.

  • Average position (GSC): 16.6 to 11.4.
  • Organic traffic (Ahrefs): ~1,175/wk to ~1,842/wk (+57%).
  • Search impressions (Ahrefs): ~10K/wk to ~41,590/wk (+316%).
  • Estimated traffic value: $932/mo to $1,855/mo (+99%).
  • Weekly visitors (Plausible): ~1,354 to ~2,386 (+76%).
  • Docs visitors per week: ~48 to ~261 (+440%).

Other results he reports:

  • One title/meta rewrite batch “produced +397 clicks and +4,131 impressions.”
  • One PR moved a page from position 19 to position 7.7.
  • Three weeks in, the site hit 49,220 impressions in a single week, which he calls “4.9x the old record.”
  • A high-volume query moved from position 49 to 15. The site reached position #1 for “a couple of target keywords.”
  • Quickstart completions went “from zero to 25 per week.”
  • AI Overview placements went from 11 to a peak of 115 in a single week. He says, “We didn’t engineer that.”
  • AI and LLM referrals to the docs went “from zero to 2 per week.”
  • “Eight of our nine top traffic-gaining pages are resource hub articles.”
  • He reports confirmed deal pipeline from organic search in month one and a higher conversion rate. No figures are given for either.
  • “Clicks didn’t keep pace.” In his words: “Impressions roughly quadrupled while organic traffic grew 57%.”

Caveats

  • The post is on his personal blog. It does not sell a product, course or kit, but the page promotes his free newsletter. His site bio says he now works at CData on a managed MCP platform. The post itself does not name the startup it describes.
  • He was an in-house employee with manager support, an SEO agency the company had hired, and a review step before merge. This is not a solo operator setup. The post does not separate the agency’s contribution from his own fixes.
  • The results cover about four weeks. The organic traffic and impressions figures are labelled as Ahrefs, which he describes as showing “estimated traffic.” Visitor counts come from Plausible and average position comes from GSC.
  • He says the rise in AI Overview placements came from Google expanding coverage.
  • When he wrote the post, Ahrefs Lite had no API access, so he “exported CSVs by hand.” He says the weekly cron job he wants is not built yet.
  • He says he has “no reliable way to measure how often we show up in AI assistants.”
  • Core Web Vitals are unsolved. He has filed the issue, and “it’s still open.”
  • The CTR drop figures (61% from Seer Interactive, 58% from Ahrefs) come from third-party studies, not from his data.
  • Handles: LinkedIn linkedin.com/in/joekarlsson and Bluesky @joekarlsson.com (verified 2026-10-29: linked from joekarlsson.com). X, Threads, Instagram, Mastodon and TikTok: not verified, not tagged.

FAQ

What does the /seo-analysis skill do?

It pulls data from Google Search Console, Plausible, Ahrefs, GA4, HubSpot and PageSpeed. It correlates the signals, compares them against last week’s snapshot and surfaces what moved. He runs it every week.

How does he tell the two failure modes apart?

Ranking up with clicks down is what he calls the AI Overview signature, and he fixes it with GEO work plus title and meta rewrites. Ranking down with clicks down is what he calls a quality or authority problem, and he fixes it with content quality, internal linking, redirect cleanup and backlink work.

How much does the stack cost?

He lists Ahrefs Lite at ~$129/mo, Plausible at ~$9/mo and Claude Code Pro at ~$20/mo. Search Console, GA4 and the PageSpeed API are free, and HubSpot has a free CRM tier. He says the stack outside Ahrefs runs under $30/month.

Is the audit fully automated?

No. When he wrote the post, he exported Ahrefs CSVs by hand and did not yet have a weekly cron job. He reviews each PR before it ships, and he says the diagnosis call is his: “That call is yours.”

Sources


Want agents like these working your distribution? Get It Built. Get new teardowns weekly: subscribe (double opt-in).

Get one teardown a week.

Same format, a new operator every issue. Double opt-in.