Illustrative case study

A fictional business. The figures are a modelled scenario, not a client result.

Lindqvar Home

Flat-pack furniture brand, 14 markets · Malmö · Malmö

How a Nordic furniture brand rebuilt 14 storefronts into one rankable catalogue

+€4.1M

modelled organic revenue

ART. 14·MKT·EUROPESENODKFIDENLBEATFRCHPLUKIEES

!Before you begin

Fourteen kits, no instructions.

Fourteen country sites competed against each other, hreflang was broken on 70% of pages and the product feed was rejected for missing GTINs in six markets.

Every market had been launched as its own storefront by a different team. The catalogue was the same 9,400 products, but each country had its own categories, its own filters and its own feed. Google saw fourteen half-built cabinets competing for the same space, and regularly showed Swedish shoppers the Danish one.

soffbord ek · google.se
  1. 1. lindqvar.dk › produkter › sofabord-eg-1123Sofabord i egetræ | Lindqvar1.095 DKK
  2. 2. lindqvar.com › en › coffee-table-oakOak coffee table – Lindqvar Home
Before: Danish and English pages rank in Sweden
soffbord ek · google.se
  1. 1. lindqvar.se › vardagsrum › soffbord › ekSoffbord i ek – massivt trä | Lindqvar Home1 495 kr · I lager · Fri frakt
  2. 2. competitor.se › soffbordSoffbord ek – stort urval
After: the Swedish category page ranks first with price in kronor

Illustrative results for one query in Sweden, month 0 and month 14.

Audit · check all parts before assembly

  • A1 · Hreflang

    71% of 182,000 URLs had broken hreflang: missing return tags, targets that redirected, and en-UK instead of en-GB.

    Generate clusters from one catalogue ID

  • A2 · Cannibalisation

    The .com, .co.uk and .ie stores served identical English copy; Google swapped them in and out of the same results.

    Distinct pricing, delivery and copy per market

  • A3 · Product feed

    Feeds in 6 markets were rejected: 36% of items used supplier codes in place of GTINs.

    EAN-13 from the PIM, validated nightly

  • A4 · Crawl budget

    81% of Googlebot requests hit filter URLs; 2.3M crawlable facet combinations against 9,400 products.

    Index only facets with demand

  • A5 · Architecture

    Categories up to 5 levels deep, with sofa tables and coffee tables split differently in every market.

    One 3-level taxonomy, localised names

  • A6 · Structured data

    Product schema showed SEK prices on the German store; no breadcrumbs anywhere.

    Offer per currency, BreadcrumbList

1–5Assembly

Five steps, one catalogue.

Built on our Commerce SEO plan. The order matters: the frame (taxonomy) comes first, then the dividers that keep markets apart (hreflang, faceted navigation, product feeds, schema markup). Step through it below; each new part clicks into place in blue.

01 / 05

Step 1 · Category architecture

Build the frame

One shared taxonomy for all 14 storefronts: 5 levels collapsed to 3, 1,140 categories merged to 386 canonical ones, each mapped to the query people actually type in that language ("soffbord", "sofabord", "Couchtisch").

Parts in this step

  • 386×CAT-01canonical category nodes
  • 3×LVL-03levels: room › type › material
  • 754×301-MAPredirects from merged categories
  • Product feeds
  • Hreflang
  • Faceted navigation
  • Category architecture
  • Schema markup

14Assembly schedule

14 months, month by month.

  1. 01·

    Crawl all 14 storefronts; 182k URLs inventoried

    Survey and handover
  2. 021

    Taxonomy workshop; 1,140 categories mapped to 386

    Step 1: Category architecture
  3. 031

    Redirect map live in the Nordic stores

    Step 1: Category architecture
  4. 042

    Hreflang sitemaps generated from catalogue IDs

    Step 2: Hreflang
  5. 052

    x-default chooser; en-GB fix; errors under 20%

    Step 2: Hreflang
  6. 063

    Facet rules: 212 pages indexable, the rest closed

    Step 3: Faceted navigation
  7. 074

    GTINs recovered; six rejected feeds resubmitted

    Step 4: Product feeds
  8. 084

    14 market feeds with local titles and currency

    Step 4: Product feeds
  9. 095

    Product, Offer and BreadcrumbList templates

    Step 5: Schema markup
  10. 101

    Remaining 7 markets migrated to the new taxonomy

    Step 1: Category architecture
  11. 113

    Second wave: 64 material facets promoted

    Step 3: Faceted navigation
  12. 125

    ItemList on categories; zero Rich Results errors

    Step 5: Schema markup
  13. 134

    Seasonal feed rules for outdoor furniture

    Step 4: Product feeds
  14. 14·

    Handover: monitoring, alerts and playbook

    Survey and handover

✓Finished product

One cabinet, fourteen markets that stopped competing.

Modelled scenario for a fictional business — not a client result. Rankings and traffic are never guaranteed; see our Terms.

Organic revenue (modelled)

+€4.1M

€0.0M€1.0M€2.0M€3.1M€4.1M1234567891011121314Month · bars = monthly €k, line = cumulative

Hreflang errors

71% → 2%

beforeafter

Feed approval rate

64% → 98%

beforeafter

Top-3 category terms

+312

One square per category term that reached positions 1–3 across all markets.

Category rankings, sample

TermMktVol/moMonth 0Month 14
soffbord ekSE9,900142
sofabord eikNO6,600231
Couchtisch Eiche massivDE22,200413
bokhylla vitSE8,10091
oak sideboardUK14,800373
boekenkast houtNL5,400—2
table basse chêneFR18,100523
kirjahyllyFI4,400182

Open a compartment

Compartment

Finland

Hreflang errors72% → 2%
Feed approval41% → 97%

+22 category terms in the top 3

Your kit · Commerce SEO

Get a plan like this

Multiple storefronts, one catalogue, feeds that keep getting rejected? We will send the parts list first.