The 90-day recovery, and what it unlocked
Getting KOOSHOO found on ChatGPT
That is Month 3 complete, and with it the three-month recovery programme. This report closes the loop on the full issue register from the original April audit, so you can see what was found, what was fixed, and what remains. As promised at the start, we re-ran the complete technical audit in July to verify it.
The site was carrying a large backlog of technical damage from the platform migrations, and that backlog is now cleared. Errors are down 81%, broken pages have gone from 118 to 4, and AI Search Health has moved from 63% to 78%, which means AI tools can now read, understand and cite the site properly where in April they largely could not. Organic search, the channel this programme was engaged to fix, is up on every measure that matters. The technical handbrake is off, and the site is a clean foundation to build visibility on.
| Metric | April 2026 | July 2026 | Change |
|---|---|---|---|
| AI Search Health | 63% | 78% | Up 15 points |
| Site health score | 74% | 80% | Up 6 points |
| Errors | 604 | 115 | Down 489 (81%) |
| Warnings | 1,360 | 246 | Down 1,114 (82%) |
| Broken pages | 118 | 4 | Down 114 (97%) |
| Blocked pages | 15 | 8 | Down 7 |
| Pages crawled | 761 | 625 | Down 136 |
The remaining errors are not leftover work. They are either new issues from content added since April, or items the Shopify theme will not allow us to fix (listed under platform limitations).
The drop in pages crawled is the clean-up working. Broken, orphaned and duplicate URLs from the migrations have been removed or redirected, so the crawler no longer wastes effort on pages that should never have existed. No live content was lost.
Google Search Console, comparing the three months since the programme started (9 April to 9 July 2026) against the previous three months (9 January to 8 April 2026).
| Metric | Previous 3 months | Since we started | Change |
|---|---|---|---|
| Clicks | 3,410 | 3,850 | Up 12.9% |
| Impressions | 711,000 | 208,000 | Down 70.7% |
| Average click-through rate | 0.5% | 1.9% | Close to 4x |
| Average position | 9.7 | 8.5 | Improved 1.2 places |
Why impressions fell, and why that is a good thing. An impression is counted every time a page appears in search, including page three where nobody looks. The site was surfacing widely and shallowly for queries that were never going to convert, at position 9.7 and a 0.5% click-through rate. Clearing the broken and duplicate URLs from the migrations stripped out that noise. The site now reaches roughly a third as many searchers and gets more clicks from them: click-through rate up from 0.5% to 1.9%, average position from 9.7 to 8.5.
You flagged that total sessions look down around 13% year on year on Shopify. That is the right question, and the answer sits just underneath the headline.
Total sessions count every visit from every source, and most of KOOSHOO's volume is direct and brand traffic. This programme was not scoped to move those channels, and they carry the site's seasonality, with June to August the quietest stretch of the year. The channel it was engaged to fix is organic search, and organic search is up year on year, not down. On Google Search Console, for the same window:
| Organic search, year on year | 2025 | 2026 | Change |
|---|---|---|---|
| Clicks | 3,502 | 3,833 | Up 9.5% |
| Average click-through rate | 1.47% | 1.86% | Up 0.39 points |
| Average Google position | 18.3 | 8.7 | Pages now rank nearly twice as high |
So the qualified audience, people actively searching for organic hair ties and plastic free scrunchies, is growing and landing on pages that rank far higher than a year ago. That is the audience that converts.
The ten pages driving the most organic clicks, 9 April to 9 July 2026. These ten account for 81% of all organic clicks to the site.
| Page | Clicks | Impressions | CTR |
|---|---|---|---|
| Homepage | 1,239 | 18,363 | 6.75% |
| Organic Hair Ties (collection) | 609 | 24,927 | 2.44% |
| Organic Cotton Headbands (collection) | 315 | 11,649 | 2.70% |
| Organic Twist Headbands (product) | 309 | 16,511 | 1.87% |
| Organic Hair Accessories (collection) | 142 | 6,415 | 2.21% |
| Plastic Free Round Mini Hair Ties (product) | 133 | 8,903 | 1.49% |
| Plastic Free Hair Ties (product) | 129 | 9,787 | 1.32% |
| Scrunchies, Plastic Free (collection) | 107 | 6,599 | 1.62% |
| Blog: How Hair Ties Damage Hair | 69 | 30,210 | 0.23% |
| Blog: Everything About Hair Ties | 65 | 17,538 | 0.37% |
Collection pages are doing the heavy lifting. The four collection pages between them bring in 1,173 clicks, and they convert impressions to clicks at above the site average. That validates the structure we set up: collection pages targeting broad category searches, product pages targeting specific product and attribute searches. It is working as designed.
The biggest single opportunity on the site. The bottom two rows, two blog articles, pull 47,748 impressions between them, 23% of everything the site shows in search, and convert it into just 134 clicks at 0.23% and 0.37% against a 1.9% site average. Tens of thousands of people are shown these articles every month and almost none click. The demand and the ranking already exist. What is missing is a title and page good enough to make them open it.
GA4, same comparison periods, broken down by traffic source. Sessions are visits to the site, which is a different measure from the search clicks above.
| Channel | Previous 3 months | Since we started | Change |
|---|---|---|---|
| Organic search | 3,002 | 3,559 | Up 18.6% |
| Direct | 7,296 | 7,090 | Down 2.8% |
| Referral | 240 | 311 | Up 29.6% |
| 264 | 171 | Down 35.2% | |
| Organic social | 196 | 118 | Down 39.8% |
| Unassigned | 177 | 349 | Up 97.2% |
Organic search is the channel carrying growth. It was the only acquisition channel to grow over the quarter, up 18.6%, while every other channel was flat or down. Organic now accounts for 30.4% of all sessions, up from 26.7%, and its engagement events rose 25.1%, faster than sessions, so the traffic arriving is more engaged rather than simply more numerous.
| Metric | Previous 3 months | Since we started | Change |
|---|---|---|---|
| Sessions | 3,002 | 3,559 | Up 18.6% |
| Engagement events | 27,777 | 34,738 | Up 25.1% |
| Share of all sessions | 26.7% | 30.4% | Up 3.7 points |
The migration damage. This was the bulk of Month 1 and carried through the programme.
| Issue | Volume | Result |
|---|---|---|
| 4XX error pages | 202 | Fixed. All resolved |
| Broken internal links | 322 | Fixed. All resolved |
| Broken external links | 76 | Fixed. All resolved |
| Broken redirects | 39 | Fixed. All resolved |
| HTTPS to HTTP links | 87 | Fixed. All corrected |
| Hreflang conflicts in source code | 88 | Fixed. All resolved |
| Incorrect hreflang links | 2 | Fixed. All resolved |
Meta titles, descriptions, headings and image accessibility across the site.
| Issue | Volume | Result |
|---|---|---|
| Missing alt text | 269 images | Fixed. No images on the site are now missing alt text |
| Titles and descriptions too long | 260 pages | Fixed. All pages optimised |
| Duplicate meta titles | 15 URLs | Fixed on 13. Two pages cannot be updated, see platform limitations |
| Duplicate title and H1 text | 26 pages | Fixed. All resolved |
| Missing meta descriptions | 24 pages | Fixed. Descriptions written and added to all 24 |
| Duplicate meta descriptions | Wholesale vs main | Fixed. New descriptions written for the wholesale domain, main domain left unchanged |
| Missing H1 headings | 8 pages | Fixed. New H1 written and added to each |
| Priority page optimisation | 12 pages | Complete. Scope was 10 pages, 12 delivered |
On the duplicate meta descriptions: duplication between the wholesale domain and its en-nz version is not a problem provided hreflang is set up correctly, which it now is. Duplication between wholesale and the main site is a problem, so the wholesale descriptions were rewritten and the main domain left untouched.
FAQ content and the Google Shopping feed.
| Item | Scope | Result |
|---|---|---|
| FAQ content | Priority pages | Written and delivered. Implementation on the pages sits with your web developer |
| Google Merchant Center setup and feed optimisation | Ongoing | Complete |
| GTIN audit and implementation | Product catalogue | Complete |
FAQ content does two jobs at once. It answers the questions customers actually ask, which helps conversion, and it gives AI search tools clean question and answer pairs to quote when someone asks about plastic free hair ties or organic headbands. Once it is live on the pages, paired with FAQPage schema, it is one of the more direct ways to earn a citation in an AI answer.
Making the brand legible to AI search tools, not just to Google.
| Item | Scope | Result |
|---|---|---|
| AI crawler access via robots.txt | Fix | Complete. AI crawlers now allowed to read the site |
| llms.txt | Creation | Complete. Live at kooshoo.com/llms.txt |
| Identity and Organisation schema | Deployment | Complete. All required schema deployed |
| Product and AggregateRating schema | Deployment | Complete. Deployed and live |
| FAQPage schema | Deployment | Written. Goes live with the FAQ content, which sits with your web developer |
| Wikidata entity | Creation | Complete. Entity live and in scope as agreed |
| AI Search Health score | Measurement | Improved from 63% to 78% |
This is the section that matters most for what comes next. In April, pages were blocked from AI crawlers including ChatGPT-User, OAI-SearchBot and Google-Extended, with no llms.txt or identity schema telling AI tools who KOOSHOO is, and AI Search Health sat at 63%. All of that is now in place and the score is at 78%. When someone asks ChatGPT or Google AI for plastic free hair ties or organic headbands, the site can now be read, understood and cited. Before this work, it largely could not.
Items scoped to the Shopify developer rather than to Team Empathy.
| Issue | Volume | Result |
|---|---|---|
| Unminified JavaScript and CSS | 320 files | Fixed by the developer |
| W3C validation cleanup | 115 errors | Resolved as far as the Shopify theme allows |
| iFrame and inline CSS optimisation | Sitewide | Resolved as far as the Shopify theme allows |
| Site speed, mobile and desktop | Sitewide | Improved to the maximum the theme permits |
A small number of items cannot be resolved within the current Shopify setup. These are not open tasks. They are the ceiling of what the platform allows, and they are worth holding in mind for any future theme decision.
The three months did what they were scoped to do. Every technical and AI foundation item in the original audit has been resolved, other than the handful the Shopify theme will not permit. The one to hold onto is the AI search shift: moving from blocked crawlers and no identity signals to a 78% AI Search Health score means KOOSHOO is now eligible to be found and cited in AI search, where it was not in April. One item is ready and waiting, the FAQ content is written and delivered, ready for your web developer to publish.
The next stage of growth comes from the content and authority layer that sits on top of the foundation, and the demand is already visible in this report: the two blog articles pulling 23% of impressions at almost no click-through, the collection pages ready to be widened, and the hair health hook that search itself is pointing at. The content plan for that next stage is ready, and it is the conversation for our call.