Proč „Out of stock“ není jen štítek, ale strategické rozhodnutí
Označení „Out of stock“ (OOS) se na první pohled jeví jako drobný UI prvek, ve skutečnosti však představuje rozhodnutí s dopadem na SEO, crawling, konverze, měření poptávky, logistiku a spokojenost zákazníků. Nesprávné řešení vede k nadbytečným proklikům, odchodům ze stránek, indexaci neaktuálních stránek, fragmentaci signálů a ztrátě tržeb. Tento článek popisuje technické i UX zásady, aby stav OOS pracoval pro vás – nikoliv proti vám.
Typologie nedostupnosti: jaké případy musí systém rozlišit
- Dočasně vyprodané (back-in-stock): očekáváme naskladnění (ETD datum nebo interval).
- Dočasně vyprodané, varianta dostupná: jiné velikosti/barvy skladem.
- Předobjednávka: produkt fyzicky není dostupný, ale přijímáme objednávky s datem expedice.
- Trvale nedostupné / ukončené: produkt už se nebude prodávat; existuje nástupce nebo alternativy.
- Regionální nedostupnost: skladem pouze v některých zemích/skladech.
- Dočasný výpadek feedu / inventáře: technická anomálie, nikoliv skutečný OOS.
SEO rozhodování: status kód, indexace, kanonikalizace
- Dočasně vyprodané: ponechte 200 OK s jasnou informací o nedostupnosti a zachovejte indexaci. Produkt sbírá signály a zachycuje poptávku.
- Trvale nedostupné bez nástupce: po 30–60 dnech OOS zvažte 410 Gone nebo 404 s interním přesměrováním uživatelů (nikoliv crawlerů) na kategorii. Neztrácejte link equity bezdůvodně.
- Trvale nedostupné s nástupcem: použijte 301 redirect na nástupnický produkt (stejný účel, srovnatelný price point). Zachováte hodnotu odkazů a recenzí.
- Kanonikalizace variant: u OOS variant udržte
link rel="canonical"na rodičovský produkt, aby se signály nefragmentovaly mezi variantami. - Noindex? Pouze pokud je stránka dlouhodobě bez hodnoty a bez interních/externích odkazů. Jinak riskujete ztrátu historických signálů.
Strukturovaná data: explicitní oznámení stavu pro vyhledávače
Implementujte Product v JSON-LD s vlastností offers.availability:
https://schema.org/InStock,OutOfStock,PreOrder,PreSale,Discontinued,InStoreOnly,OnlineOnly.- Je-li znám datum, uveďte
availabilityStartsneboavailabilityEnds; při předobjednávcereleaseDate. - U variant použijte
isVariantOfa publikujte per-variantoffers, aby stav odpovídal UI. - Konzistence mezi
Product, cenou, UI štítkem a feedy (Merchant Center, marketplaces) je klíčová pro důvěru algoritmů.
Inventární feedy, cache a latence: technické příčiny rozporů
- Synchronizace: konsolidujte inventář na úrovni „single source of truth“ (ERP/WMS) a nastavte webcron/webhooky na inkrementální aktualizace.
- Cache strategie: pro cenově a skladově citlivá pole používejte kratší TTL, ETag a stale-while-revalidate pro HTML; pro API vrstvu preferujte conditional requests.
- Invalidace na okraji sítě (edge): při změně stavu spusťte cílené vyčištění konkrétní URL a souvisejících JSON fragmentů (např. fragment cache pro „buy box“).
- Monitoring odchylek: alerty na nesoulad UI vs. feed (např. UI zobrazuje „Skladem“, ale
offers.availability= OutOfStock).
UX principy: transparentnost, cesta dál a minimalizace frustrace
- Viditelný štítek už v seznamu produktů (PLP) a ve filtru („Zobrazit pouze skladem“).
- Přesná informace: „Dočasně vyprodané – očekávané naskladnění 12.–15. listopadu“ je lepší než vágní „Není dostupné“.
- Preferovaná CTA při dočasném OOS: „Upozornit, až bude skladem“, „Zobrazit podobné“, „Zkontrolovat dostupnost v prodejně“.
- Alternativy: automatická doporučení podle pravidel substituce (náhradní díly, kompatibilita, porovnatelné parametry a cena).
- Zákaz klamu: zakázat přidání do košíku, pokud reálně není možné objednat. Nabídnout „předobjednat“ pouze s jasnými podmínkami.
Notifikace a waitlist: jak proměnit OOS na budoucí poptávku
- Formulář bez bariér: email/SMS/Push s double opt-in a preferencí varianty.
- Omezení frekvence: notifikovat pouze při opětovném naskladnění; ochrana před spamem.
- Prioritizace: je-li naskladnění limitováno, rozesílejte v dávkách dle pořadníku; měřte konverzi „notifikace → nákup“.
Varianty a konfigurace: inteligentní fallback
- Pokud je vybraný variant OOS, automaticky zvýrazněte dostupné varianty (např. jiná velikost) a umožněte rychlou změnu bez obnovy stránky.
- U konfigurátorů zobrazujte kombinace, které jsou skladem, a u OOS kombinací uveďte jasný důvod a nejbližší dostupnou alternativu.
Hreflang a regionální dostupnost
- Je-li produkt OOS pouze v některých zemích, nepoužívejte univerzální „noindex“. Uchovejte per-locale stránku s pravdivou dostupností a správnými
hreflangodkazy. - Na stránce explicitně komunikujte rozdíly: „Dostupné v CZ, OOS na SK“ a nabídněte přepojení nebo porovnání skladů.
Kategorie, filtrování a interní prolinkování
- Na PLP umožněte skrývání OOS nebo jejich přesun na konec; udržíte přehlednost a minimalizujete zklamání.
- Interní odkazy z blogu a hubů směřujte primárně na dostupné alternativy; u OOS přidejte relace „see also“ na nástupce.
- Při dlouhodobém OOS zvažte odstranění z navigace a sitemap, ale zachovejte uživatelsky přívětivou cestu pro návštěvníky z externích odkazů.
XML sitemap & Merchant/Ads feed: konzistentní signály
- V XML sitemap ponechte dočasně OOS URL; při trvalém ukončení je odstraňte po nasazení 410/301.
- Konsolidujte stav dostupnosti v Merchant Center s webem; rozdíly vedou k zamítnutí reklam a špatné zkušenosti.
Měření a atribuce: co sledovat při OOS
- CTR a bounce z organiku na OOS vs. dostupné produkty.
- Konverze waitlistu, doba od naskladnění po nákup, cenová elasticita po návratu.
- Podíl návštěv OOS z nejdůležitějších vstupních stránek – je-li vysoký, přehodnoťte kampaně a interní prolinkování.
- Ztráta tržeb způsobená OOS (opportunity cost) a míra zachycení substitucemi.
Právní a důvěryhodnost: transparentnost informací
- Komunikujte reálné dodací lhůty a dostupnost; uvádějte „předběžný datum“ s disclaimery.
- U předobjednávek zobrazujte platební podmínky, rezervaci a možnost storna zdarma do expedice.
Přístupnost a mikrotext
- Používejte ARIA štítky pro OOS status na tlačítkách a variantoch (např.
aria-disabled="true",aria-livepro změny stavu). - Mikrotexty: konkrétní, přátelské, bez pasivní agrese. Příklady: „Dočasně vyprodáno – zanechte nám kontakt, dáme vědět.“
Výkon a architektura: SSR, CSR a hydration „buy boxu“
- Stav dostupnosti renderujte SSR pro rychlé TTI a SEO konzistenci; následné změny (např. počty kusů) aktualizujte přes CSR po načtení.
- Minimalizujte FOUC/FOIT: informace o OOS nesmí „přeskočit“ ze skladem na vyprodáno po 2 sekundách – zabíjí důvěru.
Rozhodovací strom: jak se zachovat při konkrétním OOS stavu
- Dočasně OOS < 30 dní: 200 + index; zobrazit datum, waitlist, alternativy; schema.org=OutOfStock.
- Dočasně OOS > 30 dní: vyhodnotit poptávku; je-li na vzestupu, ponechat; je-li klesající, přesunout signály na kategorii/alternativy.
- Trvale ukončený: 301 na nástupce; pokud neexistuje, 410 po 30–60 dnech, odstranit ze sitemap, zachovat uživatelské vedení na kategorii.
- Variant OOS: kanonikalizace na rodiče, UI zvýraznění dostupných variant, per-variant schema.
Specifika marketplaces a omnichannel
- Synchronizujte POS stavy (prodejny) s e-shopem; nabídněte „rezervovat na prodejně“, pokud sklad >= práh.
- U marketplaces dodržujte feed SLA do 15–30 minut; porušení vede k penalizacím a dočasnému pozastavení.
Testování a experimenty
- A/B test umístění OOS štítku, textů, pořadí CTA a intenzity alternativ.
- Testujte „přesun OOS na konec“ vs. úplné skrytí na PLP v různých kategoriích a sezónních fázích.
Prevence chyb: nejčastější anti-patterny
- Globální noindex na dočasné OOS stránky – ztráta historických signálů.
- 301 na kategorii při dočasném OOS – zmatení pro uživatele i roboty.
- Nekonzistentní stav mezi UI, schema.org a feedy – snižuje důvěru a vede k zamítnutí reklam.
- Chybějící waitlist a alternativy – promarněná poptávka.
Checklist implementace „Out of stock“
- OOS případy rozlišeny v datovém modelu (dočasné, trvalé, regionální, variant).
- Jasná pravidla pro HTTP kód, indexaci, kanonikalizaci a přesměrování.
- Product JSON-LD s korektním
offers.availability, per-variant. - Waitlist s double opt-in, alternativy a regionální provázání.
- PLP filtr „pouze skladem“ a přesun OOS na konec.
- Synchronizace inventáře, cache invalidace, alerty na drift.
- Měření: CTR/bounce na OOS, konverze notify, ztráta výnosu a substituce.
- Přístupnost: ARIA stavy, čitelný mikrotext, transparentní ETA.
OOS jako součást spolehlivé infrastruktury důvěry
Správně navržený „Out of stock“ není bariéra, ale most – udrží SEO signály, nabídne cestu k alternativám, vytvoří čekací seznam a minimalizuje frustraci. Kombinace precizní technické implementace a empatického UX proměňuje nedostupnost v příležitost: zachytíte poptávku dnes a přeměníte ji v tržbu zítra bez poškození dlouhodobé viditelnosti.