Google Shopping Price Comparison & Deal Finder
Pricing
from $0.49 / 1,000 results
Google Shopping Price Comparison & Deal Finder
Search Google Shopping by keyword and collect product prices, discounts, merchant names, ratings, and delivery info across 48 countries for price monitoring and deal tracking.
Pricing
from $0.49 / 1,000 results
Rating
0.0
(0)
Developer
vexaloom-labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 hours ago
Last modified
Categories
Share
Collect real Google Shopping data for price comparison and deal monitoring. Search by keyword, open a known product by its Google Shopping ID or viewer URL, browse a department, or pull current deals across 48 countries.
Search records use the actual product ID (data-pid) and a viewer link built from the catalog or product ID Google returns. Product-mode records carry the numeric ID used in the lookup and a working viewer link. Product records add seller offers with shipping and totals, a price range, specifications, images, variants, and the 12-month per-seller price history when Google exposes it.
Modes
| Mode | What it does | Main input |
|---|---|---|
| search | Keyword search across Google Shopping results | queries |
| product | Opens the product viewer for one or more products | productIds |
| deals | Searches Google's deals view | queries (optional; defaults to deals) |
| category | Browses one of 15 Google Shopping departments | category |
What you get
Every record
query,position,recordType,scrapedAttitle,price(display) andpriceValue(number)originalPrice,originalPriceValue,discountPercentwhen discountedcurrency— the currency Google actually served, never relabelled from the requested countrymerchant,merchantUrl,sellerDomainrating,reviewCount,ratingValue,reviewCountValuedelivery,shipping,availability,condition,returnsimageUrl,imageUrlsisSponsored(true only when a sponsored label is visible)productId— realdata-pidon search/deals/category rows; in product mode it is the ID used in the viewer lookup (a catalog ID when the input is a viewer URL).catalogIdis the realdata-cidwhen Google exposes it.productUrl— a real Google Shopping viewer URLsearchUrl,hasMoreOffers,badge
Product records and enriched search results
brand,description,images,specifications,variantsofferCountandoffers— seller, seller ID, direct seller URL, domain, price, currency, original price, discount, shipping, delivery, total, availability, returns, store rating and review count, badge, best-price flaglowestPrice,highestPrice,priceRange,typicalPriceRangepriceHistory— per-seller daily points with ISO datesdiscussions— forum links about the product (not review text)dealFlags
Empty fields are omitted at every depth.
Inputs
| Field | Default | Description |
|---|---|---|
| --- | --- | |
mode | search | search (default), product, deals or category |
queries | – | Keywords for search/deals. Optional in category mode |
productIds | – | Catalog IDs, product IDs, viewer URLs or legacy product URLs for product mode |
category | – | One of 15 departments (Electronics, Computers, Cell Phones, ...) |
countryCode | us | 48 countries; sets the Google domain and location hint |
languageCode | en | Result language |
sortBy | – | Relevance, rating, price low-to-high or high-to-low; applied to the collected rows |
condition | – | Any, new, used or refurbished |
minPrice / maxPrice | – | Price range in the requested market's currency; rows outside the numeric bounds are dropped. If Google serves another currency, a filtered run can return no rows. |
onSale | false | Keep products with an observed original price or discount |
freeShipping | false | Keep products whose delivery text says free |
minRating | 0 | 0–5; keeps products at or above the rating |
store | – | Optional store name to bias and verify |
maxResultsPerQuery | 20 | 1–200 records per query (or products in product mode) |
includePriceHistory | true | Include the 12-month history when Google exposes it |
includeProductDetails | false | Open the product viewer for each search result (one extra request per result) |
Examples
Search for one product and include details and history:
{"mode": "search","queries": ["iPhone 15 Pro Max"],"maxResultsPerQuery": 5,"countryCode": "us","includeProductDetails": true,"includePriceHistory": true}
Look up products by ID or viewer URL:
{"mode": "product","productIds": ["10694224367759637585", "https://www.google.com/search?q=x&ibp=oshop&prds=productid:2457150560515047758,pvt:a"],"countryCode": "ca","includePriceHistory": true}
Price-filtered, free-shipping deals:
{"mode": "deals","queries": ["wireless earbuds"],"minPrice": 20,"maxPrice": 100,"freeShipping": true,"sortBy": "price_low","countryCode": "uk"}
Browse a department:
{"mode": "category","category": "electronics","maxResultsPerQuery": 40,"countryCode": "de"}
Coverage and honest limits
- Up to five offers per product. Google's product viewer renders at most five offers over the public HTTP path (some products show fewer);
offerCountoften reports many more (209 in sampling). The remaining offers are not available without a browser identity. - About 127 products per query. Search pages start at 0, 10, 50 and 90; later starts return no products. Split a broad query into narrower queries to collect more.
- No product review text. Google does not expose product review bodies on this path. Ratings and review counts from search cards and store ratings on offers are included;
discussionscontains forum links only. - Localization is best effort. A country plus location hint usually returns the right market, but Google can serve another exit's currency. The actor retries once, then reports the actual
currencyand logs the mismatch. It never relabels one currency as another. - Filtered runs can be empty on a currency mismatch. Price bounds use the requested market's currency (for example USD for
countryCode: us). If Google serves another currency, a max-price or on-sale filter can exclude every row; the run then reports the served currency and fails with "No records scraped" instead of relabelling. - Sorting is client-side. Google's server-side sort chip is not honored on this page. The actor sorts the rows it actually collected.
- Filters are verified after collection. Price bounds, rating, store, sale and free-shipping checks are re-applied to every row. A condition is checked when the card shows one; many cards omit it.
- Display price can differ from the numeric offer price. A seller card can show a list price in
pricewhilepriceValuecarries the best price Google reports (one sampled EarFun offer displayed$89.99withpriceValue51.29). UsepriceValue,shippingValueandtotalPricefor comparisons. - Sponsored detection is not a classifier.
isSponsoredis true only when Google visibly labels a card as sponsored. Organic ads can appear without that label. - Some fields are source-dependent. Brand, description, price history and typical price are present only when Google exposes them for that product. They are omitted rather than guessed.
Practical use
- Price monitoring: run product mode on a fixed list of IDs and compare
priceValue,totalPriceandpriceHistoryover time. - Deal scanning: use deals mode with
onSale, a price range andsortBy: price_low. - Market research: search a category with
sortBy: review_scoreand compare merchants, availability and shipping. - Catalog enrichment: search with
includeProductDetailsto attach brand, images, specs and offers to keyword results.
FAQ
Do I need cookies, a login or a proxy setup? No. The actor reads public Google Shopping pages and handles its own access. There are no user credentials, cookies or proxy fields.
Can I get every seller offer? No. Up to five offers per product is a hard limit of the public product viewer; the total count is returned so you know how many exist.
Why is a field missing on some records? Google does not show every field on every card or product. Missing values are omitted; the actor does not fill them with guesses or sentinels.
Why does the currency differ from the country I chose? Google's market routing is not guaranteed. The actor detects the served currency, retries once with the location hint, and reports the actual result rather than assuming.
Can I sort by price? Yes — the actor sorts the collected rows by price or rating. The order is deterministic but reflects the rows collected, not Google's full index.
Does this return product review text? No. Review text is not available on this path.
Is this affiliated with Google? No. It is an independent third-party tool that reads publicly available Google Shopping pages.