SEO and indexing control
Operational checklist for what crawlers should index vs ignore in the SHOPin storefront accelerator, and how to keep URLs, metadata, and HTTP responses consistent. Delivery and caching at the edge sit under CDN configuration and Cache strategies. This page does not replace provider-specific SEO tooling or legal/compliance review for your market.
Presentation metadata for CMS-driven routes is assembled in build-content-page-metadata.ts and site-url.ts (canonical base, alternates).
What to index
- Index, follow — Primary commerce and content URLs you want in search (categories, products, articles, main landing pages). Enforce one clear URL per logical page.
- Control thin/duplicate URLs — Filter combinations, alternate sorts, and pagination beyond page 1 often deserve noindex, follow (or equivalent) so crawlers can follow links without indexing every variant. Prefer one canonical URL per resource.
- Prefer fewer indexable filter URLs — When possible, keep sort/filter in client state without minting new crawlable paths; otherwise document rules for
noindexand canonicals.
Canonicals
- Role — Declare the preferred URL when duplicates exist (tracking params, faceted URLs, etc.).
- Practice — Generate canonicals from data (slug, locale) in code, not by hand per page. Example:
/p/shirt-123?color=red→ canonical/p/shirt-123/(or your chosen clean path).
Hreflang
- Role — Tie locale/region variants together so the right version is eligible for the right audience.
- Practice — Links must be mutual (each page lists its alternates). You need reliable locale/region data for every equivalent URL you expose.
Discovery
- URL shape — Stable, readable paths (e.g. locale + category + product slug) help humans and logs; keep slugs in sync with catalog/CMS data.
- robots.txt — Block paths that should never be crawled (internal search result storms, admin, non-public APIs behind the same host if applicable).
- XML sitemaps — List only indexable URLs; regenerate when catalog or content changes materially. Splitting by type (products, categories, content) scales better than one giant file.
Metadata and structured data
<title>and H1 — Unique per indexable page where possible; align with product/content names from the CMS or catalog.- Meta description — The short blurb search engines may show under the page title in results. Write it so the preview is accurate and useful; hand-tune important URLs and use a template fed by catalog/CMS fields for large sets of similar pages (e.g. products).
- Structured data — JSON-LD (or agreed format) for Product, ItemList, BreadcrumbList, Article where you have trustworthy fields (price, availability, ratings policy). Invalid or misleading markup can cause rich-result issues.
Rendering and performance
- SSR for indexable templates — Primary PLP/PDP/content routes should ship meaningful HTML without relying on client-only bootstrapping, so crawlers and users get content early.
- Performance — LCP/CLS and general speed affect UX; search engines may use experience signals. Align front-end work with CDN caching and asset strategy (see linked pages above).
Redirects and errors
- 301 — Permanent URL moves; use for stable renames and migrations.
- 302 / temporary — Short-lived moves or experiments only; avoid leaving commerce URLs on long-term temporary redirects.
- 404 — Real 404 status for gone URLs; helpful body with internal links.
- 5xx — Keep error responses simple so a failing dependency does not break the error page itself.