What Our Own Search Data Says, Including the Parts That Don’t Flatter Us

Daniel Sorenson Daniel Sorenson
flywheel website viewed on desktop from flywheel advertising offices

The short version

  • We run a measurement stack for clients. We pointed it at our own website and are publishing what it found.
  • Non-brand impressions rose 315% over thirteen weeks, and the number of distinct searches we appear for more than doubled.
  • Clicks over the same period went from one to one. Average position did not move.
  • Only 1.9% of our non-brand impressions are on page one. Ninety percent sit at position 21 or worse.
  • Fourteen of our seventeen service pages earn no non-brand impressions at all.
  • And 92% of the impressions those pages do earn are people looking for a different company that happens to share our name.

An agency publishing its own search data is unusual, and the reason is obvious: most of it is bad. Ours is too. As typical in most businesses, agencies included, your time is tied up in working on clients and working on your own business takes a back seat. For us, we believe our own marketing and technical solutions applied to our business should be the best example of our capabilities that we can apply to our clients. We began building the best we could for our own website, technical stack, and data integrations a few months ago; we ended up building an entire website as a marketing platform and expanded on this in the measurement stack. This article is the results of the stack to date.

We are publishing it because the alternative, describing a measurement practice without ever showing what it says about us, is the thing we would not accept from a vendor.

Everything below comes from the same stack we run on client accounts: Google Search Console and GA4 pulled weekly into a warehouse, joined to a crawl of our own pages and to search volume from Keyword Planner. Brand searches and name-collision searches are excluded from every figure below, with one deliberate exception: the section on our service pages reports the collision itself, and says so where it does. Where a number is derived rather than measured, it says so.

The good number, in full

Over the thirteen weeks to 7 September 2026, non-brand impressions went from 1,018 to 4,223. That is a 315% increase. The count of distinct non-brand searches we appeared for went from 139 to 290. We became eligible for more than twice as many different things.

That is real and we are pleased with it. Here is the rest of it.

Non-brand impressions more than tripled while clicks did not move Non-brand impressions rose from 1,018 in the previous thirteen weeks to 4,223 in the most recent thirteen weeks, a rise of 315 percent. Over the same period clicks went from one to one, and average position was unchanged at about 34. 1,018 4,223 Previous 13 weeks Last 13 weeks Non-brand impressions — up 315% 1 1 Previous Last Non-brand clicks — unchangedAverage position over the same period: 34.1, then 33.7. At this variance, unchanged.
Non-brand impressions and non-brand clicks on flywheeladvertising.com, the thirteen weeks to 7 September 2026 against the thirteen before them. Source: Google Search Console via our own warehouse.

Clicks went from one to one. Average position was 34.1 before and 33.7 after, which at this property’s week-to-week variance is not a change at all. We would not call that movement on a client account and we are not going to call it movement here.

So the honest summary of our best quarter of search growth is this: the site is being seen for more than twice as many things, in the same place nobody clicks.

Why that happens, in one chart

Impressions are not traffic. An impression means Google showed your page to someone; it says nothing about whether that person could plausibly have seen it. Position is what decides that, and the distribution is where our story actually lives.

Where our non-brand search impressions actually sit, by ranking position Non-brand impressions over thirteen weeks by position band: positions 1 to 10 earned 80 impressions, 11 to 20 earned 324, 21 to 30 earned 1,509, 31 to 40 earned 1,374, 41 to 50 earned 478, and 51 or worse earned 458. Only 1.9 percent of impressions were on the first page of results. 1–10 11–20 21–30 31–40 41–50 51+ 80 324 1,509 1,374 478 458 ← 1.9% of impressions. The only band where clicks happen. 0 400 800 1,200 1,600 Non-brand impressions, 13 weeks to 7 September 2026
Non-brand search impressions on flywheeladvertising.com by ranking position, the thirteen weeks to 7 September 2026. Source: Google Search Console via our own warehouse, brand and name-collision queries excluded.

Eighty impressions out of 4,223, or 1.9%, sat on the first page of results. Just over 90% sat at position 21 or worse, which in practice means the second page onward, which in practice means nobody.

This is the single most useful thing the stack tells us about our own site, and it reframes the work entirely. Our problem is not that we are invisible to Google. Google shows our pages thousands of times. Our problem is that almost all of that visibility is in a place that cannot convert into a visit. The job is not more impressions. It is moving the impressions we already have into the range where a human sees them.

Those are different jobs with different solutions, and telling them apart requires exactly this chart. A report built on impression counts would have described this quarter as a success and left it there.

Where the growth actually came from

One page. /columbus-digital-marketing-agency/ accounts for roughly 71% of our non-brand impressions over six months: 3,708 out of 5,211.

So “non-brand impressions tripled” is more precisely “one landing page started working.” Anyone with access to Search Console could check that in a minute, which is a good reason to say it before they do. The rest of the site did not improve.

The part that is genuinely bad

We sell seventeen service pages. Over six months, fourteen of them earned no non-brand impressions at all. Not few. None.

The three that earned anything earned 125 impressions between them, against 3,708 for that one geo landing page.

It gets worse on inspection, and this is where the article’s own exclusion has to come off.

Those service pages appeared, on paper, to rank respectably: average positions of eight to twelve. Read at face value that is a foundation to build on. It is not one, and the reason is a finding in its own right.

The two figures that follow include the searches excluded everywhere else in this article, because here the exclusion is the finding. Splitting brand, name-collision and genuine non-brand searches apart is a step most reporting never takes, and until we took it the service tier looked healthy. Once we could see which impressions came from where, that respectable ranking resolved into a single query: “flywheel company” — people looking for a different business that shares our name. There are several: an Amazon agency, a WordPress host, a financial advisory firm.

In the unfiltered view, 92% of our service tier’s search impressions are people looking for somebody else, and they click through at 0.16%. On the single query that genuinely is us, the rate is 24%. Strip the collision back out and those pages are not ranking at eight to twelve for anything. They are ranking nowhere — which is what the fourteen-of-seventeen figure above already said. The two numbers are the same finding viewed from either side of the filter.

That is why the exclusion is applied everywhere else here. For four years the collision inflated our impression counts and crushed our sitewide click-through rate, and any report counting total impressions as progress was counting somebody else’s audience as our own. A name collision this large does not add noise to the conclusion. It reverses it.

Then the meta descriptions. We would have told you ours were complete, and we would have believed it, because on a site this size you build the pattern once and trust the template to carry it. The weekly crawl disagreed: five pages had no meta description at all, including both of our location pages, so Google was writing our search result snippets for us on the two pages we most wanted clicks from. Nobody skipped them. The template covered the field and five pages sat outside the template, which is precisely the kind of gap a person reading the site will never see and a crawl reports in a column. They have since been written.

What the stack found that we would not have

Two of these we would never have caught by looking.

The service cards. Every service page linked to its children through a card, and the whole card was wrapped in a single link: eyebrow, title, description, and the words “Explore →” together. So the anchor text Google read was the entire card run together: 136 characters in which the service name was welded to the sentence on either side of it. Forty-eight of our internal links were over sixty characters; the longest was 239. The pages were linked. They were linked in a way that told Google nothing about what they were.

The starved page. The landing page responsible for 71% of our non-brand visibility had exactly one contextual link pointing at it from anywhere else on our site. Everything else pointing at it was the same footer entry repeated on every page, which carries close to no weight precisely because it is everywhere. Our best-performing page was the one we had linked to least.

Neither of those is visible to a person reading the site. Both are obvious in a crawl that records anchor text, which is why the stack records anchor text.

What we tested and it said no

We assumed, as most people do, that the service pages were thin and under-linked: that they needed more words and more internal links.

We checked. Across our pages the correlation between word count and non-brand impressions is −0.31: slightly negative. Our best-performing page is our fifth longest. Two pages carrying over 4,000 words each earn 1 and 34 non-brand impressions between them. For internal links the correlation is −0.06, which is no relationship at all.

We are stating the limits of that, because it is easy to over-read. Our service pages span 534 to 939 words, a narrow range, and fourteen of the outcomes are zero. What this shows is that within our range, depth is not what separates our pages from each other. It does not show that depth never matters. But it did stop us spending a month adding words, which was the plan before we looked.

What we are doing about it

Named plainly, because a list of problems with no response is a confession, not a case study.

The card links are rebuilt so the anchor text is the service name. The starved landing page now has contextual links pointing at it from three pages instead of one. The missing meta descriptions have been written. The tag archives that were competing with our own posts are being closed off.

The larger change is the targeting. We had been chasing generic terms our own data says we cannot reach. “seo agency” is 27,100 searches a month in the US and we earn zero impressions on it. The work now goes where the data says something is winnable: local terms, and terms qualified by industry. That is a smaller ambition than we started with and a more honest one.

Why publish this

Two reasons, one of them self-interested.

The self-interested one: this is what our measurement work looks like when it is pointed at someone who cannot ask us to leave out the bad parts. Any agency can show a chart going up. Showing the chart that goes up beside the click count that did not is a different claim, and it is the one worth making. It is also how we build trust with clients, because the transparency has to hold whether the number flatters us or not. We test and we learn, and testing honestly means some of it does not work. Claiming otherwise would be the smoke. What the failures reliably produce is a sharper read on what does work, and that is the part we can stand behind.

The other: none of these problems were visible from the outside. The site looked fine, and by most of the checks we would have run ourselves it was fine. Page speed is fast, pages are responsive, and title tags, header structure, alt text and link descriptions are all in place. That is what made the gaps hard to see: five missing meta descriptions sitting inside a technical SEO setup that was otherwise complete is not something anybody goes looking for. It took the crawl to surface them, and they are fixed now. The reporting looked fine: impressions were up 315%. It took a stack that records anchor text, separates brand from non-brand, and reports position distribution rather than averages to find that most of our visibility was worthless, most of our service pages were invisible, and our best page was the one we had linked to least.

If that is true of a site run by people who do this for a living, it is worth asking what your own reporting is not showing you. That is what the measurement stack is for, and it runs on the site you already have. It does not need to be one we built.

We will publish the follow-up in six months, whether the numbers moved or not.

What Would You Ask Us?

Fifteen minutes, your business, your question. We’ll spend it answering instead of pitching.