Google Shopping Scraper and Price Tracker avatar

Google Shopping Scraper and Price Tracker

Pricing

from $1.20 / 1,000 products

Go to Apify Store
Google Shopping Scraper and Price Tracker

Google Shopping Scraper and Price Tracker

Scrape Google Shopping prices by product name, model or barcode: price, original price, store, condition, delivery, rating and reviews. Compare each store's price and track only price changes on a schedule. No login. $1.50 per 1,000 products plus $6 per 1,000 searches. Maintained by CleanScrape.

Pricing

from $1.20 / 1,000 products

Rating

0.0

(0)

Developer

CleanScrape

CleanScrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Security

Limited permissions

Share

A Google Shopping scraper and price tracker: search any product by name, model number or barcode and export the results to a spreadsheet, with price, original price and discount, store, condition, delivery, returns, rating and review count. Turn on Compare stores to open Google's product page and get every store's price for the same product, with stock, delivery, returns and a direct link to the store. Schedule it with Only new products and price changes and each run gives you only what changed.

$1.50 per 1,000 products, $6 per 1,000 searches, and $7 per 1,000 product pages for store comparison. No login or API key is needed.

This Actor reads Google Shopping result pages. It is not affiliated with Google and is not an official API.

Watch the walkthrough

The same Sony headphones go in, and five stores come out, from $199.99 to $349.99. This 68-second demo on real runs shows one search with 40 products, each store's price for a product, Google's typical price, four countries and price tracking.

Start with a small run

The form opens with one product, sony wh-1000xm5, in the United States. Start it as it is, or replace it with your own products.

  1. Enter Products to search, one per line: a name, a model number or a barcode (EAN/UPC).
  2. Pick the Country. Prices come in that country's currency.
  3. Start the run. Open Products for the listings and Searches for the lowest, median and highest price per product.
  4. Download any table as CSV, Excel or JSON.

On 5 November 2026 this run saved 40 products in about 20 seconds.

Choose a ready-to-run example

ExampleWhat you get
Compare store prices for a product on Google ShoppingThe Sony WH-1000XM5 in the US with each store's price, stock, returns and link for the top 5 products
Track Google Shopping prices every daySchedule it daily: three products, saving only price changes after the first run
Google Shopping prices in the UKThree products on Google Shopping UK, 40 listings each, prices in pounds
Look up a product by barcode (UPC or EAN)A UPC barcode to its listings, with each store's price for the matching product
Used and refurbished prices on Google ShoppingOnly pre-owned, used and refurbished iPhone 15 Pro listings
You enterThe Actor searches
sony wh-1000xm5, lego 10316Google Shopping for those words
027242923782A barcode (UPC or EAN), which usually finds the exact product
A Google Shopping results linkThe same search, with the filters you set on Google (price range, brand, store and so on)
A Google Shopping product linkThat product's page directly: every store's price goes to the Stores table

Several products can go in one box, one per line. Repeated entries are searched once, and the run says so.

Compare stores

Google Shopping shows one store per product in its results, and notes when more stores sell it. With Compare stores on, the Actor opens Google's product page for the top products of each search (Products to compare stores for, default 5) and saves each store listed there to the Stores table:

FieldExample
store, price, currencyBest Buy, 199.99, USD
originalPrice, discountPercent398, 49
availability, delivery, returnsIn stock online, Free delivery by Sat, 15-day returns
storeRating, bestPrice4.6, true
storeUrlThe product on the store's own website
typicalPriceLow, typicalPriceHighGoogle's typical price range, such as 199 to 300, when Google shows one

Products that Google sells at several stores are compared first; a single marketplace listing has only one store to show.

Price tracking

Turn on Only new products and price changes, give it a Tracking name (optional), and schedule the run, for example daily. Each run then saves a product only when:

  • it wasn't seen before for that search (Google's listing ID, so each marketplace seller counts on its own), or
  • its price changed since the last run (previousPrice and priceChange show by how much). Moves under 0.5%, and exchange-rate moves on sellers abroad whose own price stayed the same, don't count as changes.

Google rotates marketplace listings (eBay, Poshmark and similar sellers) between runs, so the first few tracking runs of a search still find listings they haven't seen. Turn on Skip new listings to save only price changes after the first run, which saves everything as the starting point.

The Searches table still gets a row for every search, with lowestPrice, previousLowestPrice and lowestPriceChange, so you can follow the trend even when nothing changed. With Compare stores on, a tracking run opens product pages only for products that are new or changed. The history is kept for 60 days in your own Apify account.

Output

Products (one row per product listing):

FieldExample
title, positionSony WH-1000XM5 Wireless Noise Canceling Headphones, 1
price, currency224.99, USD
originalPrice, originalPriceType, discountPercent398, was, 43
store, moreStoresBest Buy, true
conditionpre-owned, used or refurbished when Google marks it; empty means no label (usually new)
delivery, returnsFree delivery, Free 30-day returns
rating, reviewCount4.6, 13000
badges, foreignPriceLow price; the seller's own price when it sells from abroad, such as €28
productId, offerId, productUrlGoogle's IDs and a link to the product on Google Shopping
isNew, previousPrice, priceChangeWith tracking

Searches (one row per search): productsFound, rowsSaved, lowestPrice, medianPrice, highestPrice, currency, cheapestTitle, cheapestStore, status and note. With tracking, also previousLowestPrice and lowestPriceChange.

The run report (SUMMARY in the key-value store) counts searches with products, without products and failed.

Countries

United States, United Kingdom, Canada, Australia, New Zealand, Ireland, Germany, Austria, Switzerland, France, Belgium, Netherlands, Spain, Italy, Portugal, Sweden, Denmark, Norway, Finland, Poland, Czechia, India, Japan, Singapore, Malaysia, Philippines, Brazil, Mexico, South Africa, United Arab Emirates, Saudi Arabia and Turkey. Results come from that country's Google Shopping in its currency; product titles stay in the store's own language.

Use it from the API

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("cleanscrape/google-shopping-scraper").call(run_input={
"queries": ["sony wh-1000xm5", "lego 10316"],
"country": "us",
"compareStores": True,
"storesForTopProducts": 3,
})
for p in client.dataset(run["defaultDatasetId"]).iterate_items():
print(p["title"], p["price"], p["currency"], p["store"])
# The Stores and Searches tables are the run's other datasets:
stores = client.dataset(run["storageIds"]["datasets"]["stores"]).list_items().items
searches = client.dataset(run["storageIds"]["datasets"]["searches"]).list_items().items

Pricing

$1.50 per 1,000 products saved, $6 per 1,000 searches and $7 per 1,000 product pages opened for store comparison. Bronze, Silver and Gold plans get 10%, 15% and 20% off. No start fee, and no charge for Apify platform usage.

  • One product search with 40 results: about $0.066.
  • The same with store prices for 5 products: about $0.10.
  • Tracking 20 products once a day for a month, with a few price changes a day: about $3.80.

A search counts when Google Shopping answers it, including an answer with no products. Searches and product pages that fail are free, so are product pages where Google shows "Details aren't available", and an unchanged product on a tracking run isn't saved or charged.

Speed and limits

  • About 5 to 20 seconds per search, up to 6 searches at a time: 94 searches took about 6 minutes in tests.
  • Google Shopping shows about 40 products per search. Products per search (default 40) can save fewer.
  • Google's product pages list the stores Google shows there, usually 1 to 5. Store links are included when the page has them.
  • Up to 1,000 searches per run.
  • Now and then Google answers a search as if from another country (prices in another currency). The Actor notices, asks again, and never charges for such a page; a search that keeps coming back from abroad is marked failed and is free.

Use it from an AI agent

This Actor works as a tool in Claude, Cursor and other AI assistants that support MCP, through Apify's MCP server. Add this server and sign in with your Apify account when asked:

https://mcp.apify.com?tools=cleanscrape/google-shopping-scraper

Then ask in plain words, for example: "Find the cheapest new Sony WH-1000XM5 on Google Shopping in the UK and list each store's price." The assistant runs the Actor in your Apify account and reads the results. The price per result is the same as in Console.

Common questions

Is this the Google Shopping API?

No. Google's Content API is for merchants managing their own products and doesn't return other stores' prices. This Actor reads the same Google Shopping pages a browser shows.

Can I export to Excel or CSV?

Yes. Open the run's Products, Stores or Searches table and choose Export: CSV, Excel, JSON and more.

How much does it cost?

$1.50 per 1,000 products plus $6 per 1,000 searches; one search with 40 products costs about seven cents. See Pricing above.

Do I need a Google account or a proxy?

No. The Actor needs no login, cookies or API key, and you don't set up a proxy: Google pages are fetched through Apify Proxy, which is included in the price.

Why is a price different on the store's website?

Google Shopping shows the price the store sent to Google, which can lag behind the store's own page or depend on the visitor's location. Delivery costs are shown only when Google lists them.

Why are some products used or refurbished?

Google Shopping mixes new and second-hand listings. Use Condition to keep only new or only used items, or filter on the condition column.

The Actor reads publicly available product listings, with no login. You're responsible for how you use the data and for following the laws and terms that apply to you. If unsure, ask a lawyer.

Support

Questions or a problem? Open an issue on the Issues tab or write to contact.cleanscrape@gmail.com with the run ID and the search. Never include API tokens or private data.

If the Actor was useful, an honest review on its Store page helps other people find it.

CleanScrape is independent and not affiliated with, endorsed by, or sponsored by Google. Google and Google Shopping are trademarks of Google LLC. Product names, prices and listings belong to the stores and are shown as Google Shopping displays them.

More tools from CleanScrape