Semantic Prism: how I optimized 1,622 e-commerce metas without duplicating a single wording

An e-commerce client contacts me in April 2026. Odoo catalog of 1,622 products: professional furniture for hair salons, beauty institutes and barber shops. Everything is technically clean on the site side, except for title and meta description tags: generated by the Odoo native plugin which repeats the same formula across the catalog. Result: 76% of metas contain at least two occurrences of the word "professional", and over a third contain three or four. Unacceptable from both SEO and editorial standpoints.

The immediate reflex would have been to rewrite a new template. But a template, by definition, generates redundancy. Redoing the same problem better is not solving the problem. So I built a clean method, which I named Semantic Prism™, now deployed on this client and the next ones. Here's how it works, and why it changes the game for any e-commerce above 500 product pages.

The root problem: a template always produces the same tags

Odoo's native templating plugin (like those of Magento, PrestaShop, Shopify or WordPress with Rank Math) works on a simple principle: you define a model, and each product page fills it with its own data. For example: {Product_name} professional: free shipping | Brand.

The result across 1,622 pages: 1,622 times the same sentence, except for the product name. To Google, these are near-identical tags across hundreds of pages: a thin, repetitive content signal. And above all, you miss the entire spectrum of queries your customers actually type.

"Nobody searches just for 'professional hair styling chair'. Real queries are 'premium hair styling chair', 'high-end hair styling chair', 'pro grade hair styling chair', and dozens of other variants your uniform tags completely ignore."

On the client catalog, I measured this opportunity gap via Search Console. At least 12 high-potential queries were already generating impressions without clicks, simply because the meta wording wasn't catching the user's exact intent. Latent traffic, never converted.

The insight: think like a bookseller, not like a robot

A good bookseller doesn't put the same label on every book. They describe each one according to what makes it distinctive, while keeping editorial consistency. The Semantic Prism applies exactly this principle to an e-commerce catalog: we keep global consistency (tone, structure, business keywords), but we intelligently vary the semantic complements to cover all the ways people search for your products.

The metaphor is in the name: a prism decomposes white light into a colored spectrum. The Semantic Prism takes a single SEO intent ("professional hair styling chair") and decomposes it into multiple equivalent wordings ("premium", "high-end", "pro grade"), calibrated against actual Google search volumes.

The ratio measured on Google Keyword Planner: the term "professional" generates 26,730 monthly searches in France, while its abbreviation "pro" only generates 1,380. This kind of volume gap is what calibrates variant weighting. Not gut feeling: data.

The 4 weighted pools of the Prism

The method rests on 4 "families" of interchangeable semantic complements. For each product page, the generator draws a variant from each family according to a weighted probability:

Across 1,622 product pages, this mechanism generates for example ~970 products with "professional", ~240 with "premium", ~240 with "high-end", ~160 with "pro grade". Instead of 1,622 occurrences of the same word, we cover 4 distinct intent angles, calibrated on actual search volumes.

Concretely, here are three product pages of the same type (hair styling chair) getting three different but coherent metas:

PRODUCT A
Professional hair styling chair, Europe shipping, support included.
PRODUCT B
Premium hair styling chair, always in stock, 2-year warranty.
PRODUCT C
Pro grade hair styling chair, fast shipping, assembly included.

The technical rules guaranteeing quality

Simple rotation isn't enough. Without guardrails, you could draw the same word three times in one meta, or generate sentences exceeding the 60-character title limit. The Prism therefore integrates 6 technical rules implemented in a Python script that runs across the entire catalog before export:

1. Strict length with smart truncation

Title ≤ 60 characters, meta description ≤ 160 characters. If the generated combination exceeds, the generator first drops optional complements (never the main keyword), then the secondary metier target. Never a brutal "Chair…" cut.

2. Uniqueness guaranteed by hash

Before publishing, each title is hashed across the entire catalog. If two products end up with the same title, forced rotation of one complement until a unique title is obtained. Across 1,622 pages: zero duplicates.

3. Conditional product attribute injection

If the product contains a high-volume attribute (hydraulic, electric, massage, foldable, heated, double), the generator auto-injects it into the title. The keyword "massage shampoo bowl" generates 9,360 monthly searches: it would be a waste to miss it when the attribute already exists in Odoo.

4. Anti-semantic repetition

QA regex: \bpro(?:fessionnel(?:le|s)?)?\b applied across the title+meta couple. Maximum 2 occurrences allowed. Beyond that, forced rotation of a complement until compliance. End of keyword stuffing.

5. Import-ready CSV, CMS-agnostic

The final deliverable is a UTF-8 BOM CSV containing URL, title, meta description, lengths and a validation flag. Directly importable into Odoo (via ORM script or native import with External ID), Magento, PrestaShop, Shopify or WooCommerce. No dependency on a CMS-native templating plugin, often too rigid.

The step-by-step applied on 1,622 pages

On the client project, here's the actual sequence:

The measurable results

Immediate post-deployment technical measurements:

SEO results on organic traffic are measured at D+30 minimum (time for Google to recrawl the full catalog and surface the new tags in SERPs). Tracking via Search Console is ongoing. Expected gains: significant average CTR improvement on long-tail queries and position improvements on category pages.

Contextual enrichments applied across the 1,461 product pages

Beyond semantic weighting, the engine injected three layers of contextual enrichment on the catalog:

The engine also recognizes 40+ business product types to trigger the right contextualization: chairs (styling, barber, treatment, pedicure, beauty, makeup, waiting room), shampoo bowls, tables (massage, treatment, head spa, hydraulic), treatment cabins, stools, carts, dressing tables, hair caps (styling, steam), pro hair dryers, clippers, reception desks, mirrors, furniture, beauty devices (high-frequency facial, suction, exfoliation, microdermabrasion, pressotherapy), wash columns, waiting room sofas / benches, professional white coats, reusable aprons, cutting capes / gowns, scissors, covers, consumables.

For "generic" types (furniture, mirror, cart, stool, reception desk, hair accessory, beauty device…), the engine automatically detects the dominant business sector (hair salon / beauty institute / barbershop) from the description, or applies an intelligent fallback. Result: a title like "H-3 Stool" becomes "H-3 Stool | hair salon | premium" and captures "stool hair salon" queries.

Which e-commerces it fits

The method finds its full relevance on catalogs above a certain threshold:

The method is particularly powerful on catalogs with rich attributes (colors, sizes, mechanisms, materials), where conditional attribute injection automatically captures massive long-tail traffic.

Got a catalog of 500+ product pages?

Free audit of your tags: I crawl your catalog, count duplicates, measure semantic diversity and potential gains. No commitment, I tell you whether the Semantic Prism will bring value to your site, and if so, how much.

Request my free audit →

Going further

For a complete presentation of the method, the 4 weighted pools and the 6 technical rules, see the dedicated Semantic Prism page. For the overall SEO methodology that frames this intervention, see the SEO expertise and the e-commerce expertise.

📖 Methodological note: figures and examples cited come from an anonymized real client case. Search volumes measured via Google Keyword Planner and Search Console (April-May 2026). Technical crawl performed with Sitebulb v6.5, scripted generation in Python 3.11.