Track Google Shopping prices automatically: price drops and new listings as JSON
Google Shopping lists the same product across many stores. To track its prices, run Google Shopping Scraper on Apify on a schedule with Only new results turned on. Each run searches Google Shopping for your products, in any country, and returns only listings that are new or whose price changed since the last run, marked price_down, price_up or new, with the previous price. It costs $1 per 1,000 products returned, so watching a product search daily costs a few cents a month.
Open Google Shopping Scraper on Apify $1 per 1,000 products ($0.80 on Gold and above)
Step by step
- Create a free Apify account. Sign up at apify.com. The free plan's $5 monthly credit covers about 5,000 products.
- Add the products to watch. Open Google Shopping Scraper and add specific searches, such as the exact model name. Specific searches return the same listings from run to run, which is what you want for tracking.
- Turn on Only new results. Under Monitoring, switch on Only new results. Set the country whose stores and currency you want.
- Save it as a task and schedule it. Click Save as a new task, then Schedule it daily. The first run records every listing and its price; later runs return only changes.
- Get the changes. Send each run's rows to Google Sheets, Slack or a webhook from the Integrations tab. Every row has the store, price, previousPrice and change.
Do it from code
One run, only changes (cURL)
curl -X POST "https://api.apify.com/v2/acts/automationnation~google-shopping-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["sony wh-1000xm6"], "country": "us", "onlyNew": true}'
# Each row: title, store, price, currency, previousPrice, change ("price_down", "price_up" or "new"), productIdA daily price check, set up through the API (cURL)
# 1. Save the search as a task
curl -X POST "https://api.apify.com/v2/actor-tasks?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"actId": "LcedvMdHm27HxH43R", "name": "headphones-price-tracker", "input": {"queries": ["sony wh-1000xm6"], "country": "us", "onlyNew": true}}'
# 2. Run it every morning at 8:00 (TASK_ID is the id returned by step 1)
curl -X POST "https://api.apify.com/v2/schedules?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "headphones-price-daily", "cronExpression": "0 8 * * *", "timezone": "Europe/London", "isEnabled": true, "isExclusive": true, "actions": [{"type": "RUN_ACTOR_TASK", "actorTaskId": "TASK_ID"}]}'
From an AI assistant (MCP)
Add this MCP server URL to Claude, ChatGPT or Cursor and ask in plain English:
https://mcp.apify.com?tools=automationnation/google-shopping-scraper
Alternatives
Google Merchant Center's price competitiveness reports cover only the products you sell yourself. Keepa and CamelCamelCamel track Amazon prices only. Price-monitoring tools such as Prisync and Price2Spy watch the store pages you give them, on monthly plans. See the side-by-side comparison.
FAQ
Which prices does it see?
What Google Shopping shows for that search and country: each product card's offer and store, plus the original price and discount when there is one. A search returns about 50 products.
Will the same product come back every run?
Only when it's new or its price moved. Listings are remembered for 90 days.
How do I get alerts only for price drops?
Keep the rows where change is price_down, in Google Sheets, n8n, Make or your own code.
Can I track several countries?
Yes. Each country is its own search with its own history, in that country's currency.
Written by AutomationNation, the developer of Google Shopping Scraper. Prices checked October 2026.