Blog
-
Auditing a headless build: what is actually different
TL;DR Most of an audit on a headless build is the same audit. The questions do not change. What changes is that half your usual checks return the wrong answer if you run them the usual way. Crawl twice, raw and rendered, because the difference between the two is the finding. Most of an audit…
-
What Googlebot actually sees on a JavaScript site
TL;DR There are two versions of every page: the one your server sends and the one that exists after JavaScript has run. Your element inspector shows you the second, which is why it will happily show you a canonical tag that was never in the HTML Google first read. View the raw source instead. There…
-
The redirects nobody sees, including the forty on my own site
TL;DR In August I found forty links in my own site’s header and footer that each fired a redirect. The site strips trailing slashes and every navigation link had been written with one. Nothing was broken and nothing looked wrong. Internal links pointing at redirects is the real cost and the cheapest fix. In August…
-
Core Web Vitals: ranking factor, or conversion problem?
TL;DR Both a ranking factor and a conversion problem, but not equally, and the honest ordering is the opposite of how it gets sold. Forty-eight per cent of mobile origins pass all three, so half the web fails and ranks fine. It is a real signal and a weak one. The conversion case is the…
-
Shopify is fast. Your apps are not.
TL;DR The received wisdom is that Shopify stores are slow. HTTP Archive found 76 per cent of Shopify sites passing Core Web Vitals on desktop against 33 per cent for WooCommerce. The platform is not your problem. Your apps are, and uninstalling one does not always remove the code it left behind. The received wisdom…
-
What you cannot change in Shopify URLs, and why it does not matter
TL;DR Shopify forces /products/ and /collections/ into your URLs and will not let you remove them. Clients are told constantly that this is holding them back. It is not. The cost is cosmetic and the cost of changing it would not be. This post exists to stop you spending money on it. Shopify forces /products/,…
-
Collections are your category pages, and most of them are grids
TL;DR On a Shopify store the collection page has the best chance of ranking, and on most stores it is a grid of products with a heading above it and nothing else. That is the biggest structural miss I find. It is not a word count problem. Nobody ever decided the collection was a page.…
-
Shopify filters and the crawl paths nobody chose
TL;DR Every filter you switch on in a Shopify collection is a URL generator, and customers can select more than one at a time. Nobody decides this. Most of those URLs never get indexed, which is the system working. The real costs are dilution and a Search Console report too noisy to read. Every filter…
-
Every Shopify product has two URLs. That is usually fine.
TL;DR Every Shopify product sits at two URLs, and on a store with twenty collections one product can have twenty-one. This gets found in a crawl, panic follows, and somebody proposes a project. No project is needed. The canonical already handles it. Check yours survived the theme, then fix the internal links. Open any Shopify…
-
Service area businesses: drawing an area you can actually rank in
TL;DR If you go to the customer, Google lets you hide your address and declare a service area instead. It is the right setting for those businesses, and people draw the area far too big. A service area is a claim about where you work, not a fact about where you are. If you go…
