A category page is a shelf, not an essay. Lead with a visual product grid, add subcategory tiles that link to real crawlable URLs, and keep intro copy to two or three sentences with the longer buying guide below the grid. Shoppers get browsing, Google gets context, and the page earns the right to rank for its category term.
Lead with the grid
Someone who taps "Edibles" wants to see edibles. Not a banner carousel, not four paragraphs about your farm. Products.
Put a visual grid at the top of the page: photo, name, price, and the two numbers cannabis shoppers actually scan for — potency and package size. Card design matters more here than anywhere else on the site. Shoppers compare cards the way they compare jars on a shelf, so keep the layout identical from card to card. Same image crop, same data in the same order, same button. Any card that breaks the pattern gets skipped, and so does its product.
Give big subcategories their own pages
Gummies, cartridges, and pre-rolls each carry their own search demand. A filter state cannot rank for any of it. A page can.
When a subcategory has real volume, give it a crawlable URL with its own title tag, then link it from the parent category as a row of visual tiles above the grid. The tiles do double duty. Shoppers use them to jump straight to the shelf they came for, and crawlers follow them to pages that would otherwise exist only as query parameters nobody indexes.
Make every link a real link
Category pages are the main road between your homepage and your products, and that road only works if crawlers can drive it. Three places where script-only navigation quietly cuts products out of the index:
- Product cards. Each card needs a plain HTML href to the product page, not a click handler that swaps content in place.
- Subcategory tiles. A tile that fires a filter instead of loading a URL is invisible to a crawler.
- Pagination. "Load more" buttons with no linked page URLs strand everything past the first screen.
The test takes a minute. Try to open a card, a tile, and page two in a new tab. Whatever refuses to open is whatever Google cannot reach.
Copy placement, and a worked rebuild
Category pages rank better with some text on them, and shoppers ignore almost all of it. Both facts can be true. Write two or three sentences above the grid naming the category and who it suits, then move the longer buying guide — how to choose, onset times, dosage basics — below the products. The shoppers who want it scroll. Everyone else is already shopping.
Now the rebuild. Picture an edibles category holding 120 products in one alphabetical dump with a "load more" button. The fix: a tile row at the top linking five real subcategory pages (gummies, chocolates, beverages, capsules, baked goods), the grid re-sorted by best sellers, a two-sentence intro up top, the buying guide moved under the grid, and every card and pagination step given a plain link. Six indexable pages now exist where one did, each with a title that matches something people type, and the shopper hunting for gummies reaches them in one tap instead of eleven scrolls.
Key takeaways
- Open with a visual product grid — identical cards showing photo, price, and potency.
- High-demand subcategories deserve their own crawlable pages, linked as tiles from the parent.
- Every card, tile, and pagination step needs a real HTML href, not a script-only handler.
- Two or three intro sentences above the grid; the full buying guide belongs below it.
Frequently asked questions
How much text does a cannabis category page need?
A short intro of two or three sentences above the grid, and optionally a longer buying-guide block below it. That gives Google topical context to rank the page without pushing products below the fold. Skip the thousand-word essay at the top; shoppers came for the grid.
Should subcategories be their own pages or just filters?
Pages, when real search demand exists. Gummies, cartridges, and pre-rolls all have their own search volume, and a filter state cannot rank for it. Give each high-demand subcategory a crawlable URL with its own title, and link them as tiles from the parent category.
Why do crawlable links matter on category pages?
Because category pages are the main path from your homepage to your products. If the grid, the tiles, or the pagination load through script-only handlers with no real href, crawlers cannot follow them, and products fall out of the index. Every product card and tile needs a plain HTML link.
Want this done for your brand?
We build cannabis & CBD search visibility with full transparency, for dispensaries, brands, and MSOs.
Get a free cannabis SEO audit ›