A Google search results API returns the organic results for a query as structured rows — rank, page, title, link, displayed path, source, snippet, date and sitelinks — without a browser, a session or a parser on your side.
This is the cheapest collector in the catalogue for a reason worth understanding: Google's web results are answered on a stateless HTTP tier, and Bing and DuckDuckGo by a plain request. No headless browser is started at any point in the run. That is what makes $0.0004 per result possible, and it is why the same call scales to a keyword set of tens of thousands without the cost curve bending.
$0.0004 per delivered result, up to 100 results per run. Nothing delivered means nothing charged.
One POST carries the query, the engine, the country, the language and how many results you want. The collector runs the search from an exit in that country, walks result pages in order until it reaches max_results, and returns each organic result as a flat row.
Three things it takes off your hands:
rank and originating page both preserved, so you can rebuild pagination or ignore it.query is the only required input. engine picks Google, Bing or DuckDuckGo. country and lang together define the market — set both explicitly for anything you intend to compare over time. location goes finer, encoding a city-level origin for the search, which matters on any query with local intent. max_results caps delivery and therefore cost.
Each organic result is one row. rank is global across the run and page records where it came from, so a page-size change at Google's end does not corrupt a time series. display_link is the breadcrumb-style path Google renders rather than the raw URL, which is often what you want in a report. date is present only when Google shows one — treat its absence as absence of a published date rather than as a missing field. sitelinks carries the sub-links under a result, a useful brand-dominance signal.
$0.0004 per delivered result ($0.40 per 1,000). Nothing delivered means nothing charged, and the $2 monthly free credit covers roughly 5,000 results here. Volume tiers take up to 30% off.
$0.0004 per delivered result — 40 cents per 1,000. Tracking 2,000 keywords daily at 10 results each is 20,000 rows, so $8 a day at list price and less on a volume tier. Because billing is per delivered result rather than per search, a query that returns four results costs four units, not a full page.
Blocked pages, retries on fresh exits and queries that genuinely return nothing are never billed — which is the important distinction for rank tracking, where a zero-result query is a finding rather than a failure.
Google does publish a Custom Search JSON API, and it is the answer to a different question than most people asking for a search API have. It queries a Programmable Search Engine — an index you configure — rather than returning what google.com returns for a user in a country. Even configured to search the whole web, its results and ranking are not the public SERP, which makes it unsuitable for rank tracking and unreliable for competitive research.
The practical constraints reinforce that: a free daily quota measured in the low hundreds of queries, then per-thousand pricing, with a hard daily ceiling. It is built for adding site search to a product, not for collecting search data at dataset volume.
Search Console's API is worth mentioning too, because it is genuinely the right tool for one thing: your own site's impressions, clicks and average position. It cannot tell you anything about a competitor, or what the SERP looks like for a keyword you do not rank for.
Fetching a Google results page is a one-liner. Fetching a hundred thousand of them, from the right countries, without a browser, is a specialised job:
gl, hl and any location token all have to agree or you are measuring a market that does not exist.If you would rather own the fetch layer, the residential exits under this collector are available directly — that is the same trade, made the other way.
Daily positions for a keyword set, per country and per language, with global rank that stays comparable when Google changes page size.
Who owns the top ten for the queries you care about, how their titles and snippets are written, and which of them earn sitelinks.
Pair with the keyword ideas collector: expand a seed into real queries, then check who ranks for each one.
Ten fresh, dated, source-attributed results are a far better prompt context than a model's training cutoff. The flat schema drops straight into a retrieval step.
Up to 100 results per run with pagination merged internally. Deeper coverage is more runs; wider coverage is more queries, and both parallelise up to your plan's rate limit — 60 requests/minute on pay-as-you-go, up to 1,200 on the top tier. For very large keyword sets there is a bulk path that queues many queries at once rather than you managing concurrency by hand.
Legally: search results are publicly displayed and collecting public data is generally lawful in most jurisdictions, but Google's terms restrict automated access and the analysis differs by country. Snippets are third-party copyrighted text — store and display them accordingly. Not legal advice.
Google's Custom Search JSON API has a small free daily quota and then charges per thousand queries, but it searches a Programmable Search Engine rather than returning the public SERP. Here there is a free allowance of $2 a month with no card, which at $0.0004 per result is about 5,000 delivered results.
Not an official one that returns the public SERP. Custom Search queries a configured index, and Search Console reports on your own site only. Public results are collected by scraping them, which is what this collector does — from a real exit in the country you specify, without a browser.
$0.0004 per delivered result — 40 cents per 1,000 — with no subscription. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays. Blocked pages and retries are never billed.
No. You authenticate with your QuantumProxies key. There is no Google Cloud project, no Programmable Search Engine to configure and no per-project quota to raise.
Yes — up to 100 per run. Pages are fetched in order and merged, with each row keeping a global rank and the page it came from, so deep results stay comparable with shallow ones.
Yes. country sets both the proxy exit and Google's locale, and location goes to city level for queries with local intent. Setting them explicitly is what keeps a rank-tracking series meaningful.
Yes — engine switches between Google, Bing and DuckDuckGo, and all three return the same row shape, so comparing engines is a parameter change rather than a second integration.
Skip the marketing. QuantumProxies.io publishes a machine-readable site map, Markdown for every page, a free MCP server, and APIs billed from the same balance as your proxies.
Connect in one command: npx -y quantumproxies-mcp