Google Search Scraper
Pricing
from $1.19 / 1,000 results
Google Search Scraper
Scrapes Google search results by query, returning title, URL, snippet, position, and domain.
Pricing
from $1.19 / 1,000 results
Rating
0.0
(0)
Developer
Anyx Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share

Google Search Scraper
Turn Google searches into clean, structured JSON results.
Give this scraper a list of search queries and it returns Google's organic results as structured data: title, URL, snippet, position, and domain. It follows pagination to collect as many results as you ask for, resolves Google's redirect links to the real destination, and can also capture the "People also ask" questions and "Related searches" shown alongside each query. It suits SERP tracking, market and competitor research, source discovery, and feeding search results into AI and data pipelines.
⚡ Quick start
{"queries": ["openai funding round", "apple acquisition"],"maxItems": 10}
🧩 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
queries | array | no* | — | Search terms to look up. One entry per query. |
startUrls | array | no | — | Google search URLs to scrape directly, e.g. https://www.google.com/search?q=example. Use instead of queries for full control of search parameters. |
maxItems | integer | no | 10 | Maximum results per query. Additional pages are collected by pagination. |
maxPagesPerQuery | integer | no | 5 | How many result pages to walk per query before stopping, even if maxItems is not reached. |
countryCode | string | no | us | Two-letter country code localising results, e.g. us, gb. |
languageCode | string | no | en | Two-letter interface language code, e.g. en. |
includeExpansions | boolean | no | true | Also collect "People also ask" and "Related searches", saved to the key-value store under SEARCH_EXPANSIONS. |
proxyConfiguration | object | no | {"useApifyProxy":true,"apifyProxyGroups":["GOOGLE_SERP"]} | Proxy settings. Google blocks ordinary traffic, so Apify's Google SERP proxy group is the default. |
* Provide either queries or startUrls.
📤 Output
Each organic result becomes one dataset item, in Google's own ranking order recorded in position. Redirect links are resolved so url is always the real destination. Google's own links (Maps, Images, other searches) and duplicate sitelinks are filtered out. Fields a result does not provide are returned as null rather than omitted.
Fields
| Field | Type | Description |
|---|---|---|
query | string | The search query that produced this result. |
url | string | Destination URL, with any Google redirect resolved. |
title | string | Result title. |
snippet | string | Result description shown by Google. |
position | number | Rank across all pages for this query, starting at 1. |
page | number | Results page this result came from. |
displayedUrl | string | Breadcrumb-style URL Google displays. null on rich results, where Google prints a byline instead. |
domain | string | Domain of the destination URL, without www.. |
publishedAt | string | Publication date as YYYY-MM-DD, read from the date Google prefixes the snippet with. null when Google shows none. |
searchEngine | string | Always google. Lets results share a shape with other search scrapers. |
fetchedAt | string | When the search was run, ISO 8601. |
Related searches and questions
When includeExpansions is on, each query's "People also ask" and "Related searches" are written to the run's key-value store under SEARCH_EXPANSIONS, keyed by query:
{"openai funding round": {"peopleAlsoAsk": ["How much did OpenAI raise?", "Who invested in OpenAI?"],"relatedQueries": ["openai valuation", "openai investors list"]}}
💡 Use cases
- Track how a brand, product, or competitor ranks on Google over time.
- Discover the sources and coverage for a company or topic, then fetch the pages behind them.
- Expand a research topic using the real "People also ask" and "Related searches" Google surfaces.
- Feed fresh, cited search results into AI and LLM pipelines.
- Compare Google rankings across countries and languages.
❓ FAQ
- Do I need a proxy? Yes. Google blocks ordinary datacenter and residential traffic, so this scraper runs through Apify's Google SERP proxy group by default. Turning the proxy off will block every request.
- How many results can I get? As many as you set in
maxItems; the scraper paginates until it reaches that number, exhausts Google's results, or hitsmaxPagesPerQuery. A Google page holds around 8–10 organic results — rich blocks crowd out the rest — so more than that costs another page. Deep result pages are lower quality, as on Google itself. - Can I target a country or language? Yes. Set
countryCodeandlanguageCode— they are passed to Google asglandhl. - What happens if Google blocks a request or shows a captcha? The scraper retires that session and retries on a fresh one. If every attempt is blocked it fails with a clear error rather than reporting zero results, so a block is never mistaken for "nothing found".
- Why is
publishedAtoften null? Google only shows a date for some results, mainly news and articles. For a reliable date, fetch the page itself.
🔗 More scrapers by Anyx
🤝 Anyx Solutions
We build custom scrapers and data-extraction pipelines.
- Email: tantosthor@gmail.com