
Shopify
Algolia
Shopify Admin API
catalog & search analytics
Avnzor's category tree still described a beauty store while the revenue had moved to nutrition — and with roughly one visitor in twenty using search, almost all product discovery ran through it. A five-pass audit set the catalog against the business and produced the constraints for a tree capped at three levels. But a one-off cleanup would not hold: a single import re-broke the catalog weeks later. So what shipped was an intake path — a daily tripwire, a classifier that proposes a category, and a queue where merchandising approves. Categorisation stopped being a project and became a queue somebody works.
Series
Avnzor — Part 2 of 5 · The catalog
Role
Information architecture & UX strategy
Year
Q3 2026
Industry
E-commerce · Information architecture · GCC market
Stack
Shopify · Algolia · Shopify Admin API · catalog & search analytics
Links
Every storefront inherits its taxonomy from whatever the business was when the catalog was first loaded. Avnzor’s had never been revisited — so it still described a beauty store, while the revenue had quietly moved to nutrition.
The Constraint
The category tree was the least maintained system in the store and the one carrying the most weight. Roughly one visitor in twenty used search; the rest browsed, which meant almost all product discovery ran through a menu nobody owned.
Underneath it sat more than a thousand product types nested several levels deep. 589 of those types held three products or fewer — shelves with nothing on them. Duplicate labels split single concepts across multiple branches, so the same idea lived in several places at once and none of them completely.
Avnzor's category tree still described a beauty store while the revenue had moved to nutrition — and with roughly one visitor in twenty using search, almost all product discovery ran through it. A five-pass audit set the catalog against the business and produced the constraints for a tree capped at three levels. But a one-off cleanup would not hold: a single import re-broke the catalog weeks later. So what shipped was an intake path — a daily tripwire, a classifier that proposes a category, and a queue where merchandising approves. Categorisation stopped being a project and became a queue somebody works.
Evidence That Shaped the System
The restructure caps depth at three and organizes around how the catalog actually earns: Sports Nutrition and Supplements get real branch structure — Protein split by whey, isolate and plant; Performance split by creatine, pre-workout and amino — while the long tail of near-empty product types stops being navigation and becomes filtering.
That gap is the whole argument in one chart. Demand and revenue were being generated by two different halves of the store, and the taxonomy was organized around the half that searched rather than the half that bought.
اوردیناری returned nothing while The Ordinary sat in the catalog with dozens of products. میکب returned nothing against 4,350 makeup products. اشوقندا returned nothing against a stocked Herbals shelf. The fix is a synonym layer between query and index — no catalog rewrite required, and no dependency on the taxonomy work landing first.
More Projects






