Google Shopping Results Scraper avatar

Google Shopping Results Scraper

Pricing

from $0.23 / 1,000 item extracteds

Go to Apify Store
Google Shopping Results Scraper

Google Shopping Results Scraper

Extract Google Shopping product results by keyword, country, language, price range, and max item count for price and merchant research.

Pricing

from $0.23 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Extract product cards from Google Shopping search results by keyword, country, language, and optional price range.

Use this actor to monitor product prices, compare sellers, find marketplace positioning, and export structured shopping data without copying result pages by hand.

At a glance

  • Best for: product price monitoring, merchant comparison, category research, paid-shopping snapshots, and ecommerce reporting.
  • Inputs: product queries, country, language, result limit, optional price filters, and proxy settings.
  • Outputs: one row per saved Google Shopping product card with title, price, merchant, rating, review count, shipping text, source URL, and timestamp.
  • Exports: download CSV, JSON, Excel, XML, RSS, or use the Apify Dataset API.
  • Cost: $0.005 per run plus the item event for each saved product card.

Ready-to-run examples

Use these saved Store examples as starting points. Open any example to prefill the Actor input, then adjust URLs, keywords, limits, or filters for your own run.

What can it do?

Google Shopping Results Scraper searches Google Shopping for your product keywords and saves visible product result cards as a clean dataset.

CapabilityWhat it does
Search productsRun one Google Shopping query or a list of queries in the same job.
Target localeSet country and language to compare localized shopping results.
Export product cardsSave titles, prices, merchants, ratings, review counts, shipping snippets, source URLs, and timestamps.
Filter pricesOptionally keep only products inside a minimum or maximum price range.
Control spendCap maxItems to keep test runs small and predictable.

Who is it for?

  • Ecommerce teams: track how products appear in Google Shopping and compare visible offers.
  • Price intelligence teams: monitor merchant prices, advertised pricing, and offer changes.
  • Marketplace analysts: review ranking and seller coverage for product categories.
  • Agencies: collect shopping snapshots for client reporting.
  • Product managers: research comparable products before launch.
  • SEO and paid-shopping specialists: understand competitive Shopping result pages by query and region.

Why use this actor?

  • Google Shopping pages are built for browsing, not spreadsheet exports.
  • The actor converts result cards into flat JSON records.
  • Each item is easy to export to CSV, Excel, Google Sheets, BigQuery, Snowflake, or your own API.
  • Query and timestamp metadata make repeated runs easier to compare over time.
  • The actor is designed for low-volume monitoring and research workflows.

Output fields

FieldDescription
querySearch term that produced the item
positionResult position in the saved output
productTitleProduct title
priceTextDisplayed price text
priceValueNumeric price when available
currencyCurrency inferred from the displayed symbol
merchantMerchant or seller snippet
productUrlProduct link when available from the result markup
imageUrlProduct image URL when available
ratingStar rating
reviewCountNumber of reviews
shippingDelivery or shipping snippet
sourceUrlGoogle Shopping page URL used for extraction
scrapedAtTime the result was saved

Output example

{
"query": "coffee maker",
"position": 1,
"productTitle": "Keurig K-Classic Coffee Maker K-Cup Pod Single Serve",
"priceText": "$129.99",
"priceValue": 129.99,
"currency": "USD",
"merchant": "Keurig.com",
"productUrl": null,
"imageUrl": null,
"rating": 4.3,
"reviewCount": 9700,
"shipping": "Free delivery by Thu",
"sourceUrl": "http://www.google.com/search?tbm=shop&udm=28&q=coffee+maker&hl=en&gl=US&num=100",
"scrapedAt": "2026-06-30T10:00:00.000Z"
}

Pricing

This actor uses pay-per-event pricing.

A small $0.005 start event is charged once per run, and an item event is charged for each saved Google Shopping product card.

Current BRONZE pricing is $0.00037886 per saved product card, about $0.38 per 1,000 saved items, with lower per-item prices on higher Apify tiers.

Only saved product cards are charged as item events. For a typical 20-result research run, cost stays low because only saved results are charged.

Use a low maxItems value when testing a new query list.

How to use

  1. Open the actor on Apify.
  2. Add one or more shopping queries.
  3. Choose a country code such as US, GB, CA, AU, or DE.
  4. Choose a language code such as en, es, de, or fr.
  5. Set maxItems to the number of products you want.
  6. Optionally add minPrice or maxPrice.
  7. Keep proxy enabled for best reliability.
  8. Start the run.
  9. Download the dataset as JSON, CSV, Excel, XML, or RSS.

Input configuration

SettingJSON keyWhat it does
Shopping queriesqueriesProduct names, category phrases, SKUs, model numbers, or comparison keywords such as coffee maker, running shoes, or 4k monitor.
Maximum resultsmaxItemsTotal saved product cards across all queries. If you enter 3 queries and set maxItems to 60, the run stops after 60 total records.
CountrycountryTwo-letter country code such as US, GB, CA, AU, or DE. Google Shopping availability and ranking vary by region.
LanguagelanguageGoogle interface language for snippets, such as en, es, de, or fr.
Minimum priceminPriceOptional post-extraction filter that keeps products at or above this numeric price.
Maximum pricemaxPriceOptional post-extraction filter that keeps products at or below this numeric price.
Proxy configurationproxyConfigurationOptional proxy settings. Google may return interstitial or rate-limit pages without a suitable proxy on larger runs.

Tips for better results

  • Use specific product keywords: model names and SKU-like phrases work better for merchant-level price comparison.
  • Use category keywords for landscape research: broader phrases are useful when you want a market overview.
  • Start small: test a few queries before scheduling larger recurring jobs.
  • Keep batches focused: compare one region and product type at a time.
  • Use timestamps: compare the same query over days or weeks.
  • Avoid vague one-word terms: they often return mixed products that are harder to analyze.

Common workflows

  • Price monitoring: schedule the same query every day and compare priceValue by title and merchant.
  • Competitive research: run category terms and review which brands and stores appear most often.
  • Assortment discovery: search model names and collect alternative sellers or similar products.
  • Agency reporting: export CSV files for client dashboards and shopping landscape reports.
  • Product launch research: compare titles, ratings, review counts, and shipping offers for adjacent products.

Integrations

  • Google Sheets: review product cards manually or share quick reports.
  • BigQuery or Snowflake: store long-term price intelligence and category snapshots.
  • Make or Zapier: create no-code scheduled alerts.
  • Apify webhooks: notify your app when a run finishes.
  • Apify API: trigger runs from internal dashboards.
  • CSV exports: support spreadsheet-based reporting.

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/google-shopping-results-scraper').call({
queries: ['coffee maker'],
country: 'US',
language: 'en',
maxItems: 20
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('fetch_cat/google-shopping-results-scraper').call(run_input={
'queries': ['coffee maker'],
'country': 'US',
'language': 'en',
'maxItems': 20,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/fetch_cat~google-shopping-results-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"queries":["coffee maker"],"country":"US","language":"en","maxItems":20}'

MCP and AI agents

You can connect this actor to AI tools through the official Apify MCP server.

Use the MCP server URL with the actor tool enabled:

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

Add it in Claude Code:

$claude mcp add apify-google-shopping "https://mcp.apify.com?tools=fetch_cat/google-shopping-results-scraper"

Or configure an MCP client with JSON:

{
"mcpServers": {
"apify-google-shopping": {
"url": "https://mcp.apify.com?tools=fetch_cat/google-shopping-results-scraper"
}
}
}

The default Apify MCP server can search and run Actors. The focused URL exposes only this Actor to clients that support tool-scoped MCP connections.

Example prompts:

  • "Search Google Shopping for coffee makers in the US and summarize price ranges."
  • "Compare merchants for running shoes and list products with ratings above 4.5."
  • "Find the first 20 Google Shopping results for wireless mouse and export titles and prices."

Scheduling

Use Apify schedules for recurring price snapshots.

Daily runs are useful for fast-changing categories.

Weekly runs are often enough for market landscape reports.

Keep maxItems aligned with the number of products you actually review.

Data quality notes

Google Shopping layouts and snippets can vary by country, language, query, and time.

Some cards may not expose every field.

productUrl and imageUrl can be null when Google renders those values through an interactive viewer instead of a direct visible link.

The actor saves fields only when they are visible or parseable from the result card.

Troubleshooting

Why did my run return no results?

Check that the query has Google Shopping results in the selected country.

Try a lower maxItems value.

Keep proxy enabled.

If Google returns an interstitial, wait and retry with a smaller batch.

Why are some fields null?

Google does not show every field on every card.

For example, some results do not show ratings, reviews, shipping, images, or direct product links.

Why do prices differ by location?

Google Shopping ranking and merchant availability are localized.

Use the same country and language values when comparing repeated runs.

Limits

This actor is intended for public Google Shopping result cards.

It does not log in to Google.

It does not open merchant checkout pages.

It does not scrape private account data.

It does not guarantee identical output for every locale because Google changes layouts frequently.

Legality

This actor extracts publicly visible search-result information.

You are responsible for using the data lawfully and respecting applicable terms, privacy rules, and platform policies.

Do not use scraped data for prohibited, deceptive, or privacy-invasive purposes.

Consult legal counsel if your use case has regulatory requirements.

Explore related actors from fetch_cat for ecommerce, search, and product intelligence workflows:

FAQ

Can I scrape multiple keywords in one run?

Yes. Add multiple values to queries and set a total maxItems cap.

Can I target another country?

Yes. Set country to a two-letter code such as GB, CA, AU, or DE.

Can I filter by price?

Yes. Use minPrice and maxPrice to filter extracted results after the page is parsed.

Can I schedule monitoring?

Yes. Use Apify schedules and export each run's dataset for trend analysis.

Does it scrape product detail pages?

No. Version 0.1 focuses on result cards because they are the safest and fastest unit for search monitoring.

What happens if Google changes the page?

The actor includes defensive parsing and clear failure messages. If the layout changes significantly, rerun with a small query and report the issue.

Changelog

  • 2026-07-02 - Change: Fixed German Google Shopping example runs to return localized product results (APIA-1163)

  • 2026-07-02 - Feature: Added ready-to-run Google Shopping example tasks on the Apify Store (APIA-1154)

  • 2026-07-02 - Feature: Launched Google Shopping Results Scraper on Apify Store (APIA-1151)

0.1

Initial version for Google Shopping keyword result extraction.

Support

If a run fails, returns no data, or a field looks wrong, open an issue from the Actor page.

Please include the Apify run ID or run URL, input JSON, one example public URL, query, or input item, what you expected, and what the dataset returned. Small reproducible inputs make parsing or site-layout issues much faster to fix.