Collection Page SEO Checker
Paste one category or collection URL from Shopify, WooCommerce, BigCommerce, Magento or anything else. The checker fetches the HTML and reports 13 checks as pass, warn or fail, each with the value the page actually served: title, description, H1, canonical, pagination, robots, category copy, product links, schema, alt text, filters and platform.
Short answer
A category page is the URL that should rank for a store's head terms. This checker fetches one category URL, up to 5 MB in 15 seconds, and reports 13 checks with observed values: title, description, H1, canonical, pagination, robots, category copy word count, product links, schema, alt coverage and filter URLs. It does not render JavaScript.
Why the category page is the head-term asset
A product page ranks for one product's name. A category page ranks for the phrase a shopper types before they know which product they want: running shoes, standing desks, matte lipstick. Those head terms carry the volume, and the category page is the only URL on the store built to answer them.
Google's ecommerce site structure guidance puts the category page between the menu and the catalogue: link from menus to category pages, from those to sub-categories, and from sub-categories to every product. It also warns that if category pages do not link directly to all products, Googlebot might not find them by crawling alone.
That gives a category page three jobs at once, and the checks on this page follow them:
- Rank for the head term. The title tag, H1, meta description and the category's own copy are the on-page signals that say what the page is about.
- Pass discovery to products. Product links are internal links Googlebot follows, and pagination decides whether products past the first batch have a path at all.
- Stay the one URL for the job. The canonical, the robots directives and the filter URLs decide whether the category itself is indexed, or one of its hundred sorted and filtered copies is.
Google's ecommerce URL structure guidance adds the part stores get wrong most: each paginated page needs a unique URL, parameters should be key=value rather than bare values, and internal links should never carry session IDs or other temporary values. The category page SEO guide covers the copy and layout side; this tool reads the technical side.
What each check means and the threshold it uses
Every check reports the value the page served next to its verdict, so you can see the 193-character description rather than be told it is long. The thresholds are below, and the reference table after them says what a pass means for each row.
Title and meta description length
A title passes between 10 and 60 characters and a description between 50 and 160, the same thresholds as the meta tag checker so the two tools never disagree about one page. Over the limit is a warning because Google trims it. Missing is a fail because Google then writes one from a product card.
Self-referencing canonical
The canonical tag on a category page should name itself. A filtered or sorted URL canonicalising to the category also passes. Pointing at another URL is a warning, two tags is a fail, and a later page pointing at page 1 is a fail: Google's pagination guidance says not to use the first page as the canonical.
Pagination
Google's pagination documentation asks for a unique URL per page and states that Google no longer uses rel=next and rel=prev. So the checker scores plain links to page 2 and records the rel attributes as information. A page with rel=next but no anchor to page 2 is a warning: products past the first batch have no crawlable path.
The category description heuristic
Category copy is text that belongs to the category rather than to a product card, and no HTML element marks that boundary. The tool reads it in two passes and tells you which one it used:
- Known containers first. Shopify's collection-description and .rte inside the collection header, WooCommerce's term-description and products-header description, and the category description blocks BigCommerce and Magento themes print.
- Then paragraphs outside cards. Text in p elements inside main, skipping anything inside a product card, list item, article, navigation, site header, footer, aside or form.
- 50 words passes. Fewer is a warning, not a fail, because a description the heuristic cannot see is possible and the report says so.
| Check | What pass means | Why it matters |
|---|---|---|
| Title tag | Present, 10 to 60 characters | The strongest on-page signal for the head term, and the headline of the result |
| Meta description | Present, 50 to 160 characters | The snippet under the result; missing means Google lifts a product card |
| H1 | Exactly one | Confirms the category name; two usually means a banner is marked up as a heading |
| Canonical | Self-referencing, or a filter dropped to the plain URL | Decides which of the category's many URLs Google indexes |
| Pagination | A plain link to page 2 with its own URL | Products past the first batch need a crawlable path; rel=next is no longer read |
| Robots meta and X-Robots-Tag | No noindex, no nofollow | noindex removes the page; nofollow stops products receiving its signals |
| Category description | 50 or more words outside product cards | Gives Google copy to rank beyond a grid of product names (heuristic) |
| Product links | 6 or more distinct product URLs in the HTML | Google's guidance relies on category-to-product links for discovery |
| BreadcrumbList schema | Present and parseable | The one rich result a category page reliably earns |
| CollectionPage, ItemList, Product | Recorded only | No rich result of their own; Product belongs on product pages |
| Product image alt text | Every product card image has alt text | Image search and accessibility; under 80% coverage is a fail |
| Filter and sort links | Recorded only | Each is a crawlable URL; fine with a canonical, costly without one |
| Platform | Recorded only | Chooses which product-link and description patterns are read |
How to read a pass, warn and fail report
The banner counts the scored rows. Informational rows are listed but never counted, so a page can show two fails and still have thirteen rows. Read the report top to bottom, because the rows are ordered from the signals that decide whether the page ranks at all to the ones that decide how well.
- Fail means the page cannot do its job as served: no title, no description, no H1, a noindex, conflicting canonicals, page 2 pointing at page 1, or a grid with no product links.
- Warn means it works but leaves something on the table: a long title, a missing canonical, thin copy, no breadcrumb markup, or product images without alt text.
- Pass means the observed value meets the threshold in the table above. It does not mean the value is good copy, which is why it is shown.
- Info means the row is a fact about the page, such as the filter URL count or the platform, that needs your judgement rather than a rule.
Two results deserve a second look. A description at 0 words on a page that has copy means the copy sits in a container the heuristic does not know, or JavaScript renders it. A product-link fail on a page where you can see products means the same about the grid, which the technical SEO for ecommerce guide covers.
Read the observed value, not just the pill
A 62-character title and a 140-character title both warn, and they need different fixes. The value column is the report; the verdict is the index into it.
What to do after the report
Most rows are template problems, which is good news: the canonical, breadcrumb markup, pagination links and alt handling are set once in the collection template and fixed for every category. The title, description and copy are not, and those are where the ranking work is.
- 01
Paste the first page of the category
Use the URL shoppers land on from the menu, without ?page=, ?sort_by= or a filter parameter. Page 1 is the URL that should rank for the head term, and the tool reads it as served, so a filtered or paginated URL produces a report about that variant instead.
- 02
Read the platform and the fetch line
The banner names the platform it recognised and the URL it landed on after redirects. If the platform is unknown, the product-link and description checks fall back to generic patterns, and a redirect to a different host means you checked a URL the store no longer serves.
- 03
Clear the fails first
A fail is a missing title or description, no H1, noindex, two canonical tags, page 2 canonicalising to page 1, or a grid with no crawlable product links. Each one stops the page ranking or stops products being found, and each is a template fix that repairs every category at once.
- 04
Then work the warnings in the order they appear
Title and description length, a missing canonical, no breadcrumb markup, thin category copy and product images without alt text are all things a competitor's category page probably has right. The observed value column tells you what to change without opening the page source.
- 05
Read the informational rows for crawl budget
Filter and sort links and the schema row are recorded, not scored. Dozens of crawlable filter URLs are fine when they canonicalise to the category; thousands with no canonical or robots rule are a crawl budget problem the checker cannot see from one page but this count hints at.
- 06
Rerun, then check the sibling categories
Most fixes live in the collection template, so one change repairs every category and a rerun confirms it. The description and the title do not: those are per category. List your head terms, map one to each category page, and check each URL once the copy is in.
To confirm one fix, the canonical tag checker validates a single URL's tag in isolation, and the breadcrumb schema generator writes the BreadcrumbList block a category page is missing. The ecommerce SEO checklist puts these checks in order with the rest of the store.
From one category to every category
This checker reads one page. CrawlRaven's keyword map assigns each head term to the category page that should rank for it, flags two categories chasing one term, and the join with Search Console and GA4 shows organic revenue per category page, so you fix the categories that pay first. Free plan for 1 site.
What this tool checks
Title and description length
Both tags with character counts against the same thresholds as the meta tag checker
H1 and canonical
H1 count and text; canonical present, self-referencing, dropping a filter, pointing at page 1 or elsewhere
Pagination as Google reads it
Plain links to page 2 scored; rel=next and rel=prev recorded, since Google no longer uses them
Robots meta and X-Robots-Tag
noindex and nofollow from the head and from the response header
Category copy word count
Text outside product cards, read from known description containers first, with the method stated
Product links and alt coverage
Distinct product URLs in the HTML, and product card images with and without alt text
Structured data and filters
BreadcrumbList, CollectionPage, ItemList and Product from JSON-LD; filter and sort URL count
Real limits, stated
One URL, 5 MB of HTML, 15 seconds per fetch, no rendering, platform detected for four platforms
One page tells you about the template, not the catalogue
Frequently asked questions
What does the Collection Page SEO Checker read?
It fetches one category or collection URL and reads the served HTML for 13 things: title and meta description length, H1 count, canonical target, pagination links, robots directives, category copy word count, product links, four structured data types, product image alt coverage, filter and sort URLs, and the platform. Nothing is rendered, so JavaScript output is not seen.
Which ecommerce platforms does it work on?
Any HTML category page, with platform-specific patterns for Shopify, WooCommerce, BigCommerce and Magento. It recognises Shopify from the powered-by header or /cdn/shop/ paths, WooCommerce from plugin assets or loop markup, BigCommerce from its CDN or Stencil paths, and Magento from static asset paths or Hyvä markup. Unknown platforms still get every check, with generic product-link detection.
What title and meta description lengths pass?
A title between 10 and 60 characters and a description between 50 and 160 characters pass, the same thresholds as the meta tag checker on this site. Longer is a warning because Google trims it in results; shorter is a warning because it says too little. Missing is a fail, since Google then writes its own.
Should a category page canonical point at itself?
Yes, on page 1 and on every later page. A self-referencing canonical passes. One that drops a filter or sort parameter also passes, because that is the category URL claiming the filtered view. A canonical pointing at another URL is a warning, two tags is a fail, and page 2 pointing at page 1 is a fail.
What should page 2 of a collection canonicalise to?
To itself, with the page parameter kept. Google's pagination guidance says not to use the first page of a sequence as the canonical, and to give each page its own URL. Pointing page 2 at page 1 tells Google page 2 is a duplicate, which hides every product listed only there.
Does Google still use rel=next and rel=prev?
No. Google's pagination documentation states it no longer uses these link relations, though other search engines may. The checker records them as informational and scores the plain links instead: a page that has rel=next but no anchor to page 2 gets a warning, because nothing Google follows leads past the first batch of products.
How is the category description word count measured?
By heuristic. The tool looks first for a description container such as Shopify's collection-description or .rte inside the collection header, WooCommerce's term-description, or BigCommerce and Magento category description blocks. Failing that, it counts paragraph text inside main that is not inside a product card, list item, article, navigation, header or footer, and says which method it used.
How many words should a category description have?
At least 50 to pass here, which is a short paragraph or two. The number is a floor, not a target: the point is that the page says in its own words what the category holds, who it is for and how to choose, so Google has something to rank beyond a grid of product names.
Why does it say no product links were found when I can see products?
Because the grid is written by JavaScript after the page loads, and the checker reads the HTML the server sends. Googlebot can render JavaScript, but it does so later and not always, and Google's ecommerce guidance asks for plain links from category pages to products. A grid with no links in the HTML is worth fixing.
Should a category page carry Product structured data?
No. Google's product snippet documentation says product rich results only support pages that focus on a single product, so Product markup on a listing earns nothing and belongs on the product pages. BreadcrumbList is the markup a category page should have; CollectionPage and ItemList are fine but have no rich result of their own.
Are filter and sort links a problem?
Not on their own. The checker counts links whose query string carries filter, sort, sort_by, orderby, pa_ or a Magento attribute code, and reports the count. They become a problem when there is no canonical or robots rule and the combinations run into the thousands, because each one is a URL Googlebot can spend crawl budget on.
What are the limits per run?
One URL, one fetch with redirects followed, a 15 second timeout per hop, and the first 5 MB of HTML. Nothing is rendered and no other page on the store is fetched, so the report describes this one page as served. Free checks are limited per day; the counter under the input shows what is left.
Other on-page SEO tools
Canonical Tag Checker
Validate canonical tags for self-referencing, protocol mismatches, trailing slash conflicts, noindex conflicts, and og:url consistency.
Use toolHreflang Validator
Validate hreflang tags for international SEO: self-referencing, return tags, x-default, language codes, and duplicate detection.
Use toolSchema & JSON-LD Validator
Validate structured data markup: required properties, date formats, nested entities, and JSON syntax. Supports all major schema types.
Use toolMeta Tag Checker
Check title tags, meta descriptions, Open Graph tags, Twitter cards, canonical URLs, robots directives, and viewport settings.
Use toolMeta Tags Generator
Write the title, description, and social share tags every page needs. Live character counts plus previews of how it will look in Google and on social.
Use toolKeyword Density Checker
See which words and phrases your copy actually leans on. Single word, two word and three word counts with density and first-mention position.
Use toolSERP Snippet Preview
See your title and meta description the way Google renders them, measured in pixels. Desktop and mobile, with the exact character your snippet is cut at.
Use toolURL Slug Generator
Turn a list of page titles into clean, readable URL slugs. Accents transliterated, filler words optional, and duplicates caught across the whole list.
Use toolAnchor Text Generator
Build branded, partial, long tail and naked URL anchor variations for any page, then audit the anchors you already have against a natural distribution.
Use toolReadability Checker
Score any text on six readability formulas at once, then see which sentences are dragging the grade up. Passive voice and long sentences broken out separately.
Use toolPage Word Counter
Count the words on any URL, with the body copy separated from the nav, header and footer. Unique words, reading time, paragraphs and the heading outline.
Use toolImage Alt Checker
Audit the alt text on every image on a page. Missing attributes kept apart from decorative alt="", plus image links with no name, filenames used as descriptions and duplicates.
Use toolOpen Graph Preview
Paste your meta tags and draw the card each platform renders, cut where it really cuts. Works on staging and on tags you have not deployed yet.
Use toolTwitter Card Validator
X retired its own validator in 2022. Check twitter:card on a live URL, see which tags X reads through the Open Graph fallback, and prove the image loads.
Use toolOpen Graph Checker
Fetch a live URL and read its og: tags the way a scraper does, then check the card image actually loads rather than only that the tag exists.
Use toolHeading Analyzer
Read the H1 to H6 outline of any URL and find the skipped levels, empty headings and duplicate labels, with the page's own headings separated from its template.
Use toolBulk Title Tag Checker
Check up to 100 title tags at once, measured in pixels rather than characters, and find the duplicates across a set that no single-URL checker can see.
Use toolBulk Meta Description Checker
Check up to 100 meta descriptions at once, measured in pixels, and find the duplicates, empty tags and descriptions that just repeat the title.
Use toolSEO Content Grader
Grade a page or draft against 20 weighted signals plus an AI judgement kept clearly apart. The score shows its own arithmetic, and every row prints its method.
Use toolTitle Tag Generator
Write 12 candidate titles from a URL or a topic, each measured in real pixels at Google's desktop and mobile widths, with the brand appended by code and the keyword checked.
Use toolHeadline Generator
Write 12 H1 and blog headlines from a URL or a topic, each checked against the house style: length band, keyword present, and none of the template tells or bait an editor would cut.
Use toolBulk Alt Text Generator
Write alt text for every image on a page that has none or sits in an unnamed link, never for decorative ones, with each description checked against the alt checker's own rules.
Use toolHelpful Content Checker
Check which of Google's helpful content signals a page actually shows: author, dates, sourcing, content ratio and ad load. No invented score.
Use toolShopify Duplicate URL Checker
Sample 20 products from a Shopify store and check that the /collections/x/products/y copy, the plain /products/y page and the ?variant= URL all canonicalise to the plain product URL.
Use toolRead up on on-page content
A tool tells you what is wrong. These explain what to do about it.
SEOquake Review: Free, Still Shipping, and Built to Upsell Semrush
Read guideAIOSEO Review: The Search Console Reports Cost $599 a Year
Read guideGoogle May 2026 Core Update: Live Tracking, Volatility Data & Recovery Guide
Read guideTerms this tool checks
- Title Tag
A title tag is an HTML element (<title>) that specifies the title of a web page.
- Meta Description
A meta description is an HTML meta tag that provides a brief summary of a web page's content.
- Canonical Tag
A canonical tag (rel="canonical") is an HTML element that tells search engines which version of a page is the preferred, authoritative copy when multiple URLs serve similar or identical content.
- Internal Linking
Internal linking is the practice of connecting pages within your website using hyperlinks.
Map every head term to the category page that should rank for it
CrawlRaven's keyword map assigns head terms to category pages, flags two categories competing for one term, and joins Search Console and GA4 with the crawl so you see organic revenue per category page. One ranked plan. Free plan for 1 site, no credit card.