Proč jsou produktové kódy tak záludné?
Produktové kódy nejsou hezká slova. Jsou to kombinace písmen, číslic a speciálních znaků — teček, lomítek, pomlček, mřížek, svislítek. Každý e-shop, výrobce a dodavatel si je tvoří po svém. Výsledkem jsou kódy jako:
CAT/SUB/001— lomítka jako oddělovačeSKU#2024/REV:2— mřížka, lomítko a dvojtečka v jednom kóduPART(X)[L];3— závorky, hranaté závorky a středníkMODEL(V2)— závorky uprostřed kódu
Pro člověka jsou čitelné. Pro vyhledávač mohou být noční můrou. Spousta vyhledávacích řešení speciální znaky jednoduše zahodí, rozloží kód na nesmyslné části, nebo ho vůbec nenajde. Na rovinu přiznáváme, že i my jsme s tímto typem hledání trochu bojovali a hledali to správné řešení. Produktové kódy se chovají úplně jinak než běžný text a vyžadují vlastní přístup k indexaci i vyhledávání. Trvalo nám, než jsme našli rovnováhu mezi tolerancí a přesností. Dnešním dnem se ale posouváme výrazně dopředu.
Provedli jsme systematický test na synteticky generovaných variantách dotazů
Abychom si neříkali, že „to asi funguje", vzali jsme 40 produktových kódů — 18 se speciálními znaky a 22 reálných kódů z českých e-shopů. A pustili na ně dvě sady testů.
18 kódů se speciálními znaky — záměrně exotické kombinace teček, lomítek, mřížek, závorek a středníků (CAT/SUB/001, SKU#2024/REV:2, PART(X)[L];3). Tyto kódy testují hranice vyhledávání.
22 reálných kódů z českých e-shopů — sesbíraných z e-shopů s technickým zbožím. Pokrývají nejběžnější formáty, se kterými se v praxi setkáte:
15400-PFB-014— tři skupiny oddělené pomlčkami1WD-E3440-00— písmena a čísla střídavěS410510394006— písmeno a 12 číslic bez oddělovačů8000A9294— písmeno vmíchané mezi čísla07703305178— 11 číslic s úvodní nulou240.347.00.1— číselné skupiny oddělené tečkamiS 274865— písmeno, mezera, čísloMA 29094K-26— prefix, mezera, číslo s písmenem uprostředBR7ES— svíčkový kód, písmena-čísla-písmenaX07P1372— písmena a čísla promíchané bez oddělovačů
Všech 295 dotazů (obě sady) bylo testováno na celém katalogu 40 produktů — jak přes Search Ready, tak přes nativní vyhledávání velké e-shopové platformy.
Sada 1: pět základních způsobů, jak zákazník zadá kód
Simulovali jsme pět nejčastějších variant, jakými zákazník kód napíše:
- Přesně tak, jak je v systému —
PROD.001 - Oddělovače nahradí mezerami —
PROD 001 - Oddělovače úplně vynechá —
PROD001 - Zadá jen začátek —
PROD - Napíše malými písmeny —
prod.001
176 dotazů přes všech 40 produktů. Varianty jsme generovali algoritmicky na základě typických vzorců chování uživatelů při zadávání produktových kódů. Nešlo o reálné logy vyhledávání. V praxi většina zákazníků zadá kód přesně nebo malými písmeny — ale právě ty zbylé případy rozhodují o ztracených objednávkách.
Sada 2: varianty z reálného světa
Přidali jsme dalších 119 dotazů simulujících specifičtější chování:
- Mezera na hranici písmen a číslic —
BR 7 ESmístoBR7ES,S 410510394006místoS410510394006 - Pomlčka na hranici —
T-1210444místoT1210444 - Bez úvodních nul —
7703305178místo07703305178 - Záměna oddělovačů —
240-347-00-1místo240.347.00.1 - Pouze číslo — zákazník si pamatuje jen
51410404z kóduMOT-51410404 - Pouze písmena —
PSYz kóduPSY-0118
Celkem 295 dotazů na 40 produktů. Každý dotaz jsme odeslali na API vyhledávání a zaznamenali, zda se správný produkt objevil a na jaké pozici.
Jak a proč test vznikl?
Test jsme připravili jako interní experiment zaměřený čistě na chování vyhledávání při práci s produktovými kódy. Nejde o akademickou benchmarkovou studii, ale o praktický test typických variant dotazů, se kterými se v e-commerce běžně setkáváme. Cílem bylo ověřit, jak robustně si Search Ready vyhledávání poradí s různými způsoby zápisu kódu.
Výsledky: čísla, která mluví
Sada 1 — základní varianty
- Celkem dotazů: 176
- Produkt nalezen: 176 (100 %)
- Na první pozici: 164 (93 %)
- V top 3: 176 (100 %)
- MRR (Mean Reciprocal Rank): 0,96
V tomto testovacím scénáři jsme dosáhli stoprocentní úspěšnosti. Každý z 40 produktů byl nalezen v každé variantě. MRR 0,96 naznačuje, že správný produkt se ve většině případů objevuje na první pozici.
MRR je standardní metrika kvality vyhledávání — říká, jak vysoko se v průměru správný výsledek umístí. Hodnota 1,0 by znamenala, že je vždy na prvním místě.
Sada 2 — pokročilé varianty
- Celkem dotazů: 119
- Produkt nalezen: 117 (98 %)
- Na první pozici: 108 (92 %)
- V top 3: 115 (97 %)
- MRR: 0,94
Jak číst tato čísla
Test probíhal na relativně malém katalogu (40 produktů), takže konkurence mezi výsledky byla nízká. V reálném e-shopu s tisíci položkami může být ranking u krátkých fragmentů kódu přirozeně složitější. Přesné shody a drobné varianty zápisu by však měly fungovat spolehlivě bez ohledu na velikost katalogu.
Dva nenalezené dotazy měly společný vzor — odstranění úvodní nuly: 07703305178 → 7703305178 a 240.347.00.1 → 240.347.0.1. U technických kódů je úvodní nula součástí identifikátoru — vyhledávání by nemělo hádat, jestli zákazník nulu zapomněl, nebo jestli hledá jiný díl. V případě technických identifikátorů bývá přesnost obvykle důležitější než agresivní tolerance chyb.
Srovnání: jak si vede "standardní vyhledávání"?
Aby čísla měla kontext, pustili jsme identických 295 dotazů i přes nativní vyhledávání velké české e-commerce platformy.
Sada 1 — základní varianty (176 dotazů):
- Přesně zadaný kód — standardní: 100 % / Search Ready: 100 %
- Malými písmeny — standardní: 100 % / Search Ready: 100 %
- Oddělovače nahrazené mezerami — standardní: 89 % / Search Ready: 100 %
- Kód bez oddělovačů — standardní: 0 % / Search Ready: 100 %
- Jen začátek kódu — standardní: 100 % / Search Ready: 100 %
- ----------
- Celkem — standardní: 82 % / Search Ready: 100 %
- MRR — standardní: 0,79 / Search Ready: 0,96
Sada 2 — pokročilé varianty (119 dotazů):
- Mezera na hranici písmen/číslic — standardní: 100 % / Search Ready: 100 %
- Pomlčka na hranici — standardní: 0 % / Search Ready: 100 %
- Bez úvodních nul — standardní: 20 % / Search Ready: 80 %
- Pouze číslo — standardní: 100 % / Search Ready: 100 %
- Pouze písmena — standardní: 81 % / Search Ready: 100 %
- Mezera odstraněna — standardní: 0 % / Search Ready: 100 %
- Záměna oddělovačů — standardní: 72 % / Search Ready: 100 %
- ----------
- Celkem — standardní: 69 % / Search Ready: 98 %
- MRR — standardní: 0,64 / Search Ready: 0,94
Přesný kód, malá písmena a začátek kódu — tady si obě řešení vedou stejně. Rozdíl se ukáže v momentě, kdy zákazník kód trochu změní.
Kód bez oddělovačů — zákazník napíše PROD001 místo PROD.001 nebo MOT51410404 místo MOT-51410404. V našem testu standardní vyhledávání nenašlo žádný produkt z 29 takových dotazů. V tomto testu je Search Ready našel všechny. To je scénář, který se v praxi děje — zákazník přepisuje kód z katalogového listu a oddělovače prostě vynechá.
Pomlčka na hranici písmen a číslic — T-1210444 místo T1210444 nebo DCPR-8-EKC místo DCPR8EKC. Standardní vyhledávání: 0 %. Search Ready: 100 %.
Záměna oddělovačů — 240-347-00-1 místo 240.347.00.1. Standardní vyhledávání si poradilo se 72 %, Search Ready se všemi.
Co to znamená pro váš e-shop?
Dotazy obsahující produktový kód jsou v e-commerce specifické: uživatel většinou přesně ví, co chce koupit, a očekává okamžitý výsledek. I relativně malé zlepšení nalezitelnosti v těchto scénářích proto může mít nepřiměřeně velký dopad na uživatelský komfort i konverzi.
Pojďme se na čísla podívat z pohledu zákazníka, který zadá produktový kód.
V našem testu se správný produkt objevil u 99 % dotazů. I když byl kód zadaný s jinými oddělovači, malými písmeny, nebo jen jeho část. U standardního vyhledávání je to 77 %. Ten rozdíl — 22 procentních bodů — jsou zbytečné překážky na cestě k objednávce.
Zákazník, který hledá podle produktového kódu, je zákazník ve fázi rozhodnutí. Nepotřebuje přesvědčovat. Nepotřebuje inspiraci. Potřebuje, aby mu vyhledávání nezatarasilo cestu.
Nejčastější scénáře z praxe:
- Velkoobchodní zákazník zadává kódy z objednávkového listu — často ručně, s občasným překlepem
- Technik nebo údržbář hledá náhradní díl podle kódu ze štítku — kód může obsahovat lomítka, závorky, cokoliv
- Zákazník s doporučením dostal kód od známého v chatu — bez speciálních znaků, možná jen část
- Opakovaný nákup — zákazník hledá podle kódu z minulé faktury, kde byl kód oříznutý nebo přeformátovaný
Každý z těchto scénářů jsme v rámci testu simulovali a vyhledávání v nich dosáhlo velmi vysoké úspěšnosti.
Proč se to vlastně děje? Odpověď je v tom, jak vyhledávání s produktovými kódy technicky pracuje.
Na detailech záleží
Když se řekne „vyhledávání na e-shopu", většina lidí myslí na hledání podle názvu produktu. Ale produktové kódy jsou samostatná disciplína. Vyžadují, aby vyhledávač:
- Rozuměl speciálním znakům — nezahazoval je, ale pracoval s nimi jako s plnohodnotnou součástí kódu
- Toleroval odchylky — jiné oddělovače, chybějící znaky, změnu velikosti písmen
- Našel i části kódu — protože zákazník často nemá celý kód, jen úryvek
- Zachoval přesnost — když zákazník zadá přesný kód, musí být výsledek na prvním místě
Test zahrnující 295 dotazů nad 40 produktovými kódy tyto výsledky v laboratorním prostředí potvrzuje. Ne proto, že by to bylo jednoduché — ale proto, že jsme na tom systematicky pracovali.
Co testy ukazují a co ne
Je fér říct, že tyto testy proběhly v laboratorním prostředí — na izolovaných datech, kde jsme cíleně testovali schopnost vyhledávání pracovat s produktovými kódy. Testovali jsme na 40 produktech. Reálný e-shop jich má tisíce až desítky tisíc. A to je zásadní rozdíl.
Se 40 produkty v indexu má hledaný kód minimální konkurenci. Dotaz PFB nebo 240 snadno najde správný produkt, protože v indexu není téměř žádná konkurence. Se 40 000 produkty by stejný dotaz mohl odpovídat desítkám jiných kódů a výsledek by nemusel být na první pozici.
Přesné shody — celý kód, kód malými písmeny, kód s jinými oddělovači — budou fungovat spolehlivě bez ohledu na velikost katalogu. Ale vágní dotazy, jako jen číselná část kódu nebo krátký fragment, budou v plném indexu přirozeně méně přesné.
V reálném e-shopu se navíc prohledává více atributů současně, výsledky se řadí podle složitějšího skórování a kódy soupeří o pozici s názvy, popisy a dalšími daty. Až budeme mít toto nové vyhledávání nasazené na reálných e-shopech, přijdou testy na ostrých datech — a zase o nich napíšeme.
Proč nestačí dát kód do názvu produktu
Jedna věc, kterou z výsledků nevidíte, ale která za nimi stojí: produktový kód musí být v datech e-shopu uložený jako samostatný atribut. Ne jako součást názvu produktu, ne schovaný v popisu.
Občas se setkáváme s tím, že provozovatel e-shopu vloží kód přímo do titulku — například „Olejový filtr 15400-PFB-014 Honda". Vypadá to logicky. Zákazník kód vidí, vyhledávání ho přece najde. Jenže to tak jednoduché není.
Vyhledávání produktových kódů funguje jinak než vyhledávání běžného textu. Používáme na něj specializovanou analýzu přizpůsobenou struktuře produktových identifikátorů — kód se rozloží na části, zachovají se oddělovače i jejich varianty, tolerují se záměny. Právě díky tomu dokážeme najít 15400-PFB-014, i když zákazník zadá 15400 PFB 014 nebo jen 15400-014.
Tuto analýzu ale nelze aplikovat na název produktu. Kdybychom ji použili, výsledky by byly naprosto nesmyslné. Běžný text potřebuje jiný přístup: stemming, práci se synonymy, relevanci podle kontextu.
Proto vyhledávání pracuje s více atributy současně — název, popis, parametry, značka, produktový kód — ale každý atribut prohledává jinak, s jinou analýzou a jinou váhou. Produktový kód dostane specializovanou analýzu. Název dostane textovou. A výsledné skóre se složí ze všech dohromady.
Právě tohle stojí za čísly z našich testů. Nejde jen o to, že vyhledávání „umí speciální znaky". Jde o to, že každý typ dat zpracovává způsobem, který mu sedí.
Takže pokud chcete, aby vaši zákazníci spolehlivě nacházeli produkty podle kódu — ujistěte se, že máte kódy v samostatném poli. Nejenom v titulku, nejenom v popisu. Ale hlavně v produktovém kódu nebo SKU.
Jak si ověřit, že vaše vyhledávání zvládá produktové kódy?
Vezměte pět svých nejkomplikovanějších produktových kódů. Zadejte je do vyhledávání na svém e-shopu. Pak je zadejte s malými písmeny. Pak bez oddělovačů. Pak jen první polovinu. Pak jen číselnou část.
Pokud se produkt pokaždé objeví na prvních pozicích — vaše vyhledávání funguje. Pokud ne, může vaše vyhledávání zbytečně komplikovat cestu zákazníkům, kteří přesně vědí, co chtějí koupit.
A to jsou ti nejcennější.
Výsledky berte jako ilustraci principu — skutečný dopad vždy závisí na velikosti katalogu, kvalitě produktových dat a konfiguraci vyhledávání.
