Import existing JSON-LD(paste code or read it from a URL)
Paste a CollectionPage JSON-LD block, several script tags or a whole page's HTML. The form fills with what it finds so you can edit and improve it.
Collection page details
Items in this collection (mainEntity ItemList) 0 with a URL
List the products or posts shown on this page, in the order they appear. Positions are numbered for you. On page 2 and later, list only the items on that page.
Publisher and site (optional)
Breadcrumb and list order (optional)
For page 2 and later of a category, give each page its own URL in the Page URL field and list only the items shown on that page.
- Add the page URL.
- Add at least one item URL for the ItemList.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "CollectionPage"
}
</script>How to use
Auto-fill from the category URL
Paste the category or archive URL and press Auto-fill from URL. The page details fill in and the product or post links found on the page appear as items.
Check the items
Remove links that are not part of the collection, fix names, reorder with the arrows and press Add item for anything missed. Positions are numbered for you.
Set publisher and copy
Add the publisher, keep isPartOf ticked, add a breadcrumb with Build from page URL, then press Copy script. Check the result with Validate at validator.schema.org or the Rich Results Test.
Why CollectionPage Schema Generator
- Reads item links from the category page into an ItemList.
- Numbers positions, sets the list order and lets you reorder items.
- Adds a BreadcrumbList built from the page URL.
- Links the page to your WebSite with isPartOf, JSON-LD or microdata.
CollectionPage, ItemList or ItemPage
These three types are easy to mix up. The difference is whether you are describing a page of many things, the list itself, or a page about one thing.
On a shop, the category is a CollectionPage, the products on it form an ItemList, and each product page carries Product markup. ItemPage is valid for product pages, but Product is what Google reads for product results.
| Type | Describes | Typical page | Google feature |
|---|---|---|---|
| CollectionPage | A page that groups many items | Shop category, blog archive, tag page | None |
| ItemList | An ordered list of items | Inside a CollectionPage, or a list article | Carousels for some item types |
| ItemPage | A page about one item | A product or listing detail page | None (use Product for products) |
Worked examples: shop category and blog archive
Ecommerce category: a trail running shoes collection at shop.example.com/collections/trail-running-shoes. The CollectionPage has name Trail Running Shoes, a description, a banner image, inLanguage en-US, isPartOf the shop's WebSite and a publisher. Its mainEntity ItemList has numberOfItems 3 and three ListItems pointing to the product pages.
Blog archive: a sourdough category at bakeblog.example.com/category/sourdough/. The same structure applies, but the ListItems point to posts such as How to Make a Sourdough Starter, and there is no image. Load either example in the tool to see the full JSON-LD and edit it.
If your theme already outputs an ItemList for the category, auto-fill reads it first and uses those items, so compare them with what you see on the page before copying. Remove any that are menu or footer links rather than items.
Paginated categories
Long categories are split across page 2, page 3 and so on. Each of those URLs is a collection in its own right, so each can carry its own CollectionPage block.
- Set url to the address of that page, such as /collections/shoes?page=2, or to its canonical URL.
- List only the items visible on that page, starting again at position 1.
- Keep the name and description the same as page 1, or add Page 2 to the name if your title does.
- Do not add items from other pages to reach a bigger numberOfItems.
- Filtered or sorted versions of a category that point their canonical to the main category do not need a block of their own.
- Check a paginated page with Test live URL after publishing to make sure the right items are listed.
Common questions
What is CollectionPage schema used for?
What is a CollectionPage schema example for an ecommerce category?
Does CollectionPage markup produce a rich result in Google?
How does the tool find the products or posts on a category page?
How is CollectionPage different from ItemList?
How do I mark up page 2 of a category with CollectionPage schema?
What does isPartOf add to CollectionPage JSON-LD?
Why did an item disappear from the CollectionPage output?
Can CollectionPage markup include a breadcrumb?
More Schema tools
View allAutomatic Schema Markup Generator
Crawl your site, auto-detect + generate JSON-LD for every page
Schema Markup Generator
JSON-LD or microdata for 10 types, plus a validator
FAQ Schema Generator
Build FAQPage JSON-LD by hand, paste or URL import
Article Schema Generator
Build Article, BlogPosting or NewsArticle JSON-LD