Iframe nie przekazuje link equity. Widgety z opiniami to iframe. Policz to..
Backlink prowadzący do pięciogwiazdkowej opinii na stronie produktu sprzedawcy jest, w wielu konfiguracjach, backlinkiem do całkowicie innej domeny. Link equity trafia gdzie indziej. Cumulative Layout Shift trafia do sprzedawcy.
CONTENTS · 08
Blogerka pisze artykuł o najlepszych naturalnych serum na rok 2026. Zamieszcza link do strony produktu sprzedawcy z tekstem kotwicy, który cytuje opinię klienta znalezioną przez Google. Link to głos. Ten głos powinien, w grafie linków Google, trafić do domeny sprzedawcy. Sprzedawca powinien w efekcie wyżej plasować się na frazę "naturalne serum 2026".
W konfiguracji, którą większość platform z opiniami dostarcza domyślnie, ten głos nie trafia do sprzedawcy. Trafia do platformy z opiniami.
Ten esej wyjaśnia, dlaczego tak się dzieje, jak to sprawdzić i co oznacza dla małego sklepu, który płaci za dystrybucję, której nie posiada.
Czym jest iframe: dwa zdania
Iframe to element HTML, który wczytuje osobny dokument wewnątrz okna na stronie nadrzędnej. Przeglądarka renderuje dokument nadrzędny i podrzędny jako dwa odrębne dokumenty, z oddzielnymi drzewami DOM, oddzielnymi źródłami, oddzielnym CSS, oddzielnymi środowiskami JavaScript i osobnymi adresowanymi adresami URL.
Kupujący w przeglądarce widzi oba dokumenty wizualnie nałożone na siebie: gwiazdki i opinie wyglądające, jakby mieszkały wewnątrz strony produktu. Przeglądarka wie, że to dwie strony. Google wie, że to dwie strony. Graf linków traktuje je jako dwie strony.
To jest cały mechaniczny problem.
Przykład Trustpilot: krok po kroku
Trustpilot to najczęściej odwiedzane wdrożenie iframe w handlu. Sprzedawca, który instaluje widget Trustpilot Stars na stronie produktu Shopify, wysyła w HTML strony iframe, którego źródło to widget.trustpilot.com, za którym następuje długi ciąg identyfikatorów. Iframe się wczytuje. Wewnątrz niego Trustpilot renderuje gwiazdki, liczbę opinii i być może niedawną opinię.
Treść iframe'a jest pod adresem widget.trustpilot.com. Jego kanoniczny URL jest pod adresem widget.trustpilot.com. Jego meta tagi są pod adresem widget.trustpilot.com. Każdy bezpośredni link do konkretnej opinii w systemie Trustpilot prowadzi do trustpilot.com/review/[sprzedawca]. Żaden z tych adresów nie należy do domeny sprzedawcy.
Załóżmy teraz, że blogerka czyta jedną z tych opinii na stronie produktu, klika nagłówek opinii i cytuje ją w swoim artykule. W wielu przypadkach linkuje do kanonicznego URL Trustpilot, bo to adres opinii, którą kliknęła. Link trafia do trustpilot.com. Link equity trafia do trustpilot.com. Strona produktu sprzedawcy nie dostaje niczego.
Załóżmy teraz, że blogerka linkuje do strony produktu sprzedawcy, z cytatem z opinii jako tekstem kotwicy. Link trafia do domeny sprzedawcy. Google pobiera domenę sprzedawcy. Google parsuje HTML. Google znajduje iframe. Google nie traktuje, w standardowym przypadku, zawartości iframe'a jako części strony sprzedawcy. Iframe to osobny dokument, indeksowany (o ile w ogóle jest indeksowany) pod adresem widget.trustpilot.com. Tekst kotwicy użyty przez blogerkę, cytat z opinii, jest więc semantycznie opisem treści, która mieszka pod innym źródłem. Sygnał trafności jest niepełny. Strona dostaje pewien kredyt, ale nie taki, jaki dałby akapit tego samego tekstu w HTML strony.
To jest podstawowa strata mechaniczna. Opinie to treść, za którą zapłacił sprzedawca, którą napisali klienci sprzedawcy, a która linkuje do domeny, której sprzedawca nie posiada.
Widget JavaScript: lepszy, ale nieznacznie
Niektóre platformy z opiniami (Yotpo w standardowej instalacji, Okendo, Junip, Stamped) nie używają iframe'ów. Wstrzykują opinie przez JavaScript do elementu div na stronie sprzedawcy. To mechanicznie lepsze rozwiązanie. Opinie, po wyrenderowaniu, mieszkają w DOM sprzedawcy. Adres URL, na którym przebywa kupujący, to adres sprzedawcy. Kanoniczny adres należy do sprzedawcy. Link equity płynie prawidłowo.
Problem, jak omówiliśmy w the end of the review widget, polega na tym, że opinie istnieją tylko wtedy, gdy JavaScript zostanie uruchomiony. Dla Googlebota JavaScript uruchamia się ostatecznie, z opóźnieniem świeżości, o którym pisaliśmy. Dla GPTBota, ClaudeBota i PerplexityBota JavaScript nie uruchamia się w ogóle. Opinie nie są na stronie, którą widzi crawler.
Mamy więc trzy konfiguracje.
Konfiguracja iframe: opinie mieszkają w innej domenie, link equity nie trafia do sprzedawcy, żaden crawler nie widzi opinii sprzedawcy, bo nie ma żadnych opinii na stronie sprzedawcy.
Konfiguracja wstrzykiwania przez JavaScript: opinie mieszkają w domenie sprzedawcy po wyrenderowaniu, link equity trafia prawidłowo, ale opinie są niewidoczne dla crawlerów AI i częściowo widoczne dla Googlebota.
Konfiguracja renderowania po stronie serwera: opinie są w HTML sprzedawcy, link equity trafia prawidłowo, wszystkie crawlery widzą opinie. To konfiguracja, której prawie żaden widget z opiniami nie stosuje domyślnie.
Matematyka jest prosta. Iframe jest najgorszy. Wstrzykiwanie JavaScript jest pośrodku. Renderowany HTML po stronie serwera jest najlepszy. Większość sklepów w 2026 roku korzysta z jednej z dwóch najgorszych opcji.
Kara CLS
Istnieje drugi wymiar, mechanicznie odrębny od kwestii link equity, ale nałożony na ten sam problem. Core Web Vitals to sygnał rankingowy Google od 2021 roku, odświeżony w 2024 roku wraz z wprowadzeniem Interaction to Next Paint. Jeden z trzech sygnałów to Cumulative Layout Shift, który mierzy, ile treść strony przesuwa się podczas ładowania. Google karze strony z wynikiem CLS powyżej 0,1.
Widget z opiniami wczytywany przez iframe jest, w wielu implementacjach, wymiarowany w czasie wykonania przez skrypt, który go tworzy. Strona początkowo renderuje się bez widgetu. Skrypt się wczytuje. Iframe się wstrzykuje. Treść strony przesuwa się w dół o 200 do 400 pikseli, gdy widget zajmuje miejsce pod przyciskiem zakupu. Wynik CLS dla tego wczytywania strony wzrasta o wartość zależną od tego, ile okna widoku zajmuje przesunięta treść. W naszych własnych pomiarach terenowych na początku 2026 roku obserwowaliśmy przesunięcia od 0,18 do 0,34 spowodowane przez widgety z opiniami oparte na iframe, na skądinąd dobrze zoptymalizowanych motywach Shopify.
Strona z wynikiem CLS 0,25 nie plasuje się tak dobrze jak strona z wynikiem CLS 0,05, przy pozostałych czynnikach równych. Sprzedawca płaci, w pozycji rankingowej, za przywilej hostowania bloku treści, który nie należy do jego domeny. Metodologię pomiarów i podział na poszczególne widgety omówiliśmy w osobnym tekście. Kwestia tutaj jest strukturalna: iframe traci na dwóch osiach jednocześnie, na osi link equity i na osi Core Web Vitals, obie są algorytmiczne. Sprzedawca nie może naprawić żadnej z nich, zmieniając dostawcę platformy z opiniami. Iframe to kształt, a kształt to strata.
"Ale recenzent sam wybrał napisanie opinii na Trustpilot"
Obrońca modelu iframe powie: opinie są na Trustpilot, bo są opiniami Trustpilot. Recenzent zarejestrował się na Trustpilot, napisał tam i Trustpilot jest kanonicznym miejscem dla tej treści. Iframe to jedynie uprzejme wyświetlenie.
To prawda, i nieistotna. Sprzedawca, który instaluje widget Trustpilot, podejmuje decyzję dotyczącą dystrybucji treści: wybiera wyświetlanie treści Trustpilota na własnej stronie produktu. Koszt tej decyzji jest tematem tego eseju. Pisanie recenzenta jest, z punktu widzenia kupującego, treścią na stronie sprzedawcy. Kupujący nie zna różnicy między iframe a blokiem inline. Crawler zna. Graf linków zna. Pomiar Core Web Vitals zna.
Pisanie recenzenta jest też, w wymiarze komercyjnym, zasobem treściowym. Sprzedawca zapłacił za relację z klientem, która go wytworzyła. Sprzedawca zapłacił za przepływ po zakupie, który go wywołał. Sprzedawca płaci za platformę, która go hostuje. Sprzedawca nie jest właścicielem kanonicznego URL, pod którym ta treść mieszka, i dlatego nie czerpie długoterminowych korzyści z jej odkrywalności.
O tym był the category error, na głębszym poziomie. Błąd kategorii polegał na traktowaniu opinii jako funkcji interfejsu, a nie jako zasobu treściowego. Konfiguracja iframe to najbardziej skrajna wersja tego błędu: sprzedawca zapłacił za treść, wyświetla treść i nie posiada URL, pod którym treść mieszka.
"Wystarczy użyć widgetu JavaScript"
Druga odpowiedź: iframe to zła wersja. Widget JavaScript to dobra wersja. Wybierz platformę, która wstrzykuje JavaScript zamiast iframe, i problem jest rozwiązany.
To częściowe rozwiązanie. Widget JavaScript rzeczywiście mieszka w DOM sprzedawcy, co naprawia kwestię link equity. Nie mieszka w początkowym HTML, co pozostawia kwestię crawlerów AI całkowicie otwartą, a kwestię świeżości Googlebota na wpół zamkniętą. Opisaliśmy już eksperyment z curl przeciwko trzem crawlerom; wynik jest taki, że widget JavaScript jest niewidoczny dla GPTBota, ClaudeBota i PerplexityBota oraz częściowo widoczny dla Googlebota.
Sprzedawca, który przechodzi z widgetu iframe na widget JavaScript, poprawia przepływ link equity. Nie sprawia, że opinie są widoczne dla gospodarki cytowań. W efekcie przenosi się z "najgorszego" do "środkowego". Właściwy ruch to kontynuowanie: od wstrzykiwania JavaScript do renderowania HTML po stronie serwera, gdzie opinie są na stronie, którą każdy crawler może przeczytać, i gdzie link equity, cytowanie i świeżość wracają razem do domeny sprzedawcy.
Model wstrzykiwania JavaScript tworzy łagodniejszą wersję tego samego problemu co iframe: opinie mieszkają w DOM sprzedawcy, ale adresy URL zdjęć, strony profili recenzentów i bezpośrednie linki do poszczególnych opinii często wskazują z powrotem na CDN platformy lub strony szczegółów opinii platformy. Blogerka, która cytuje opinię Yotpo ze strony produktu sprzedawcy, często, po skopiowaniu opinii, trafia na bezpośredni link yotpo.com do tej konkretnej opinii. Nawet w lepszej konfiguracji odłamki zasobów treściowych sprzedawcy parkują pod domeną kogoś innego. Rozwiązanie to zapewnienie, że każdy adres URL związany z opiniami na stronie prowadzi do własnej domeny sprzedawcy. Większość ustawień domyślnych tego nie robi.
Iframe to najczystszy przykład błędu kategorii. Sprzedawca płaci za pisanie, wyświetla pisanie i nie posiada URL, pod którym to pisanie mieszka. Klient napisał list miłosny do marki. Sprzedawca włożył go do cudzej skrzynki pocztowej.
Krótki audyt dla sprzedawcy
Trzy sprawdzenia, po dziesięć minut każde.
Sprawdzenie pierwsze. Otwórz stronę produktu w przeglądarce, kliknij prawym przyciskiem myszy sekcję z opiniami i wybierz "Zbadaj element". Szukaj znacznika iframe wewnątrz bloku z opiniami. Jeśli jest, opinie są w osobnym dokumencie. Sprawdź atrybut src iframe'a, żeby zobaczyć, czyja to domena.
Sprawdzenie drugie. Otwórz stronę w Narzędziach dla programistów Chrome, przejdź do zakładki Performance i nagraj świeże wczytanie przy wyłączonej pamięci podręcznej. Szukaj wpisów Layout Shift. Jeśli widget z opiniami powoduje przesunięcie o 0,1 lub więcej, strona płaci karę Core Web Vitals przy każdym wczytaniu. Dwie trzecie problemów CLS na stronach e-commerce w 2026 roku, w naszych wyrywkowych sprawdzeniach, pochodzi od widgetów z opiniami.
Sprawdzenie trzecie. Wyszukaj w internecie konkretne zdanie z jednej z niedawnych opinii w sklepie. Jeśli wyszukiwarka zwraca stronę na trustpilot.com, reviews.io lub jakiejkolwiek domenie platformy z opiniami, ze wzmianką o produkcie sprzedawcy, a nie na stronie produktu sprzedawcy, to kanonicznym miejscem tej treści jest gdzieś indziej niż tam, gdzie sprzedawca zbiera przychód. Blogerka linkująca do tej opinii zlinkuje do tej domeny. Kupujący, który dotrze przez ten link, dotrze do tej domeny. Ścieżka zakupowa zaczyna się na cudzej własności.
Zakończenie
Sprzedawca, który instaluje widget z opiniami, podejmuje, przeważnie nieświadomie, decyzję dotyczącą dystrybucji treści. Konfiguracja iframe dystrybuuje treść, za którą sprzedawca zapłacił, do domeny, której sprzedawca nie posiada. Konfiguracja wstrzykiwania JavaScript utrzymuje treść w domenie sprzedawcy w przeglądarce kupującego, ale nie w indeksie crawlera. Konfiguracja renderowania HTML po stronie serwera utrzymuje treść w domenie sprzedawcy w każdym kontekście, który ma znaczenie.
Przez piętnaście lat budowaliśmy platformy z opiniami na iframe i widgecie JavaScript. W handlu płaciliśmy za dystrybucję i akceptowaliśmy, że kanoniczny URL pisania naszych własnych klientów mieszka gdzieś indziej niż strona, na której sprzedajemy. To nie jest już akceptowalny kompromis. Link equity należy do sprzedawcy. Opinie należą do sprzedawcy. Strona powinna należeć do sprzedawcy.
Okres półtrwania strony produktu, jak pisaliśmy w the half life of a product page, zależy od tego, że strona gromadzi treść, która się kumuluje. Opinie to najbardziej kumulujący się zasób, jaki sprzedawca posiada. Iframe oddaje ten zasób innej domenie. Policz to. Matematyka nie jest subtelna.
THE LETTER
When there is a new essay worth sending, it goes here first.
If any of this reads like something your store could use,write to us.
We will write back.