Filtry fasetowe to najczęściej niedoceniany element SEO sklepu — i jednocześnie źródło najgroźniejszych problemów technicznych. Dobrze zaprojektowane generują tysiące wejść z długiego ogona („buty trekkingowe męskie rozmiar 45 membranowe"), źle skonfigurowane zalewają Google duplikatami, marnują crawl budget i rozmywają autorytet kategorii. Różnica między jednym a drugim to kilka reguł technicznych, które opisuję w tym artykule.
- Zacznijmy od liczb: kategoria z 12 filtrami po 5 wartości każdy generuje ponad 200 tysięcy możliwych kombinacji URL. Google nie zaindeksuje ich wszystkich, a próba wymuszenia tego kończy się klasycznym problemem: tysiące „miękkich 404", duplikatów i stron bez treści. Celem nie jest indeksowanie wszystkiego, tylko wybranie kombinacji, które mają realny popyt wyszukiwania — i pokazanie Google reszty jako wariantów.
Najważniejsze: Zasada projektowania filtrów fasetowych: indeksuj wyłącznie kombinacje z realnym popytem (kategoria + marka, kategoria + płeć, kategoria + rozmiar), resztę ustaw jako noindex, follow lub zablokuj w robots.txt z parametrami. Każda indeksowana kombinacja potrzebuje unikalnego title, H1 i treści — inaczej to doorway page.
Kiedy filtry indeksować, a kiedy blokować
Trzy strategie dla trzech typów kombinacji
| Typ kombinacji | Przykład | Decyzja |
|---|---|---|
| Kategoria + marka | /buty/nike | indeksuj (osobny URL, unikalna treść) |
| Kategoria + atrybut główny | /buty/meskie, /buty/rozmiar-45 | indeksuj wybiórczo (te z popytem) |
| Kategoria + 2+ atrybuty | /buty/nike/meskie/czarne/45 | noindex, follow (lub blokada) |
| Sortowanie, widok, paginacja | ?sort=asc&view=grid&page=3 | blokada / canonical do bazy |
- Punkt wyjścia to dane: sprawdź w Google Search Console (raport wydajności z filtrem na adresy z parametrami) i w narzędziach słów kluczowych, które kombinacje mają realne wyszukiwania. „Buty męskie" ma popyt — „buty męskie czarne skórzane rozmiar 43 z membrane" prawie nigdy. Indeksuj to, czego ludzie faktycznie szukają.
Reguły techniczne — canonical, robots, parametr
- Czytelne adresy dla indeksowanych kombinacji — /buty/nike zamiast /buty?brand=123&f=456. Przepisz najważniejsze kombinacje na ścieżki (lub parametry z czystą strukturą), zanim zaindeksują się wersje z parametrami.
- Canonical na stronach filtrowanych — strony z 2+ filtrami wskazują canonical na wersję bazową (kategoria bez filtrów), jeśli nie mają własnej treści. Strony z popytem (marka, płeć) dostają canonical na siebie.
- Meta robots — noindex, follow dla kombinacji bez popytu: Google przestaje je indeksować, ale nadal przechodzi po linkach do produktów.
- robots.txt dla parametrów technicznych — sortowanie, widok, sesje, śledzenie: Disallow: /*?sort=. To nie zastępuje noindex dla kombinacji wartości, ale zdejmuje z crawla śmieciowe warianty.
- Paginacja — kolejne strony listingu nie dostają canonicala do pierwszej (Google od lat rekomenduje pozostawienie self-canonical), a „view all" — jeśli istnieje — może być indeksowane jako alternatywa.
- Sitemap — dodaj do sitemapy wyłącznie indeksowane kombinacje filtrowane; sitemap nie służy do zgłaszania tego, co noindex.
Uwaga: Meta robots noindex i canonical to nie to samo. Canonical to sugestia — Google może ją zignorować, jeśli uzna stronę za wartościową. Jeśli kombinacja filtrów naprawdę nie ma być w indeksie, użyj noindex, follow. Blokada w robots.txt ukryje stronę przed crawl w ogóle — wtedy Google nie zobaczy także noindex, więc nigdy nie usunie jej z indeksu.
SEO dla stron filtrowanych — jak pisać i budować
Indeksowana kombinacja bez treści to doorway page. Żeby strona /buty/nike była wartościowa
- Unikalny title i H1 — „Buty Nike — kolekcja 2026 | Sklep X" zamiast automatycznego „Buty — filtry".
- Krótki opis na górze lub dole listingu — 2–4 zdania o kolekcji, marki albo kategorii: co wyróżnia, dla kogo, jaka rozmiarówka. Nie kopiuj tego samego tekstu na wszystkie kombinacje.
- Linkowanie wewnętrzne — linkuj do indeksowanych kombinacji z kategorii bazowej (linki „popularne marki", „rozmiary"), żeby Google je odkrywał i rozumiał relacje.
- Ścieżki nawigacyjne — breadcrumbs pokazujące hierarchię (Buty > Nike), spójne z linkowaniem.
- Dane strukturalne — ItemList dla listingu, Product dla produktów na stronie; to pomaga w rich results i porządkowaniu zrozumienia strony.
Unikaj generowania tekstu na siłę: „Buty Nike to buty marki Nike, które kupisz w naszym sklepie" to gorzej niż brak tekstu. Lepiej mieć mniej indeksowanych kombinacji z dobrym opisem niż tysiące z szablonowym bełkotem.
Crawl budget — dlaczego filtry potrafią zabić sklep
Przy 20 000 produktów i rozbudowanych filtrach Googlebot potrafi poświęcić większość budżetu crawlowania na kombinacje filtrów, zamiast odświeżać karty produktów i kategorie. Objawy: nowe produkty indeksują się tygodniami, zmiany cen nie wchodzą, w logach serwera widać setki wejść na URL-e z parametrami.
Lekarstwo
- noindex dla kombinacji bez popytu — Google przestaje je traktować jako kandydatów do indeksu i wraca rzadziej.
- robots.txt dla parametrów technicznych — sort, view, session, utm.
- Linkowanie tylko do indeksowanych kombinacji — jeśli linkujesz wszędzie (np. w każdym filtrze), bot podąża za każdym linkiem.
- Sitemap z samymi wartościowymi URL-ami — produktami, kategoriami, wybranymi kombinacjami.
- Monitoring w logach — raz w miesiącu sprawdź, jaki procent wejść Googlebota trafia na URL-e z parametrami. Powyżej 30% to sygnał, że reguły wymagają przeglądu.
Wydajność filtrów a Core Web Vitals
Filtry to także wyzwanie wydajnościowe: dynamiczne odświeżanie listingu bez przeładowania strony (AJAX) poprawia UX, ale potrafi psuć indeksację, jeśli zmiana filtra nie aktualizuje URL. Zasada: każda zmiana filtra, która ma być indeksowalna, musi zmieniać adres (History API), a kluczowe kombinacje muszą renderować się serwerowo. Więcej o wydajności sklepu w artykule Core Web Vitals w sklepie internetowym.
Checklista filtrów fasetowych
- Lista kombinacji z realnym popytem — potwierdzona danymi (GSC, planner).
- Indeksowane kombinacje mają czyste adresy URL (ścieżki zamiast parametrów).
- Każda indeksowana kombinacja: unikalny title, H1 i krótki opis.
- Kombinacje 2+ filtrów: noindex, follow (jeśli bez treści).
- Parametry techniczne (sort, view, utm) — robots.txt.
- Canonical spójny z decyzją indeksacyjną.
- Linkowanie wewnętrzne do indeksowanych kombinacji z kategorii bazowej.
- Sitemap zawiera tylko indeksowalne URL-e.
- Breadcrumbs i ItemList na listingach.
- Monitoring udziału URL-i z parametrami w logach Googlebota.
Najczęściej zadawane pytania
Czy filtry fasetowe są dobre czy złe dla SEO?
Jedno i drugie — zależnie od konfiguracji. Dobrze skonfigurowane filtry generują ruch z długiego ogona (kategoria + marka, kategoria + atrybut), którego nie zdobyłbyś samymi kategoriami. Źle skonfigurowane tworzą tysiące duplikatów, marnują crawl budget i rozmywają autorytet kategorii. Kluczowa jest selekcja: indeksuj kombinacje z popytem, resztę ustaw jako noindex, follow.
Które kombinacje filtrów warto indeksować?
Te z realnym popytem wyszukiwania: kategoria + marka (buty Nike), kategoria + płeć/typ (buty męskie), kategoria + najważniejszy atrybut branży (rozmiar, pojemność, kolor bazowy). Sprawdź popyt w Google Keyword Planner i GSC, zanim zdecydujesz. Kombinacje 2+ atrybutów indeksuj tylko wyjątkowo — gdy mają własny popyt i potrafisz napisać dla nich unikalną treść.
noindex czy canonical na stronach filtrowanych?
Jeśli strona nie ma być w indeksie — noindex, follow (canonical to tylko sugestia, którą Google może zignorować). Jeśli kombinacja ma wartość i popyt — zostaw indeksowalną z self-canonical i unikalną treścią. Nie mieszaj: canonical na kategorię bazową + pozostawienie w indeksie to najczęstszy błąd, który kończy się duplikatami w wynikach.
Jak sprawdzić, czy filtry szkodzą mojemu sklepowi?
- Trzy sygnały: (1) w GSC raport wydajności pokazuje setki URL-i z parametrami i zerowymi kliknięciami; (2) w logach serwera Googlebot często odwiedza URL-e z parametrami zamiast produktów; (3) nowe produkty indeksują się tygodniami. Jeśli widzisz dwa z trzech — czas na porządek w regułach indeksacji.
Czy filtry w AJAX są złe dla SEO?
Same w sobie nie — problem zaczyna się, gdy zmiana filtra nie zmienia URL. Wtedy Google widzi jedną stronę, a użytkownik wiele wariantów. Rozwiązanie: History API aktualizujące adres przy każdej zmianie filtra, indeksowalne kombinacje renderowane serwerowo (SSR), a kombinacje bez popytu na noindex. Filtry AJAX z aktualizacją URL są w porządku.
Ile stron filtrowanych powinienem mieć w sitemapie?
Tylko te, które są indeksowalne i mają wartość: kategorie, podkategorie, wybrane kombinacje z popytem. Jeśli sitemap sklepu ma 50 000 URL-i, a 40 000 to kombinacje filtrów — to sygnał, że selekcja nie działa. Sitemap ma komunikować Google, co jest ważne, a nie co istnieje.
👉 Masz sklep z rozbudowanymi filtrami i problemem z indeksacją? Zobacz, jak porządkuję techniczne SEO sklepów: projektowanie sklepów internetowych i sklepy PrestaShop. Napisz na kontakt@informatix.com.pl — przejrzę strukturę URL, canonicale i reguły indeksacji.
📖 Zobacz również: Projektowanie sklepów internetowych — kompletny przewodnik, Core Web Vitals w sklepie internetowym oraz Google Merchant Center — feed produktowy.