Background
A long-established UK-based specialist retailer selling plastic storage containers to both trade and domestic customers came to Peacock Search for a technical SEO audit. The business had strong brand recognition and a well-structured product catalogue — 288 indexed URLs across product and category pages on a self-hosted Magento installation — but had never undergone a formal SEO review.
The brief was straightforward: understand why organic visibility wasn't matching the strength of their product range. Their Google Search Console data going in told a clear story.
Baseline data
| Metric | Baseline (pre-audit) |
|---|---|
| Monthly organic impressions | 44,800 |
| Monthly organic clicks | 1,090 |
| Average CTR | 2.4% |
| Average position | 31.6 |
| Pages with rich results | 0 |
| Duplicate/near-duplicate pages indexed | ~130 (from faceted navigation) |
Strong impressions relative to clicks signalled pages were appearing in search but failing to earn the click — a classic symptom of missing meta descriptions and no structured data to generate rich results.
What we found
The headline finding: a 44/100 SEO score. Despite a clean URL structure and solid product catalogue, the site had several foundational issues suppressing organic performance.
Critical issues
Every promotional section had been given an <h1>. Search engines expect a single H1
signalling the primary topic of the page. With eight competing H1s, no clear keyword hierarchy was
being communicated.
Not a single page had a meta description. Google was generating its own — often pulling product filter text or navigation labels — resulting in a site-wide CTR of just 2.4%.
Faceted navigation (filter by size, colour, type) was generating hundreds of near-duplicate URLs. Without canonicals, Google had indexed approximately 130 pages that were near-identical variants of existing category pages, splitting link equity across them.
Every product or category link shared on social media rendered as a blank card — no image, no controlled title, no description.
No Product schema, no BreadcrumbList, no Organisation markup — meaning no price/availability snippets, no breadcrumb paths in SERPs, no Knowledge Panel eligibility.
What was working
- Clean, semantic URLs — paths like
/sectors/industrial-commercial/euro-stacking-containerswere readable and keyword-relevant - Well-structured sitemap — 288 URLs with correct priority weighting, properly referenced in robots.txt
- Descriptive product image alt text — full product names used as alt attributes throughout
- Sensible robots.txt — correctly blocked admin, checkout, and session URLs without over-restricting
Fixes implemented
Work was carried out over a 5-week period, prioritised by impact:
- Reduced homepage to a single H1; all section headers demoted to H2
- Wrote unique meta descriptions for all 288 pages — 150–155 characters, primary keyword and clear value proposition
- Added missing
<meta name="viewport">to<head>
- Implemented canonical tags across all category and product pages
- Added
rel="canonical"self-referencing on all paginated and filtered URLs - Added Open Graph and Twitter Card tags site-wide — title, description, image pulled from first product image per category
- Added JSON-LD BreadcrumbList schema on all category pages
- Added Product schema on all 198 product pages — name, description, image, SKU, price, availability, currency
- Added Organisation schema on homepage
Results at 90 days
| Metric | Before | After (90 days) | Change |
|---|---|---|---|
| Monthly organic impressions | 44,800 | 71,300 | +59% |
| Monthly organic clicks | 1,090 | 3,240 | +197% |
| Average CTR | 2.4% | 4.5% | +2.1pp |
| Average position | 31.6 | 19.8 | +11.8 positions |
| Pages with rich results (breadcrumbs) | 0 | 211 | — |
| Pages with Product rich results | 0 | 143 | — |
| Duplicate pages indexed | ~130 | 8 | −94% |
Keyword-level movement (sample)
| Keyword | Position before | Position after |
|---|---|---|
| plastic storage boxes | 38 | 17 |
| euro stacking containers uk | 14 | 4 |
| airtight plastic storage boxes | 9 | 3 |
| plastic storage bins industrial | 52 | 23 |
| plastic containers with lids | 41 | 19 |
| food grade plastic containers uk | 28 | 11 |
CTR by page type
| Page type | CTR before | CTR after |
|---|---|---|
| Homepage | 3.1% | 7.2% |
| Category pages | 1.9% | 4.6% |
| Product pages | 2.1% | 6.3% |
The product page CTR jump from 2.1% to 6.3% was driven primarily by Product rich results — price and availability snippets appearing directly in SERPs made listings visually distinct from competitors and significantly improved click-through.
Key takeaway
This is a pattern that appears frequently with established e-commerce businesses: a strong product catalogue and clean site architecture undermined by missing basics — no meta descriptions, broken heading hierarchy, no structured data, duplicate content from faceted navigation.
None of these are technically complex fixes. But together they were costing this business roughly two-thirds of its potential organic traffic.
The biggest single win was meta descriptions combined with structured data. Moving CTR from 2.4% to 4.5% on an impression base of 70,000+ monthly searches is the equivalent of ranking several positions higher — without changing a single backlink or piece of content.
All fixes were implemented in 5 weeks. Meaningful ranking movement began at the 5–6 week mark as Google recrawled and reprocessed canonicals. Full results matured at the 90-day mark.