Google Shopping Prices Scraper: Products, Stores & Deals
Pricing
from $1.00 / 1,000 product offers
Google Shopping Prices Scraper: Products, Stores & Deals
Get Google Shopping prices for any search or product: price, old price and discount, seller, rating, delivery, image, plus each store's offer with domain, shipping and total price. 20 countries, no browser, no proxies. Pay per result, plus small run and page fees from October 25, 2026.
Pricing
from $1.00 / 1,000 product offers
Rating
0.0
(0)
Developer
PlainRows
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 hours ago
Last modified
Categories
Share
Get Google Shopping prices for any search: title, price, old price and discount, seller, product rating, delivery, image and Google Shopping link for up to 120 products per search. Then compare stores: give a Google Shopping product ID and get every store's offer with store domain, product link, price, shipping and total price, availability and store rating.
It calls a commercial search data API instead of driving a browser: no proxies, no CAPTCHAs, no Google account, results in about a minute. Until October 25, 2026 you only pay for results returned; from October 25, 2026 each run also costs $0.001 to start and each block of results $0.0026. Searches with no result, unknown product IDs and sponsored listings are free.
Typical uses
- Price monitoring: track your products' and competitors' prices on Google Shopping every day, with discounts and old prices.
- Price comparison across stores: who sells a product, at what total price including shipping, and who is in stock.
- Product and market research: which brands, models and sellers show up for a category, at which price points and ratings.
- Repricing and MAP checks: spot sellers below your minimum advertised price, by store domain.
- Automations and AI agents: feed n8n, Make, Zapier, Google Sheets or an MCP client with structured JSON.
What you get
Each row is one product offer. source tells you where it comes from:
search: a listing from a Google Shopping search (one seller's offer of a product, as Google shows it in the results);stores: one store's offer for a product ID (the "compare prices" list of Google Shopping).
| Field | Description |
|---|---|
query, source, position | Your search query or product ID, row type, position in Google's results (sponsored listings excluded) |
productId | Google Shopping product ID. Put it in Product IDs to compare all stores for this product |
title, productTitle | Listing title as shown by the seller, and Google's product title |
seller, storeDomain | Store name; store domain (store offers only: search listings do not show it) |
price, oldPrice, discountPercent, currency | Price, previous price when Google shows a discount, discount in %, ISO currency |
shippingPrice, tax, totalPrice | Shipping, tax and total price when shown (store offers) |
deliveryInfo, availability, condition | e.g. "Free delivery by Fri"; in_stock, backordered...; New / Used / Refurbished |
badges | Labels such as "40% OFF", "Best price", "Usually $210" |
productRating, productRatingCount | Product rating out of 5 and number of ratings |
storeRating, storeRatingCount | Store rating out of 5 and number of ratings (store offers) |
offerUrl, googleShoppingUrl, imageUrl | Product page on the store's site (store offers), Google Shopping page (search), image |
gtin | GTIN/EAN when Google shows it (rare) |
correctedQuery | Google's spelling correction of your query, if it applied one |
searchCountry, languageCode, observedAt | Market, language and when the data was fetched (UTC) |
Missing values are always null, never guessed. Seller handles on consumer marketplaces (for example "eBay - username") are reduced to the marketplace name ("eBay"), because they can name private people.
Input
{"searchQueries": ["sony wh-1000xm5", "espresso machine"],"productIds": ["17653315832884157286"],"country": "US","maxProductsPerQuery": 40,"maxOffersPerProduct": 20,"sortBy": "relevance","minPrice": 100,"maxPrice": 400}
- searchQueries: what you would type in Google Shopping, up to 1,000 per run. 1 to 120 products each (maxProductsPerQuery, default 40).
- productIds (optional): Google Shopping product IDs, taken from the
productIdcolumn of a search run, or a Google Shopping link that contains one. 1 to 100 store offers each (maxOffersPerProduct, default 20). Product IDs are per country: use IDs found by a search in the same country. You can run searches only, product IDs only, or both. - country: US, GB, CA, AU, IE, IN, DE, AT, CH, FR, BE, ES, MX, IT, NL, PT, BR, PL, SE, JP. languageCode (optional) defaults to the country's main language.
- sortBy (
relevance,price_low_to_high,price_high_to_low,review_score), minPrice, maxPrice (whole numbers in the country's currency): Google Shopping's own filters, applied to searches. - Searching by GTIN/EAN barcode is not supported: in our tests a barcode search returned unrelated products, so search by product name or model instead.
Output example
Real rows from a run on 2026-10-07 (US). A search listing for sony wh-1000xm5:
{"query": "sony wh-1000xm5","source": "search","found": true,"position": 1,"productId": "17755277695162489284","gtin": null,"title": "Sony WH-1000XM5 Noise Canceling Wireless Headphones","productTitle": "Sony WH-1000XM5 Noise Canceling Wireless Headphones","seller": "Best Buy","storeDomain": null,"price": 238,"oldPrice": 398,"discountPercent": 40,"currency": "USD","shippingPrice": null,"tax": null,"totalPrice": null,"deliveryInfo": "Free delivery","availability": null,"condition": null,"badges": ["40% OFF"],"productRating": 4.6,"productRatingCount": 17000,"storeRating": null,"storeRatingCount": null,"offerUrl": null,"googleShoppingUrl": "https://google.com/search?ibp=oshop&q=sony+wh-1000xm5+sale&prds=gpcid:11726664398501807381,rds:PC_11726664398501807381%7CPROD_PC_11726664398501807381,headlineOfferDocid:8123523306754565002,catalogid:17755277695162489284,pvo:3,pvt:hg&hl=en&gl=US","imageUrl": "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcSm7uUShvddjQbva7YmqYU4jZM-t27McoF3MYKhFd5gD_5yjYPqRPmoYfG5I1Ys4L3ypm6LUdYBqJTP1N054lKh0EFHUnJ3NEYC_P0tUPmw","correctedQuery": null,"searchCountry": "US","languageCode": "en","observedAt": "2026-10-07T14:58:34.195Z","schemaVersion": "1.0"}
A store offer for product ID 17653315832884157286 (12 stores returned in that run: Best Buy, Sony, Walmart, Target, B&H, Crutchfield...):
{"query": "17653315832884157286","source": "stores","found": true,"position": 1,"productId": "17653315832884157286","gtin": null,"title": "Sony - WH-1000XM5 Wireless Noise Cancelling Over-the-Ear Headphones - Silver","productTitle": "Sony WH-1000XM5 Noise Canceling Wireless Headphones","seller": "Best Buy","storeDomain": "bestbuy.com","price": 198,"oldPrice": null,"discountPercent": null,"currency": "USD","shippingPrice": null,"tax": null,"totalPrice": 198,"deliveryInfo": null,"availability": "in_stock","condition": null,"badges": ["50% off $398"],"productRating": null,"productRatingCount": null,"storeRating": 4.63,"storeRatingCount": 1734,"offerUrl": "https://www.bestbuy.com/product/sony-wh-1000xm5-wireless-noise-cancelling-over-the-ear-headphones-silver/J7XSRH5CXV/sku/6505728?utm_source=feed","googleShoppingUrl": null,"imageUrl": "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcSV_sZCb0RTsNbfzE0gmj_tDvgolFxbjjZyHZ_yUW_qF_6OpwpMLZES7KgBItQD1tryrmpIR8tn6YNgfZ_89lqsQoNC4ketBITvSV2TCJg_0tDnrak3P9uAJg","correctedQuery": null,"searchCountry": "US","languageCode": "en","observedAt": "2026-10-07T14:58:34.195Z","schemaVersion": "1.0"}
Pricing
Pay per result, no subscription, no proxy costs; no fee per run until October 25, 2026, then $0.001 per run start. See the Pricing tab for current prices: one event per product offer found (a search listing or a store offer), cheaper on higher Apify plans. Store domains, shipping, total price and ratings are included in that price (no "details" or "sellers" add-on).
Price change on October 25, 2026: $0.001 per run start, and one results-page event ($0.0026, all plans) per block of results that returns at least one result (up to 40 products for a search, up to 10 store offers for a product ID). The result price does not change.
Searches with no result, unknown product IDs, sponsored listings, duplicates and input mistakes cost nothing (from October 25, 2026, apart from the $0.001 start fee per run). The run never spends more than the maximum cost you set.
Free Apify plan: each run returns up to 20 results for up to 2 searches or product IDs, so you can check the output. A paid Apify plan removes these limits.
Use it from code, automations or AI agents
API (one call, results returned directly):
curl -X POST "https://api.apify.com/v2/acts/plainrows~google-shopping-prices/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQueries": ["sony wh-1000xm5"], "country": "US", "maxProductsPerQuery": 20}'
n8n, Make, Zapier: use the Apify integration, pick plainrows/google-shopping-prices, schedule it daily and send the rows to Google Sheets, Airtable or your database to follow prices over time.
AI agents (MCP): add https://mcp.apify.com?tools=plainrows/google-shopping-prices to Claude, Cursor or any MCP client. The agent gets a typed tool and pays per result.
What this is not
- No product reviews text and no reviewer names. Ratings are averages and counts only.
- Not a live feed: Google Shopping prices change during the day; each row carries
observedAt. - Search listings show the seller's name but not its domain or direct link; use Product IDs for store domains and links. Listings without a
productIdcannot be compared across stores. - Not affiliated with Google.
Run summary
Each run stores a summary in the key-value store (OUTPUT): searches and product IDs submitted and run, how many returned nothing, results billed, sponsored listings skipped, requests Google did not answer, duplicates and invalid values, and anything skipped because of the free-plan or budget limit.
FAQ
How do I monitor product prices on Google Shopping? Enter product names or models in searchQueries, pick the country and schedule the run daily: each row is one listing with price, old price, discount, seller and rating.
How do I compare the prices of one product across stores?
Run a search, copy the productId of the product, and put it in productIds: you get every store's offer with domain, link, shipping and total price.
How many products per search? 1 to 120 (maxProductsPerQuery, default 40), and 1 to 100 store offers per product ID.
Can I search by GTIN or EAN barcode? No: in our tests barcode searches returned unrelated products, so search by product name or model.
Are sponsored listings included? No: sponsored listings are skipped and never billed.
More PlainRows tools
Same pay-per-result pricing, same clean JSON, built to chain together in n8n, Make, Zapier or AI agents.
- SEO and keywords: Keyword Search Volume, CPC & Difficulty · Keyword Ideas Generator · Google Autocomplete & People Also Ask · Google Trends Explorer · Website Organic Traffic & Top Keywords · Bulk Domain Authority Checker · Backlink Checker · Broken Link Checker · AI Search Visibility Tracker (ChatGPT, Gemini, AI Mode) · Google Maps Rank Tracker (Geo-Grid Local SEO)
- Leads and companies: Google Maps Scraper · Website Technology Checker · ATS Jobs Scraper (Workday, Greenhouse, Lever, Ashby) · Google Jobs Scraper · Google Ads Scraper (Transparency Center) · Company Registry Lookup (SIRENE, LEI, Brreg) · Public Tenders Search (EU TED & UK)
- E-commerce and travel: Amazon Product Search Scraper · Google Hotels Prices Scraper · Tripadvisor Reviews Scraper
- Content and media: Google News Scraper · YouTube Search Scraper · YouTube Comments Scraper · Google Images Scraper · Website Screenshot API · Google Maps Reviews Scraper · App Store & Google Play Reviews Scraper
Compared with other APIs: Competitor prices on Google Shopping as JSON, store by store
Support
Missing a field, a country or found a bug? Open an issue on this page. Issues are read and answered.