Joachim asked a fair question after our call: if the links are working, why does search traffic look flat year on year, and why is so much of the growth branded or from the new car seat towels range? Rather than defend our position we went and checked properly.
Everything below comes from your Google Search Console and your Shopify, not from estimates. Some of it is uncomfortable reading for us. Some of it points at a real opportunity that has been sitting in front of us the whole time.
Since November we have built 273 links across 211 domains. Most of them sit on free publishing and bookmarking platforms, places like Medium, Notion, Diigo, Tumblr and Blogger, where anyone can create a page. The platform itself has a high domain rating, so on a report the link looks strong. The individual page carries very little weight.
We first checked those platforms against Ahrefs and none of them registered. Ahrefs is not Google though, so on its own that proves little. So we went to the source that does count: the linking domains report inside your own Search Console, which is Google telling you directly which sites it credits as linking to you.
Google credits your site with 134 external links from 47 domains. We took our own link building log, every one of the 273 links across all eight months, and checked all 211 source domains against that list one by one. Nine of them appear, accounting for 19 of the 134 links.
So of 273 links built over eight months, Google credits 19. Roughly four in every hundred domains we used registered at all. The rest of your link profile was there already or arrived on its own.
It is worth being precise about what the 134 links are. They are every link Google credits to your site from every source since it existed, not our work. Most of them nobody built on purpose. They split roughly like this:
| Type of link | Domains | Links | Examples |
|---|---|---|---|
| Social, platform and app | 15 | 78 | Reddit, Pinterest, Shop.app, Judge.me, LinkedIn |
| Foundational directories and profiles | 16 | 30 | ProvenExpert, Infobel, Localsearch, About.me |
| Genuine editorial and local | 16 | 26 | Trip in a Van, Marine Conservation, Caravanning with Kids, nsw.gov.au |
| From our own link building log 9 of 211 | 9 | 19 | ProvenExpert, Localitylist, About.me, cent.co, DeviantArt, lnk.bio |
Splitting our own log by the type of link makes the point sharper. The twenty business listings we set up in November, the foundational directory work, registered at roughly four times the rate of everything else we built:
| What we built | Links | Domains Google credits | Hit rate |
|---|---|---|---|
| Business listings, the foundational batch | 20 | 2 | 10% |
| Profiles, bookmarks, free publishing platforms | 253 | 7 | 2.8% |
The wider point stands though. Directory and profile listings still register with Google, so foundational links remain worth doing, and they are a one-off job rather than a monthly one. The free-platform links that made up the bulk of our monthly work have stopped counting for anything. Our own team's outreach backs this up: around 100 approaches to relevant blogs for editorial placements returned zero free placements, and almost every one asked for payment. So the realistic options now are foundational links once, genuine PR and relationships, or paid placements. There is no longer a meaningful free middle.
That is a change in the market rather than something unique to your site, but we should have caught it sooner and told you rather than kept invoicing the old approach.
To be fair to the data: Google's report is not a complete map of the web either, and we cannot prove with certainty these links did nothing at all. What we can say is that neither Google nor any tool we have shows them, and there is no pattern in your numbers that suggests they moved anything.
Comparing April to July this year against the same months last year, with brand and car seat towels removed, here is where your search visibility actually sits:
| Where you rank | Times shown 2026 | Clicks 2026 | Times shown 2025 | Clicks 2025 |
|---|---|---|---|---|
| Positions 4 to 10 the money | 22,381 | 237 | 7,534 | 88 |
| Positions 11 to 20 | 27,891 | 97 | 43,614 | 143 |
| Positions 21 to 50 | 19,693 | 14 | 48,478 | 33 |
| Positions 51+ | 2,065 | 0 | 19,854 | 4 |
Your total impressions are down about 40% over that period, and on its own that looks alarming. It is not. Almost all of the drop sits at positions 21 and beyond, which between them produced 37 clicks in the whole of last year. You have stopped being shown on page four for things that were never going to sell a towel, and started being shown on page one for things that will.
Your Shopify agrees at the money end: organic revenue is up 28.9% since kickoff, $30,075 to $38,755, and organic is now your single biggest channel.
On like-for-like months, total clicks are up 8%, from 2,157 to 2,330. So traffic is not down. But we checked Joachim's other point properly, and he is right about that too. Of the 173 extra clicks, roughly 104 are car seat towels and 40 are branded. About 83% of the growth is your new range and your brand. Everything else contributed around 29 clicks.
So on clicks alone, nine months of work has moved very little, and it is fair of him to say so.
What the click count hides is the table in section 02. Underneath that flat number the site has moved out of the positions where nothing happens and into the ones where it does. The work built the position. It has not been converted into clicks, and the next two sections explain exactly why.
This is the finding that explains most of the rest. For your biggest search terms, Google is not choosing one page from your site. It is showing several, all in the same place on the results page, and none of them is the obvious answer.
Take "quick dry beach towel" and "quick dry towels australia", two of your most valuable searches. Over the last twelve months Google served these five different pages for them:
| Search | Page Google shows | Position | Times shown | Clicks |
|---|---|---|---|---|
| quick dry beach towel quick dry towels australia | Homepage | 10.0 | 4,706 | 45 |
| /collections/travel-towels | 9.7 | 1,375 | 0 | |
| /collections/beach-mats | 9.2 | 1,305 | 0 | |
| /products/kalbarri | 9.1 | 1,153 | 0 | |
| /collections/tea-towel | 8.0 | 1,079 | 0 |
A tea towel page is being shown to people searching for quick dry towels. So is a beach mat page. None of them gets clicked, because none of them is what the searcher asked for.
The same thing happens on your hooded towel range, where a single product page keeps beating the collection that was built for the job:
| Search | Page Google shows | Times shown | Position |
|---|---|---|---|
| adult hooded towel | /products/ningaloo-adult-hooded-towel | 2,188 | 15.3 |
| /collections/hooded-towels | 464 | 9.8 | |
| hooded towels for adults | /products/ningaloo-adult-hooded-towel | 942 | 19.1 |
| /collections/hooded-towels | 754 | 8.9 |
The collection ranks four to ten places better whenever Google picks it. It just does not pick it often enough.
Give every search one owner page, then make that page obviously the right answer.
/collections/travel-towels. The adult hooded family belongs on /collections/hooded-towels. Written down once, so it stops drifting.Every non-branded search on your site over the last twelve months, grouped by where you rank:
| Position | Searches | Times shown | Clicks | Click rate |
|---|---|---|---|---|
| 1 to 3 | 663 | 2,856 | 134 | 4.69% |
| 4 to 10 | 1,877 | 105,793 | 2,365 | 2.24% |
| 11 to 20 | 1,680 | 146,622 | 996 | 0.68% |
| 21 to 50 | 2,093 | 63,401 | 104 | 0.16% |
A 2.24% click rate at positions four to ten is roughly a third of what those positions normally return. The reason is section 04, and you can see it directly by comparing a range where one page clearly owns the search against one where five pages compete:
| Search | Page shown | Position | Times shown | Clicks | Click rate |
|---|---|---|---|---|---|
| car seat towels | car-seat-towels | 6.6 | 2,764 | 162 | 5.86% |
| car seat towel australia | car-seat-towels | 6.1 | 2,068 | 120 | 5.80% |
| waterproof car seat towel | car-seat-towels | 7.8 | 969 | 43 | 4.44% |
| quick dry towel | homepage | 8.2 | 12,390 | 142 | 1.15% |
| quick dry beach towel | homepage | 10.0 | 4,706 | 45 | 0.96% |
| quick dry towels australia | tea-towel | 8.0 | 1,079 | 0 | 0.00% |
Your quick dry family alone is shown over 20,000 times a year at positions 8 to 10 and returns under 200 clicks. At the car seat towels click rate that same visibility would return around 1,100.
Rewrite the pages that are actually ranking, not the ones we wish were. Some of your pages have never had their titles written for search because they were not on the original target list, even though Google is showing them. Two live examples:
| Kalbarri product page | Ningaloo adult hooded towel | |
|---|---|---|
| Ranks for | "quick dry beach towel" at 9.1 | "adult hooded towel" at 15.3 |
| Shown | 1,153 times | 2,188 times |
| Clicks | 0 | 7 |
| Title now | Kalbarri Travel Towel | Will & Wind | Adult Ningaloo Hooded Towel | Will & Wind AUS |
| Title we would use | Kalbarri Quick Dry Beach Towel – Sand Free & Compact | Adult Hooded Towel – Quick Dry Beach Poncho for Grown Ups |
| Why | Someone searching "quick dry beach towel" sees a product name they have never heard of. Nothing in the listing tells them it is the thing they asked for. | Same problem. The words people search, adult and hooded and quick dry, need to be in the part of the listing they read. |
To be clear and fair to the work already done: the titles and descriptions on the thirty pages that were in the original scope are well written and keyword-led. The gap is the pages that were never in that scope but which Google decided to rank anyway. That is a process problem we own, and section 07 covers it.
1,433 of your non-branded searches sit at positions 11 to 20. They were shown 115,384 times last year and returned 658 clicks. Your organic revenue works out at $4.09 per organic click, so:
| Scenario | Clicks a year | Gain | At $4.09 a click |
|---|---|---|---|
| Where it sits today | 658 | — | — |
| Onto page one, at your own current click rate | 2,585 | +1,927 | +$7,880 a year |
| Into the top three, at your own current click rate | 5,412 | +4,754 | +$19,440 a year |
Where it is concentrated, and none of it needs a new link:
| Page | Times shown | Clicks | Position |
|---|---|---|---|
| Travel towels collection | 45,450 | 196 | 13.6 |
| Hooded towels collection | 27,669 | 217 | 12.5 |
| Kids hooded towels collection | 24,404 | 72 | 14.6 |
| Hair wrap product | 15,117 | 18 | 19.4 |
| Tea towel collection | 9,950 | 13 | 13.7 |
Here is what we would actually change on the two biggest, using what is on the pages right now.
| Title now | Travel Towels - Quick Dry Travel Towel & Fast Drying Styles | Will & Wind 81 characters |
| Issue | Good words, but too long, so Google cuts it off before the end. It also repeats "towel" three times, which reads as written for a search engine rather than a person. |
| Proposed | Quick Dry Travel Towels – Sand Free & Pack Small | Will & Wind 60 characters |
| H1 now | TRAVEL TOWELS |
| Proposed H1 | Quick dry travel towels, made for Australian beaches |
| Page content | Currently a product grid with almost no supporting text. Add a two paragraph intro and a five question FAQ covering drying time, sand, sizing, care and packing size. This is what wins the query outright rather than sharing it with four other pages. |
| Title now | Hooded Towels & Hooded Beach Towels | Quick-Dry & Soft | Will & Wind 80 characters |
| Issue | Again too long to display in full, and it says nothing about adults, which is the search losing to the product page. |
| Proposed | Hooded Towels for Adults & Kids – Quick Dry | Will & Wind 57 characters |
| H1 now | HOODED TOWELS |
| Proposed H1 | Hooded towels for adults and kids |
| Page content | Split the intro so adults and kids are both addressed on the page, then link down to the kids collection. Right now the adult searches have nowhere obvious to land, which is why a single product page keeps taking them. |
Small technical note while we were in there: the H1 headings on your collection pages contain invisible zero-width characters, which is a Shopify theme quirk rather than anything anyone did. Worth cleaning up at the same time.
Open the full page-by-page fix list ↗We want to be straight about the root of this, because it is more useful than a list of fixes.
At the start we agreed a scope of thirty keywords and the thirty landing pages that matched them. Those pages were optimised well. Then Google did what Google does and started ranking different pages instead: the homepage, the beach mats collection, a tea towel page, individual products.
The deeper issue is that the engagement was built as a fixed list to work through rather than something we re-read every month. A search programme should look at what Google actually did in the last thirty days and respond to it. If Google decides your tea towel page answers "quick dry towels australia", the job that month is to fix that, not to carry on optimising a page Google has stopped showing.
So the change we would make, on your account and generally, is this:
321 throwaway sites with names like rankseopartners.shop, 294 of them arriving since May. None appear in our build log and none were created by you. They are automated link networks that point at real stores so their own domains look legitimate.
Every one is nofollow, which means Google discounts them by default.
Around 2,900 links point at two odd URLs on your own domain, your vendor filter page with foreign gambling text pushed into the web address. Someone was trying to use your store to host their own search results.
We checked: Google has never shown any of those pages for any search in twelve months, and the vendor URLs now redirect. It did not work.
A disavow file is in place and was refreshed on 30 July. It currently covers 43 domains. Our audit turned up 321 spam domains in total, so we have handed the fuller list across and it can be merged into the existing file whenever you want it done.
Open the backlink audit and disavow file ↗We are not going to pitch you a bigger retainer off the back of an audit that found our own link work was not landing and our own process was too rigid. So here is what we think is fair.
| What we found | What it means |
|---|---|
| Google credits 134 links to your site; 19 of them trace to the 273 we built | The link building stops. Foundational listings register best, the free platforms barely at all, and everything else now costs money. |
| Positions up thirteen places, clicks in the money band up 169% | The on-page and technical work has been landing, just not visibly. |
| 83% of click growth is your brand and the car seat range you launched | Joachim is right. On clicks alone we have moved very little. |
| Five pages competing for your best searches, click rates near zero | The single biggest fix available, and it needs no links. |
| We saw Google favouring other pages early and stayed the course | Worth adapting faster. Our process becomes monthly rather than fixed. |
Our proposal in one line: we do the on-page work for free, introduce you to Gil for site speed, give you three months on the new platform, and stop the retainer.
If that sounds fair, the on-page work can start next week and you would expect to see movement on the quick dry and hooded towel searches within four to eight weeks. We would report on it once, properly, with revenue and the pages driving it, and you can decide from there whether there is anything else worth doing together.
Happy to talk through any of it. Every figure here traces back to your own Search Console or your own Shopify, and we will show you the working behind any number you want to check.