+353 863834528

This is a content gap analysis I ran on a real site from start to finish: trackbarn.com, a US track and field retailer, from one keyword export to 455 published question pages, 1,939 ranking queries of which 922 were new, 10 to 145 keywords in AI Overviews, and the third of the pages I would not build again. The step where I made that mistake is shown, not hidden, because Rank Dough gets hired for the method and the method includes the fixes.

✓Why you can trust this article▼
RS

Roman Sadowski · Co-Founder & SEO Lead, Rank Dough

SEO and AI visibility strategist, previously at iProspect. Has run site migrations for Smyths Toys, theaa.ie and ProPlayerTeam, and builds the content and citation-testing systems Rank Dough uses with its clients.


Sources used in this article

  • ✓ Google Search Console (client data)
  • ✓ support.google.com
  • ✓ ahrefs.com

Editorial policy. Every figure is traced to its source: client data from Google Search Console and Ahrefs, Rank Dough’s own test records, or public documentation such as Google Search Central. AI tools help with research and drafting. A person checks the finished page, including the title, meta description, structured data and image alt text, before it is published.

✓ Human verified by Roman Sadowski

Last reviewed: October 2026

TL;DR

In February 2026 I took over a track and field store that had just lost most of its clicks to a redesign, restored the product pages that used to rank, then turned one keyword export into 12 silos and 455 question pages between March and June. By September the site ranked for 1,939 queries, 922 of them new, with 145 of 363 keywords in AI Overviews, while the homepage lost clicks over the same period. Scored after the fact, a third of the pages were written for people who will never buy a pole, so the buyer-distance score now runs before the brief and everything else stayed.

How this was researched

The work behind the numbers, so you can judge them for yourself.

EFFORT

Six months on a live site

February to September 2026 on one client store: one keyword export, 12 silos, 455 pages, monthly Search Console and Ahrefs checks and a recorded update every month.

ORIGINALITY

The full project, mistakes included

A real client project end to end, including the step we got wrong. Not a template.

SKILL

Run by an SEO, not a tool

Run by Roman Sadowski on the client’s live site, from the site review to the monthly pruning.

ACCURACY

What it doesn’t prove

One site. The homepage losing clicks isn’t proven to be caused by the new pages, and buyer distance was scored after the fact.

What did the site look like at the start?

February 2026. A Shopify store for track and field equipment, three brands under one owner, just redesigned.

Search Console showed clicks down from around 150 a day to single figures after the redesign, with product pages that used to rank removed in the process. Ahrefs had the site at 161 ranking keywords in January.

The first decision, which is on my February update to the owner, was to restore the removed product pages before building anything new. A page that ranked once gets its traffic back faster than a new page earns it.

That is step zero of every gap analysis we run. Read the site, list what it sells, find what it used to rank for. The export comes after.

Source: Rank Dough monthly client update recording, TrackBarn, February 2026; Google Search Console, trackbarn.com

Step one: how was the keyword universe built and split?

Inputs: a client questionnaire, the site itself, an Ahrefs organic keywords export for the category, and Search Console queries. The system expanded seed terms with modifiers (event, age group, level) into a keyword universe, then applied the one rule that does most of the work: questions become articles, generic terms become collection pages, never the other way round.

Diagram: a keyword universe splits into questions, which become articles in up to 12 silos, and generic terms, which become collection or landing pages
Figure 1. The intent split. Generic terms like “vaulting poles” went to collections; questions like “how far does middle school cross country run” went to the article queue.

“Vaulting poles” went to the collection list. “What is a good 5k time for cross country” went to the article list.

The generic terms were the pages that sell. The questions were the pages that could rank fast.

Keeping them apart stopped the system writing a 2,000-word guide to vaulting poles that would have competed with the collection and answered nothing. The keyword method in full is in from 6,000 keywords to 12 silos.

Source: Rank Dough content system build record, questions-versus-generic rule, 6 March 2026

Step two: how were the questions clustered and deduplicated?

Questions were clustered into silos capped at 12, grouped the way a reader groups them: cross country, pole vault, throwing, sprints, uniforms, and so on. I checked the silos by hand, because at scale the clustering had thrown baseball in with dental implants on another project and had dropped terms that were in the source file.

Dedupe ran twice before publishing: on the keyword list, and against the site’s existing titles and headings so nothing got briefed that already existed. The third pass, on search-result overlap, cannot run until pages have ranked, and it is the one that catches “can I” versus “when can I” pairs. Why we keep that order is in dedupe three times.

Source: Rank Dough content system build record, clustering cap and batching, May 2026

Step three: what did each idea carry before writing?

Attached to every idea What it is Why
Silo and tag One of 12 groups Internal links form an entity map, not a scatter
Search volume total Sum across the keywords the idea covers Orders the queue; never decides entry
Research prompt Written for that question Produces the brief that is the only fact source
Target keywords Drawn from the silo The page is briefed against what people search
Value promise What the reader can judge after reading Verified point by point after generation
Buyer distance 0 to 3 Should have been here from the start; see below

Table 1. What each candidate page carried into the queue. The last row was added after the results came in.

Source: Rank Dough content system build record, value promise (7 April 2026), information-gain gaps per angle (15 April 2026)

Step four: what did generation and publishing look like?

Pages were written in volume order in programmatic mode: 100 to 500 words, direct answer with figures first, one table, five FAQs, a source line per section, a CTA block pointing at the matching collection, CSV out to Shopify. Every page passed an independent check that read the finished HTML for the figure count, the sources and the links before it went live.

The writer never signed off its own work. That check is written up in the writer never grades itself.

455 pages went live between March and June 2026, alongside the restored product pages and rewrites of existing content that already performed. On the June update I said improving Karl’s existing content would get to results quicker than writing new. It did.

Source: Rank Dough monthly client update recordings, TrackBarn, April and June 2026

What did the data show after six months?

trackbarn.com page-one keywords rose from 103 in September 2025 to 1,667 in September 2026, with top-3 keywords from 22 to 643
Figure 2. Page-one keywords by position band, monthly. Ahrefs.
  • Ranking queries in Search Console, 28 days to 22 September: 1,939. 922 of them had zero impressions in the same window a year earlier.
  • Page-one keywords in Ahrefs: 103 in September 2025, 1,667 in September 2026. Top 3: 22 to 643.
  • Keywords with an AI Overview: 10 in February, 83 in April, 145 in June. 40 percent of everything the site ranked for.
  • Impressions: 113,040 to 1,581,842. Clicks: 1,121 to 6,095.
  • Homepage clicks: 546 to 310. Pole collections: 31 to 2 and 23 to 0.

That last line is the one that matters if you are deciding whether to run this on your own site. Traffic rose five times.

The pages that sell lost clicks. Whether the question pages caused that is not proven; the homepage improved in position while losing clicks, which points at the results page rather than cannibalisation. But it showed me the step that was missing.

Source: Google Search Console, trackbarn.com, 28 days to 22 Sep 2026 vs 2025; Ahrefs keywords history, trackbarn.com; monthly client update recordings, TrackBarn, Feb to Jun 2026

What went wrong, and where in the process?

I scored buyer distance after the pages ranked, not before they were briefed. Applied in hindsight, roughly a third of the 455 pages sit at distance 3: the searcher is a parent or a school runner, and the client sells $800 poles.

“What is the javelin world record” is the clean example. 58,339 impressions, 67 clicks, no customers. The pages did exactly what they were built to do. I built them for the wrong readers.

The fix is a position in the pipeline, not a new rule. The score now sits between the silo review and the research brief, because once a brief exists the page gets written. The rest of the method is unchanged, and the version with the score in the right place is in content gap analysis that finds buyer questions.

Two other things the data forced. 98 of the 455 pages have zero clicks and are being pruned. And 61,996 impressions came from India for a store that ships in the US, so the country mix is now a monthly check.

Source: Google Search Console, trackbarn.com, Pages and Countries reports, 28 days to 22 Sep 2026

What does the monthly routine look like now?

Four checks, same order every month, and they take about an hour with the exports open.

  • Position and click rate per page, side by side. Rising position with falling clicks means the results page is answering above the result.
  • Clicks on the money pages year over year, before I look at anything else.
  • Duplicate pairs: any page that lost position while a sibling with overlapping queries exists. Merge, 301, move on.
  • Pages that held a top-3 position last month and return no URL this month. Restore before building.

What would I do differently on the next site?

  1. Score buyer distance before the brief. Cut the 3s before research starts.
  2. Restore and improve what already ranks before writing new, as I did here, but budget it from day one.
  3. Give every distance-1 page its conversion element at brief stage: the collection link, the sizing block, the price table.
  4. Run the third dedupe pass and the zero-click prune monthly from month three.
  5. Report clicks on money pages beside the content numbers from the first report, so the gap shows in month two, not month six.

What makes each page worth ranking once the gap is chosen is in information gain. How the client’s own facts get quoted by AI answers is in proprietary data and AI citations. See what you think.

WORK WITH RANK DOUGH

Want this done on your own site?

This is the process behind Rank Dough’s AI SEO service, with the mistake left in. If you want it run on your site with the buyer-distance score in the right place, start there.

Get your free snapshot

FAQ

How long did the TrackBarn gap analysis take from export to first pages?

About six weeks from the February 2026 site review to the first batch going live in March, with 455 pages published by June.

How many of the 455 pages were worth building?

By clicks, 357 earn at least one a month and 121 earn ten or more. By buyer distance, roughly a third would not be written today because the searcher is not a customer.

Why restore old product pages before writing new content?

A page that ranked once gets its traffic back faster than a new page earns it. The February review found removed product pages that had held traffic; restoring them was the first task.

What should have happened differently?

Buyer distance scored before the research brief, not after the rankings came in. That one change removes the distance-3 pages before any time is spent on them.

Can this be run on a non-Shopify site?

Yes. The export, split, cluster, score and brief steps do not depend on the platform. Only the publishing step changes: CSV import on Shopify, REST or bulk import elsewhere.

Sources