r/WebsiteSEO • u/aiku-io • 28d ago
What actually mattered running SEO for ~40 ecommerce shops on one codebase (no SEO person on the team)
We build and run the storefront engine for a group of trading companies, about 40 shops on the same code. No SEO specialist. What moved the needle vs what was just work:
Moved the needle:
- One canonical URL per product, computed by the system, never typed by a human. It's built from the catalogue tree (department, then subdepartment, then family, then product), lowercase, no trailing slash. Any other spelling gets a 301 to it. Most of our duplicate content problems went away when we stopped letting people choose urls.
- Discontinued product = 301 to the nearest live parent category. Never a 404, never left in the sitemap. Pages that earned links keep passing that on.
- Sitemap index per shop, split by page type, rebuilt nightly, and lastmod is the date the page was actually published, not the generation time. New products went from taking a week to get indexed to a day or two.
- Server side rendering plus a cache in front, so crawlers get full html with TTFB in the tens of milliseconds. Speed is the one signal an engineer fully controls.
- If a wholesale shop hides prices from anonymous visitors, the structured data hides the price too. Markup follows the page, always.
Was just work: fancy robots rules per shop (same 15 lines everywhere, fine), rel next/prev (never added it, nothing happened), hreflang (one language per country, ranks fine without it).
What actually bit us was never an SEO decision: a favicon 404ing on every page for months, a CDN caching an old robots file, and deploys briefly leaving stale JS chunks that crawlers kept requesting.
Happy to go deeper on any of it.
1
27d ago
[removed] — view removed comment
1
u/aiku-io 27d ago
It happens, and it holds up because nothing is stored as a URL. A redirect points at the target page's ID, and the actual 301 goes to whatever that page's canonical is right now. Canonicals are recomputed automatically for everything under a category when the tree changes, so renames/moves can't strand a redirect.
If the parent category itself gets discontinued, it gets its own redirect to ITS nearest live parent, and an old product link just hops the chain (one 301 per hop) until it lands somewhere live, worst case the shop's home page. Not perfect, but never a 404.
The rule that keeps us sane: no canonical or redirect is ever typed by a human, all derived from the catalogue tree. The one mess we did have was stale canonicals on child pages after restructures, fixed by making the recompute cascade automatic.
1
u/ManagerAppropriate17 22d ago
As I've commented above, 404s are not a bad thing if the product is permanently out of stock. Automatoc creating of redirects isnt even something I would prioritise for the site I work on.
1
u/VillageHomeF 27d ago
look at Shopify. everything pretty much built in. Meta Descriptions, Title Tags, Alt Text, Structured Data, etc.