How to fix seo facet url not canonicalized on Nuxt.js

Add a canonical tag to every filtered, sorted, and paginated collection/category URL pointing back to the clean (unfiltered) category URL, so Google consolidates duplicate pages and focuses crawl budget on your real content.

Steps for Nuxt.js

  1. In your category page component or layout, use the useHead composable (Nuxt 3) to set the canonical dynamically based on the route path, excluding query params: useHead({ link: [{ rel: 'canonical', href: `https://www.example.com${route.path}` }] });
  2. This uses route.path (clean path only) rather than route.fullPath (which includes query strings).
  3. For Nuxt 2 with vue-meta, use head() { return { link: [{ rel: 'canonical', href: `https://www.example.com${this.$route.path}` }] }; }.
  4. Verify by building and checking page source on a filtered URL.
Official Nuxt.js documentation ↗

What is seo facet url not canonicalized?

When shoppers filter your product listings by size, colour, price, or sort order — or browse to page 2, 3, etc. — your store generates a new URL for each combination (e.g. `/collections/hoops?color=red&sort=price` or `/collections/hoops?page=5`). These "facet URLs" display largely the same products as the base category page, making them near-duplicate pages. A canonical tag is a small piece of HTML that tells Google: "Treat THIS page as the authoritative, indexable version — not the one you just crawled." Pointing every facet URL's canonical back to the clean category URL (e.g. `/collections/hoops`) is the standard, Google-recommended way to handle this.

Without canonical tags, Google may index hundreds or thousands of near-identical filter and pagination URLs instead of your core category pages — diluting the ranking signals (links, authority, clicks) that should be concentrated on those pages. Crawl budget is wasted on low-value filter combinations, meaning new or updated products get discovered more slowly. Duplicate content confusion can push the wrong URL into search results, giving shoppers a paginated or pre-filtered page that looks broken. Fixing canonicals consolidates ranking signals onto your clean category pages, improves crawl efficiency, and protects your organic traffic from unnecessary duplication penalties.

See the complete Seo facet url not canonicalized guide for every platform and the full background.

Not sure if your Nuxt.js store has this?

Run a free SEOLZ scan — we’ll find seo facet url not canonicalized and every other issue across your whole site.

Scan my site free

Fix seo facet url not canonicalized on another platform