๐๏ธ Google Shopping Insights
Pricing
from $4.99 / 1,000 results
๐๏ธ Google Shopping Insights
Extract product insights from Google Shopping, including pricing, sellers, ratings, reviews, availability, and product details. Monitor competitors, analyze market trends, track pricing changes, and gather e-commerce intelligence with structured data at scale.
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
Scrapier
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Extract rich, structured product data from Google Shopping (udm=28) at scale โ product names, prices, discounts, merchants, conditions, review scores, images and stable Google product IDs โ with a built-in smart proxy fallback that adapts to Google's block walls so you don't have to.
๐ Why choose this Actor?
- ๐ก๏ธ Smart 3-tier proxy fallback โ starts direct (no proxy), escalates to datacenter, then residential (3 retries). One block does not kill the run.
- ๐ง Browser-grade requests โ uses
impitbrowser-impersonation (real TLS + HTTP/2 fingerprints) and escalates to a headless Playwright render on the toughest pages. - ๐ด Live streaming โ every product is pushed to the dataset the moment it is parsed, so a crash mid-run still leaves you with the rows already scraped.
- ๐งฉ Resilient parsing โ class-based fast path with a structural fallback for every field, so it survives Google's constantly-rotating CSS class names.
- ๐๐ Two ways to query โ paste search keywords or ready-made Google Shopping URLs (both bulk).
๐ Key features
| Feature | Description |
|---|---|
| ๐ Search queries | Bulk list of keywords โ each becomes its own output section |
| ๐ Bulk URLs | Paste many Google Shopping URLs at once |
| ๐ Country targeting | 62 countries for the Google gl geo parameter |
| ๐ฐ Comparison prices | Original price + discount percentage per product |
| ๐ฃ Sponsored toggle | Keep or drop sponsored cards |
| ๐ Hard caps | Limit results in total and per section |
| ๐ก๏ธ Proxy fallback | Auto-escalates on block, then locks to the first tier that works |
| ๐ Two dataset views | Overview + Full Details, both with emoji column labels |
๐ฅ Input
{"queries": ["iPhone"],"startUrls": ["https://www.google.com/search?q=android&udm=28&tbs=vw:l"],"countryCode": "us","includeComparisonPrices": true,"includeExtraProductDetails": true,"includeSponsoredResults": true,"maxItems": 60,"maxItemsPerQuery": 60,"requestDelay": 1,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Field reference
queriesโ list of product search terms. Each query is scraped as its own section. Takes precedence overstartUrls.startUrlsโ list of ready-made Google Shopping result URLs (theudm=28/tbm=shoppages).countryCodeโ country used for Google'sglparameter and proxy geo. Applies to queries only.includeComparisonPricesโ include original price + discount percent (turns on extra details automatically).includeExtraProductDetailsโ include the product spec / sub-title line.includeSponsoredResultsโ keep sponsored product cards.maxItemsโ hard cap on total products pushed (leave empty for no limit).maxItemsPerQueryโ hard cap per query/URL.requestDelayโ polite base delay (seconds) between page requests; jitter is added automatically.proxyConfigurationโ Apify proxy editor. The actor decides the fallback ladder on its own; you do not need to change this.
๐ค Output
Each pushed dataset row:
{"productName": "Apple iPhone 17 Pro","productLink": "https://www.google.com/search?q=iPhone&tbs=vw:l&start=0&gl=US&hl=en&udm=28&sei=...#pvs=0&rank=1","price": "$62.45/mo","withoutDiscountPrice": "$62.45/mo","discountPercent": "","merchantName": "Apple","productCondition": "","reviewsScore": "4.5","reviewsCount": "13K","productImage": "https://encrypted-tbn...","positionOnSearchPage": 1,"productDetails": "","isSponsored": false,"productIds": { "cid": "461677229171638444", "gid": "...", "iid": "...", "oid": "...", "pid": "..." },"searchKeyword": "iPhone"}
The searchKeyword field tells you which query/section each product belongs to, so a single dataset cleanly separates results per section.
๐ How to use (Apify Console)
- Log in at https://console.apify.com โ Actors.
- Open this actor (
google-shopping-insights). - Add one or more Search Queries ๐ and/or Google Shopping URLs ๐.
- Pick a Country ๐ and tweak the data options and limits.
- Click Start.
- Watch the Logs tab โ every product is announced in real time.
- Open Storage โ Dataset to inspect the Overview and Full Details views.
- Export to JSON / CSV / Excel / XML / HTML.
๐ค Use via API
curl -X POST "https://api.apify.com/v2/acts/<USER>~google-shopping-insights/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{ "queries": ["iPhone"], "countryCode": "us", "maxItems": 60 }'
๐ก๏ธ Smart proxy fallback
DIRECT โโบ DATACENTER โโบ RESIDENTIAL (ร3 retries)
- The run starts without a proxy and requests Google directly.
- On a Google block (HTTP 403/429/503, captcha, "unusual traffic", empty body), the actor switches to DATACENTER.
- If that also blocks, it switches to RESIDENTIAL and retries up to 3 times with fresh residential sessions (escalating to a real headless browser render as a last resort).
- Once a tier succeeds, the actor locks to that tier for the rest of the run.
- Every transition is logged with a clear ๐ / ๐ / ๐ marker.
โญ Best use cases
- ๐ Price monitoring and competitive intelligence
- ๐ Building product / price-comparison datasets
- ๐ช Merchant and availability tracking
- ๐ค Feeding AI workflows that need fresh retail data
๐ฐ Pricing
Pay-per-result. Billed per product row pushed to the default dataset via Apify's synthetic apify-default-dataset-item event. No charge for failed runs, no fixed monthly fee. The Store page shows the live per-item price.
โ FAQ
Do I need a proxy? No. The actor tries direct first and only spins up paid proxies if Google blocks the direct request.
Why are some fields empty? Google does not render every chip (discount, condition, reviews) on every card. The parser falls back to structural selectors, but if Google omits the data there is nothing to recover.
Can I scrape multiple keywords at once? Yes โ add several Search Queries; each is scraped as its own section, tagged by searchKeyword.
โ๏ธ Legal & ethical
- Data is collected only from publicly available Google Shopping search results.
- You are responsible for compliance with GDPR / CCPA, anti-spam laws, and Google's Terms of Service.
- Respect target sites' rate limits and
robots.txt.
๐ฌ Support & feedback
Found a bug or want a new feature? Reach out via the Apify Console.