Google Search: scrapers and the official API, compared
Organic results, knowledge panels, ads, related questions and SERP features.
Short answer
For most Google Search jobs, start with Search & URL Markdown Extractor for LLMs: it covers 2 of 5 core fields (title, url) at $0.99 per 1,000 results on Apify's Free plan. The top published score for Google Search goes to Cheapest Google Search Results (Fast and cheap SERP API) by lofomachines (91 of 100), a Store tool from another publisher, listed for reference.
From published Store listings, output schemas and the official documentation. Checked 2026-11-11. How the ranking works.Search & URL Markdown Extractor for LLMs: inputs, code and costOpen in Apify Store
What do you need from Google Search?
- Collect web content Search & URL Markdown Extractor for LLMs Only this one: description, wordCount, httpStatusCode 10,000 results: $10.30 on Free, incl. $0.40 start, plus Apify platform usage (compute)
- Find image sources Google Image Search Results & Metadata Scraper Only this one: retrievalMethod, isFallback, fallbackReason 10,000 results: $10.30 on Free, incl. $0.40 start, plus Apify platform usage (compute)
- Expand keyword lists Google Autocomplete Keyword Expansion Scraper Only this one: seed, locale, relevance 10,000 results: $10.30 on Free, incl. $0.40 start, plus Apify platform usage (compute)
- Collect search results Google Search Results Scraper: Organic & SERP Boxes Only this one: resultsTotal, organicResults, aiOverview 10,000 results: $10.30 on Free, incl. $0.40 start, plus Apify platform usage (compute)
Route map
Each line is one way to get Google Search data; each stop is a field you probably need. Green lines are catalogue Actors, ranked by the published formula.
- 1 Search & URL Markdown Extractor for LLMs 13 output fields, pay per event 2 of 5 core fields
$0.99 / 1K - 2 Google Image Search Results & Metadata Scraper 29 output fields, pay per event 3 of 5 core fields
$0.99 / 1K - 3 Google Autocomplete Keyword Expansion Scraper 7 output fields, pay per event 1 of 5 core fields
$0.99 / 1K - 4 Google Search Results Scraper: Organic & SERP Boxes 18 output fields, pay per event 0 of 5 core fields
$0.99 / 1K - + 7 other Store tools, combined Reference only 4 of 5 core fields
from $0.35 / 1K - API Programmable Search Engine JSON API Limited access fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Catalogue Actors for Google Search
Search & URL Markdown Extractor for LLMs
Turn a search query or a list of URLs into clean Markdown, plain text, or HTML pages, with filters for domain, keyword, and minimum content…
Google Image Search Results & Metadata Scraper
Run a Google Images search and get back full-resolution image URLs with dimensions, thumbnails, source page titles, and the web page each image…
Google Autocomplete Keyword Expansion Scraper
Expand seed keywords into long-tail suggestions using Google's autocomplete, with question-word, preposition, comparison, and A-to-Z expansion…
Which route for which job
The catalogue Actors for Google Search return different records. "Only this route" lists the published fields no other Actor in this table returns, which is usually what decides the choice. Cost is the published per-result rate; start events and platform usage are extra.
| Actor | Good for | Only this route | Core fields | 10K results |
|---|---|---|---|---|
| Search & URL Markdown Extractor for LLMs | Collect web content | description, wordCount, httpStatusCode, loadedTime, searchRank | 2/5 | $9.90 |
| Google Image Search Results & Metadata Scraper | Find image sources | retrievalMethod, isFallback, fallbackReason, imageId, isCrawlerOnly | 3/5 | $9.90 |
| Google Autocomplete Keyword Expansion Scraper | Expand keyword lists | seed, locale, relevance | 1/5 | $9.90 |
| Google Search Results Scraper: Organic & SERP Boxes | Collect search results | resultsTotal, organicResults, aiOverview, knowledgePanel, peopleAlsoAsk | 0/5 | $9.90 |
Field matrix: who returns what
Every tool with a published output schema, against the 5 fields most Google Search jobs need. A dot means the field name appears in the schema; rows can still leave it empty.
| Tool | title | url | snippet | position | serp features | Fields |
|---|---|---|---|---|---|---|
| Search & URL Markdown Extractor for LLMs | ● | ● | – | – | – | 2/5 |
| Google Image Search Results & Metadata Scraper | ● | ● | – | ● | – | 3/5 |
| Google Autocomplete Keyword Expansion Scraper | – | – | – | ● | – | 1/5 |
| Google Search Results Scraper: Organic & SERP Boxes | – | – | – | – | – | 0/5 |
| Cheapest Google Search Results (Fast and cheap SERP API)Reference only, by lofomachines | ● | ● | ● | ● | – | 4/5 |
| Free Google Search Results ScraperReference only, by s-r | ● | ● | ● | – | – | 3/5 |
| Google Search Results Scraper (SERP)Reference only, by apidojo | ● | ● | ● | – | – | 3/5 |
| Google Search Results ScraperReference only, by eiv | ● | ● | – | – | – | 2/5 |
| Google Search Results ScraperReference only, by thirdwatch | ● | ● | ● | ● | – | 4/5 |
| Google Search Results ScraperReference only, by alfalfa | – | ● | – | – | – | 1/5 |
| Google Search Results Scraper: SERP, Ads & AI OverviewReference only, by santamaria-automations | – | ● | ● | – | – | 2/5 |
| Tools returning it | 7 | 9 | 5 | 4 | 0 |
Field dictionary: the exact keys
The same core field has a different key in each Actor's output. Map these before you merge datasets; a dash means the published schema has no matching key. Need a field that is not listed here, such as email? Search every Google Search Actor by field.
| Core field | Search & URL Markdown… | Google Image Search Results… | Google Autocomplete Keyword… |
|---|---|---|---|
| title | title | title, siteName | – |
| url | url, canonicalUrl | contentUrl, googleUrl | – |
| snippet | – | – | – |
| position | – | position | position |
| serp features | – | – | – |
Download this comparison: CSV · JSON (every tool with a published schema, matching keys per core field, price and score).
All 13 tools, scored
Catalogue Actors link to their detail pages; the score (0 to 100) is the published formula, identical for every tool. Other Store tools follow in their own table, for reference. Price is the published primary-result rate per 1,000 (the Free-plan rate where the price is tiered; higher Apify plans pay less); start events and platform usage are excluded.
| Sample fields | ||||||
|---|---|---|---|---|---|---|
| 74 | Search & URL Markdown Extractor for LLMs Catalogue Actor, pay per event | title, url, description | 13 | $0.99 | 100% of 29 runs | Oct 2026 |
| 73 | Google Image Search Results & Metadata Scraper Catalogue Actor, pay per event | title, contentUrl, engine | 29 | $0.99 | 19 runs, too few to rate | Oct 2026 |
| 61 | Google Autocomplete Keyword Expansion Scraper Catalogue Actor, pay per event | seed, locale, relevance | 7 | $0.99 | 19 runs, too few to rate | Oct 2026 |
| 55 | Google Search Results Scraper: Organic & SERP Boxes Catalogue Actor, pay per event | resultsTotal, hasNextPage, organicResults | 18 | $0.99 | 18 runs, too few to rate | Oct 2026 |
Other Store tools, for reference
Scored with the same published formula and listed for comparison only; this site does not link or recommend them.
| Sample fields | ||||||
|---|---|---|---|---|---|---|
| 91 | Cheapest Google Search Results (Fast and cheap SERP API) Reference only, by lofomachines | title, url, snippet | 11 | $0.50 | 100% of 47,848 runs | Nov 2026 |
| 84 | Free Google Search Results Scraper Reference only, by s-r | title, url, snippet | 11 | $0.35 | 95% of 13,244 runs | Nov 2026 |
| 81 | Google Search Results Scraper (SERP) Reference only, by apidojo | title, link, snippet | 5 | $2.00 | 99% of 26,803 runs | Nov 2026 |
| 77 | Google Search Results Scraper Reference only, by eiv | knowledgeGraph, url, hasNextPage | 27 | $0.60 | 98% of 4,861 runs | Nov 2026 |
| 73 | Google Search Results Reference only, by scraperlink | No published schema | – | $0.50 | 100% of 4,533,748 runs | Sep 2026 |
| 68 | Google Search Results Scraper Reference only, by thirdwatch | title, url, featured_snippet | 7 | $8.00 | 94% of 81 runs | Oct 2026 |
| 68 | Google Search Results Scraper Reference only, by alfalfa | url, hasNextPage, resultsTotal | 11 | $0.45 | 74% of 96,800 runs | Oct 2026 |
| 65 | Google Search Results Scraper Reference only, by apify | No published schema | – | $4.50 | 98% of 9,693,040 runs | Nov 2026 |
| 63 | Google Search Results Scraper: SERP, Ads & AI Overview Reference only, by santamaria-automations | kvsHtmlUrl, featuredSnippet, resultsTotal | 14 | $6.00 | 96% | Oct 2026 |
What to check before you choose
Search teams use Google results to track visible pages, study competing content and identify questions around a topic. Research teams use destination links to build reading lists and collect source material.
Choose a results collector for rankings and search features, an autocomplete tool for phrase discovery, or a page extractor for destination content. The programmable search API suits a configured search engine rather than reproducing the live Google results page.
Checklist
- Verify the query, country and pagination controls, and keep that context with every ranking dataset.
- Check whether the schema contains full result groups such as organicResults and peopleAlsoAsk or only image records, suggestions or destination-page metadata.
- For image results, inspect engine, retrievalMethod, isFallback and fallbackReason before attributing rows to Google.
Where the data is incomplete
The published data does not define the nested fields inside organicResults, so confirm their structure before mapping individual results.
The leading tool's detailed schema is absent from the published data. The image tool also documents fallback results from another engine, which need to be distinguished from Google results when measuring search visibility.
Official API route
Programmable Search Engine JSON API
Google's programmable search API returns results for a configured search engine. It is not a general replacement for the live Google results page.
Price. Free allowance plus per-query pricing is published; check the official overview for current rates and caps.
Limits. Daily query caps apply. The API requires a search engine ID and API key.
Terms and personal data
Collect ranking data from public pages and follow Google's terms. Check the conditions for storing and reusing result snippets and destination content. This is general information, not legal advice.
Read Google Search's terms. Keep to public data, do not bypass logins or access controls, and check whether personal data is involved before you collect it. The can-I-scrape checklist walks through it.
How to start
- Open the recommended Google Search tool and check its documented query inputs. Choose a narrow query and record any supported country or language settings.
- Collect a small dataset and inspect how it represents result positions, destination links and search features. Confirm the producing engine wherever the output identifies it.
- Save the dataset with its query settings and collection time. Preserve result groups and position information when preparing the first analysis.
Call Search & URL Markdown Extractor for LLMs from code
The example input uses the Actor's published defaults; set your own Google Search query before you run it. You need an Apify API token.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"query": "what is retrieval augmented generation",
"queries": [],
"startUrls": [],
"searchEngine": "auto",
"searchLanguage": "auto",
"searchCountry": "auto",
"maxResults": 3,
"maxItems": 0,
"outputFormats": [
"markdown"
],
"removeElementsCssSelector": "nav, footer, aside, script, style, .ad, .advertisement, [aria-hidden='True']",
"keepElementsCssSelector": [],
"htmlTransformer": "readable-text",
"maxContentLength": 0,
"includeMetadata": True,
"chunkMarkdown": False,
"chunkMaxChars": 2000,
"chunkOverlapChars": 200,
"maxCrawlDepth": 0,
"maxCrawlPages": 25,
"domainAllowlist": [],
"domainBlocklist": [],
"excludeContentSelectors": [],
"keywordsAnyOf": [],
"emitFailedResults": False
}
run = client.actor("vexaloom-labs/rag-web-browser").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"query": "what is retrieval augmented generation",
"queries": [],
"startUrls": [],
"searchEngine": "auto",
"searchLanguage": "auto",
"searchCountry": "auto",
"maxResults": 3,
"maxItems": 0,
"outputFormats": [
"markdown"
],
"removeElementsCssSelector": "nav, footer, aside, script, style, .ad, .advertisement, [aria-hidden='true']",
"keepElementsCssSelector": [],
"htmlTransformer": "readable-text",
"maxContentLength": 0,
"includeMetadata": true,
"chunkMarkdown": false,
"chunkMaxChars": 2000,
"chunkOverlapChars": 200,
"maxCrawlDepth": 0,
"maxCrawlPages": 25,
"domainAllowlist": [],
"domainBlocklist": [],
"excludeContentSelectors": [],
"keywordsAnyOf": [],
"emitFailedResults": false
};
const run = await client.actor("vexaloom-labs/rag-web-browser").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/vexaloom-labs~rag-web-browser/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"query":"what is retrieval augmented generation","queries":[],"startUrls":[],"searchEngine":"auto","searchLanguage":"auto","searchCountry":"auto","maxResults":3,"maxItems":0,"outputFormats":["markdown"],"removeElementsCssSelector":"nav, footer, aside, script, style, .ad, .advertisement, [aria-hidden='''true''']","keepElementsCssSelector":[],"htmlTransformer":"readable-text","maxContentLength":0,"includeMetadata":true,"chunkMarkdown":false,"chunkMaxChars":2000,"chunkOverlapChars":200,"maxCrawlDepth":0,"maxCrawlPages":25,"domainAllowlist":[],"domainBlocklist":[],"excludeContentSelectors":[],"keywordsAnyOf":[],"emitFailedResults":false}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=vexaloom-labs/rag-web-browser",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
Questions people ask
Will the programmable search API reproduce the live results page?
The published data describes it as returning results for a configured search engine rather than replacing the live Google results page. Check that distinction before using its output for ranking or search-feature monitoring.
Are autocomplete suggestions evidence of search volume?
The autocomplete schema lists keyword, seed, position, locale, relevance and source without a search-volume field. Use the output for phrase discovery rather than treating suggestion order as a measured volume.
How can image results from another engine be identified?
The image tool provides engine and isFallback, with retrievalMethod and fallbackReason describing how the row was obtained. Preserve those fields when separating Google image results from fallback records.
Does a page extractor preserve the whole search results page?
The listed page extractor provides destination-page metadata such as canonicalUrl, author and httpStatusCode alongside searchRank. Use a results collector with documented search-feature output when you need boxes, panels or related questions.
What is the cheapest catalogue Actor for Google Search data?
Search & URL Markdown Extractor for LLMs lists $0.99 per 1,000 results (pay per event), with 13 fields in its published output schema. Start events and platform usage are billed separately. Checked 2026-11-11.
Which Google Search scraper returns the most core fields?
Google Image Search Results & Metadata Scraper covers 3 of the 5 core Google Search fields this page tracks (title, url, snippet, position, serp features), based on its published output schema.
Does Google Search have an official API?
Limited access: Google's programmable search API returns results for a configured search engine. It is not a general replacement for the live Google results page. Free allowance plus per-query pricing is published; check the official overview for current rates and caps.
Is it legal to scrape Google Search?
It depends on what you collect and how. Collect ranking data from public pages and follow Google's terms. Check the conditions for storing and reusing result snippets and destination content. Read Google Search's terms (https://policies.google.com/terms) before you collect, and check whether personal data is involved. This is general information, not legal advice.
More on Google Search
- Official API pricingGoogle Custom Search JSON API: 100 free queries a day, ends 2027
- AlternativesSerpApi alternatives after Google's December 2025 lawsuit
- Topic groupLocal business data: every website compared
- ToolWhich Google Search route fits your job?
- ToolGoogle Search cost by Apify plan, rows and runs
Related websites
Sources
- Search & URL Markdown Extractor for LLMs on Apify Store
- Google Image Search Results & Metadata Scraper on Apify Store
- Google Autocomplete Keyword Expansion Scraper on Apify Store
- Google Search Results Scraper: Organic & SERP Boxes on Apify Store
- Programmable Search Engine JSON API documentation
- Programmable Search Engine JSON API pricing
- Google Search terms
Cite this page
Scraper Finder. "How to get Google Search data." https://scraperfinder.com/sites/google-search/ (data checked 2026-11-11).
Highest-scoring catalogue Actor
Search & URL Markdown Extractor for LLMs: 2 of 5 core fields, $0.99 per 1,000 results, score 74. The highest score overall is 91 (Cheapest Google Search Results (Fast and cheap SERP API), a Store tool from another publisher); both are in the table above.