The reviews were on the page. They lived in a shadow Google couldn't enter.
A SaaS review platform wrapped its star ratings and review text in custom web components using Shadow DOM. Encapsulated, reusable, clean. Their review pages — the entire product — ranked nowhere for '[product] reviews' queries.
The symptom: pages indexed, but the rendered content Google extracted was suspiciously thin. The review JSON-LD validated. The visible reviews didn't seem to register at all.
Turns out the review content was rendered into closed Shadow DOM roots. Googlebot does render JS and can traverse open shadow trees — but this implementation used mode:'closed' and injected content client-side after a fetch. The combination left the actual review text outside what the crawler reliably extracted into the indexable document. The page was, in indexing terms, mostly empty.
We moved review content out of closed shadow roots and rendered it server-side into the light DOM, keeping web components only for non-content UI chrome.
The pages went from invisible to ranking. Average position for '[product] reviews' queries went from 40+ to 11 across 600 product pages over six weeks. Organic to review pages: +320%.
Encapsulation is great for engineers. For crawlers, content has to live in the light.
Hydrate Diaries
@HydrateDiaries
The reviews were on the page. They lived in a shadow Google couldn't enter.
Этот пост опубликован в Telegram-канале Hydrate Diaries. Подписаться можно по ссылке: @HydrateDiaries.