
14 months ago, Google updated its documentation around its shopping related structured data warning not to generate your structured data dynamically through JavaScript. Yesterday, at the Search Central Live event in Zurich, a Google engineer explained why - it's because the shopping bot crawls a lot and fast.
Yes, the shopping crawler has to consume shopping structured data incredibly fast so it has up-to-date pricing, inventory, availability and so forth for the Google Shopping Graph. Because of the speed and quanity of feeds it needs to consume over-and-over again, it does not have time to wait for JavaScript to dynamically generated the structured data.
This is different from how normal Googlebot and Google Search handles it. Googlebot for Search will wait and consume your JavaScript to wait for it to render the structured data.
Here are those posts on this:
Google Shopping won't process structured data loaded through JavaScript because Shopping crawls a lot, fast, because it needs real time pricing/availability. It is different from Google Search.
— Barry Schwartz (@rustybrick) December 9, 2025
Is client side rendered JS bad for structured data?
— Aleyda Solis 🕊️ (@aleyda) December 9, 2025
In search: they’re parsing it. This invites drift tough if you have any content gap and is reflected in the page. They should be aligned.
For shopping : it’s different because they crawl a lot. If they have to crawl… pic.twitter.com/06q9sggrwK
Forum discussion at X.

