Fixing Thin Ecommerce Category Pages
A thin category page is a heading, a grid of product thumbnails and nothing else. Shoppers get no help choosing, and search engines get almost nothing to tell your "men's trail running shoes" page apart from every other shop's, or from your own near-identical "running shoes" page. The Ecommerce Audit flags category pages with little useful content of their own.
This guide shows how to decide which categories deserve work, what to write above and below the product grid, how to handle categories that overlap, and how to check the result without pushing products out of sight.
What "thin" means for a category page
Search engines do not count words, and Google has said there is no minimum word count. A category page is thin when it offers nothing that is specific to that range. The usual symptoms are:
- Only a heading and a grid. Everything on the page is product names and prices that also appear on the product pages themselves.
- Boilerplate text. A paragraph such as "Browse our great range of garden furniture at low prices" that could sit on any category with the noun swapped.
- Text written for a crawler. Three hundred words hidden behind a "read more" link at the very bottom, repeating the category name in every sentence.
- Near twins. Two categories, such as "Rattan sofas" and "Rattan garden sofas", that list the same twenty products in the same order.
- Almost empty. A category with one or two products left in it, or none at all, still linked from the main menu.
Category pages matter because they tend to target the broader searches, the ones where a shopper has decided on a type of product but not a specific item. A product page can rank for "Harbour 3-seater rattan sofa in grey"; the category is what should rank for "rattan garden sofas". If the category gives a search engine nothing to work with, your product pages end up competing for queries they were never designed to answer.
Where the content goes on the page
The biggest fear shops have about category content is that it will push the products down. That fear is fair: on a phone, a 200-word block above the grid means a shopper scrolls past a wall of text before seeing a single product. The answer is to split the content by job.
| Position | Length | Job |
|---|---|---|
| Above the grid | Two to four sentences, roughly 40 to 80 words | Say what the range includes, who it is for and the one or two choices that matter most. |
| Filter bar and sub-category links | Short labels | Let shoppers narrow down quickly, using the words they use. |
| The product grid | As many products as fit sensibly per page | Show the range, with best sellers or best matches first. |
| Below the grid | As long as it stays useful | Buying guidance: sizing, materials compared, care, common questions, links to deeper guides. |
Content below the grid is not second-class. It is in the HTML, it is read by search engines, and it is what a hesitant shopper scrolls down to when the grid alone has not helped them decide. It only becomes a problem when it is padded, duplicated across categories or hidden in a way that suggests it was written for crawlers rather than people.
Collapsed text
Putting the lower block inside an expandable "More about rattan sofas" section is fine for layout, provided the text is in the page HTML when it loads rather than fetched only after a click. Search engines index content in the HTML whether or not it is visually expanded. What to avoid is text that exists purely for search, set in tiny grey type or hidden with CSS, which is the kind of thing search engine spam policies describe.
What to write, with an example
Good category copy answers the questions shoppers bring to that range. For a fictional shop, Fernbrook Outdoor Living at example.co.uk, the rattan garden sofa category might open like this:
<h1>Rattan garden sofas</h1>
<p>Two-, three- and corner sofas in all-weather synthetic rattan,
with quick-dry cushions you can leave out from spring to autumn.
Corner sets suit patios of 3 m or more; if space is tight, a
two-seater with a matching bench usually fits better.</p>
That is 45 words. It names the range, gives two useful facts (material, cushions) and helps with the choice most shoppers get stuck on (size). Further down, below the products, the same page might carry:
- A short comparison of flat-weave and round-weave rattan, and how each copes with rain and sun.
- A measuring tip: leave about 60 cm around a sofa so people can walk past it.
- Care advice: covers, cushion storage in winter, cleaning with warm soapy water.
- Three or four questions from real customers, answered plainly.
- Links to "Garden sofa covers", "Outdoor cushions" and your guide to choosing garden furniture.
Where the words come from
The best source is your own shop. Site search logs show the words people type when they cannot find something. Customer service emails and returns reasons show what they misunderstood. Staff who answer the phone know the three questions they hear every week. None of that is available to a competitor copying the manufacturer's catalogue, which is why it makes your page different.
Categories that overlap
Shops grow categories over time: a seasonal promotion becomes a permanent page, a supplier's range becomes its own category, a merchandiser adds "Best sellers" and "Gifts under ยฃ50". Soon two or three pages show much the same products and compete for the same searches. Search Console often shows this as several URLs taking turns to rank for one query.
For each overlapping pair, pick one of these outcomes:
- Merge. If the two pages serve the same intent, move everything into one, redirect the other with a 301 and update your menus and internal links.
- Differentiate. If they serve genuinely different shoppers, such as "Rattan sofas" for everyone and "Rattan sofas for small gardens", make the difference visible: different products, different introduction, different buying help.
- Keep for navigation, not search. Merchandising pages such as "New in" or "Sale" can stay useful for visitors without being the page you want ranking for "rattan sofas". Leave them indexable if they are genuinely different, but do not write competing introductions that chase the same phrase.
Overlap caused by the same product being reachable under several category paths, such as /garden/sofas/harbour
and /sale/harbour, is a different problem about duplicate URLs rather than thin content.
The duplicate product URLs guide
covers that, and collection and
category architecture covers deciding which category is the main home for a product.
Empty and near-empty categories
A category with no products, or one or two, is thin by definition. What to do depends on whether it will fill again.
| Situation | Suggested action |
|---|---|
| Seasonal range, empty for a few months | Keep the URL live with a short note on when stock returns and links to related ranges, so the page keeps any links and history it has built. |
| Temporarily out of stock | Keep the page, show the items as out of stock where your platform allows, and point to alternatives. |
| Range discontinued for good | 301 redirect to the closest parent or replacement category, and remove it from menus. |
| Created by accident or by an app, never used | Remove it and return 404 or 410 if nothing links to it; redirect if it has links or traffic. |
An empty category page that returns a normal 200 status with "No products found" is a common source of soft 404 reports in Search Console. Either give the page something useful or stop it existing. The seasonal products guide goes further into keeping seasonal URLs alive through the quiet months.
Where to edit category content on common platforms
Shopify
Categories are collections. The collection description field in the admin is output by most themes above the grid. Many themes also let you add a rich text or collapsible content section below the product grid in the theme editor, often fed by a collection metafield so each collection can have its own lower text. Check your theme's collection template rather than pasting both blocks into the single description field.
WooCommerce
Product categories have a description field that most themes show above the products. For text below
the grid, some themes and SEO plugins add a second description field; otherwise a developer can add a
term meta field and output it on the woocommerce_after_shop_loop hook. Avoid putting the
same description on both a category and a tag of the same name.
Custom and headless shops
Add two fields to the category model in your CMS, an introduction and a lower buying guide, and render both on the server so they are in the initial HTML. If category pages are built statically, make sure content edits trigger a rebuild of that page.
The fix, step by step
Step 1
Rank your categories by what they earn
Export your categories from the shop admin into a spreadsheet and add three columns: revenue or orders from the last twelve months, organic clicks from the Search Console Performance report filtered to category URLs, and the Ecommerce Audit finding for each. Sort by revenue first. Your top ten to twenty categories usually carry most of the sales, so fix those properly before touching anything in the long tail or anything nobody visits.
Step 2
Pull the questions shoppers ask
For each priority category, collect real wording from site search reports, customer service emails, returns reasons, product questions and the queries listed against that URL in Search Console. Group them into a handful of themes, such as size, material, compatibility, care and delivery. These themes decide what the introduction and the buying help should cover, and they keep the text specific to the range rather than generic shop copy that could sit anywhere.
Step 3
Write a short introduction above the grid
Write two to four sentences, roughly 40 to 80 words, that say what the range includes, who it suits and the single most important choice a shopper faces. Use the words customers use, not internal range names or supplier codes. Preview the page on a phone and check that at least the first row of products is still visible without much scrolling. If it is not, shorten the text rather than hiding it behind a toggle.
Step 4
Add buying help below the products
Below the grid, add the guidance that answers the themes from step two: a sizing note, a comparison of materials, care advice, and a few real customer questions with plain answers. Keep it in the page HTML, even if it sits inside an expandable panel. Write each category separately. If you notice yourself reusing whole paragraphs across categories, that content belongs in one shared buying guide page linked from each of them instead.
Step 5
Resolve overlapping categories
List pairs of categories that share most of their products or compete for the same search query in Search Console. For each pair, decide whether to merge them with a 301 redirect, make them clearly different in products and wording, or keep one purely as a merchandising page. Update menus, breadcrumbs and internal links to point at the version you keep, and handle empty or discontinued categories with a redirect or a helpful holding page.
Step 6
Set the title, H1 and meta description
Give
each category a title tag that leads with the range as people search for it, then a qualifier and your
shop name, such as Rattan Garden Sofas: 2-Seater to Corner Sets | Fernbrook. Keep the H1
short and matching the range name. Write a meta description that mentions the range size, a genuine selling
point such as delivery or materials, and nothing that is untrue. Check paginated pages do not all carry
identical titles.
Step 7
Link categories to each other and to guides
Add links from each category to its parent, its useful sub-categories and one or two sibling ranges a shopper might want next, plus the buying guide that goes deeper. Make sure the category is linked from the main navigation or a parent category using a normal HTML link, not only from a search box or a script. Finally, rerun the Ecommerce Audit on the categories you changed and compare the findings.
Checking it worked, and keeping it that way
Content changes on category pages take time to show in search results, because the page has to be recrawled and then re-evaluated against competitors. Judge the change over weeks, not days.
- Inspect the URL in Search Console after publishing and check the rendered HTML includes both the introduction and the lower text.
- Compare periods in the Performance report, filtered to the category URL, looking at impressions and the spread of queries as well as clicks. A healthy sign is the page appearing for more variations of the range name.
- Watch conversion rate in your analytics. If it drops after adding the introduction, the text may be pushing products too far down on mobile.
- Look for cannibalisation after merging or differentiating categories. The query should settle on one URL.
Preventing thin categories returning
- Make the introduction a required field when a merchandiser creates a new category, with a short brief on what it should say.
- Review categories with fewer than a handful of products each quarter and merge, fill or retire them.
- Rerun the audit after theme changes, which sometimes stop outputting the description field altogether.
1. How many words should a category page have?
There is no right number, and Google has said it has no minimum word count. What matters is whether the text helps someone choose within that range. In practice a short introduction of a few sentences above the product grid, followed by more detailed buying help below it, works for most shops. A category with a simple range may need only a couple of paragraphs, while a technical range with many sizes or standards may justify considerably more guidance.
2. Will adding text above the products hurt my conversion rate?
It can if the block is long enough to push the first row of products off the screen on a phone. That is why this guide keeps the top introduction to two to four sentences and puts longer guidance below the grid. Test it on a real mobile device after publishing and watch the conversion rate for that category in your analytics. If it falls noticeably, shorten the introduction rather than removing the content altogether.
3. Is it acceptable to hide category text behind a read more link?
Yes, provided the text is present in the page HTML when it first loads, so search engines and screen readers can reach it without clicking. An expandable panel is a normal design pattern. Problems start when text is loaded only after a click by a script, when it is styled to be practically invisible, or when it exists purely to repeat keywords. If the text genuinely helps shoppers, there is little reason to hide it.
4. Should I noindex categories that have very few products?
Usually not as a first move. A small category that is genuinely useful, such as a specialist range with three high-value products, can still rank well if the page helps people choose. Noindex suits pages that exist purely for internal merchandising and add nothing for search. For categories that are small because a range has been dropped, redirecting to the closest parent category is normally better, because it keeps any links and sends visitors somewhere helpful.
5. Can I use AI to write category introductions?
You can use any tool to draft text, but the result has to be accurate, specific to the range and useful to a shopper. Generic drafts tend to produce the same bland sentences for every category, which is exactly the thinness this guide is trying to fix. Feed the draft with your own facts, such as sizes, materials, customer questions and delivery details, then edit it yourself and check every claim before publishing it on the page.
6. What should I do when two categories rank for the same search?
First confirm it in Search Console by filtering the Performance report to the query and looking at which pages receive impressions. If both pages serve the same shopper, merge them into one and redirect the weaker URL. If they serve different shoppers, make the difference obvious in their products, introductions and titles, so each has a clear purpose. Then update menus and internal links so your own site points consistently at the page you want to rank.
7. Do category pages need structured data?
They do not need Product markup, because a category lists many products rather than describing one. BreadcrumbList markup is worth having if your category sits in a hierarchy, since it matches the breadcrumb trail shown on the page. Some shops add ItemList markup listing product URLs, which is harmless but not something Google shows as a rich result for shops. Put the effort into the visible content and leave detailed Product markup to the individual product pages.
The Ecommerce Audit checks category page depth alongside product page completeness, Product and review schema, faceted navigation, product images, internal links and product page speed across your top pages.
Open Ecommerce Audit Fixes โ