What the data looks like
Run this on any product page to see its schema.org data. It needs onlycurl and Python. Check the store’s robots.txt and terms first.
@graph, list several offers, use lowPrice, or leave fields out, and some only add the data with JavaScript. You can also paste a URL into the Schema Markup Validator.
Get it as a price API
Product Data API & Scraper - Prices & Stock handles those shapes and returns one format across stores, so it works as an e-commerce product API or a price API for any store that publishes this data:/products/.
How often stores fill each field
We ran the Actor’s extractor on 16 product pages from 9 online stores on 2026-11-05, counting pages with a product record:
Price and currency came back on every page with a record. Stock status is less common: where it is missing, the markup doesn’t publish it, so the field is
null rather than a guess. No page in this test published a GTIN.
Pages with each field, per store:
Where it doesn’t work
We tried 14 stores and 9 returned records. The other 5:- ColourPop: HTTP 429 on every page
- Kylie Cosmetics: HTTP 429 on every page
- bol.com: HTTP 403 on every page
- Brooklinen: no Product markup in the HTML of the 2 pages it served
- Back Market: connection failed
Track prices over time
Each run reads prices as they are now and keeps no history. To track them, schedule a run and compare results byurl and price.
Run Product Data API & Scraper - Prices & Stock on Apify
$1.50 per 1,000 results, no subscription. You run it with your own Apify account.
