Google SERP Scraper
Pricing
$0.15 / 1,000 serp results
Google SERP Scraper
Scrape Google organic search results by query, country, language, and page range. Get clean SERP data including position, title, URL, and description, with pay-per-result pricing and no browser required.
Pricing
$0.15 / 1,000 serp results
Rating
0.0
(0)
Developer
DataScraperES
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Extract structured Google organic search results for one or more queries, countries, languages, and page ranges.
The Actor returns one dataset item per organic result with its query, page, position, title, URL, and description. When Google provides People Also Ask data, it can also return an additional helper record for that page.
Use cases
- SEO rank tracking by query and market.
- Competitor and search-result analysis.
- Content, topic, and lead research.
- Monitoring organic result changes.
- Building structured SERP datasets for downstream workflows.
Pricing
This Actor uses pay-per-event pricing.
| Event | What is charged | Price |
|---|---|---|
serp-result | One organic Google result published to the dataset | $0.15 / 1,000 results |
Equivalent price: $0.00015 per organic result. Failed pages and People Also Ask helper records are not charged as serp-result events.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
queries | string[] | Yes | none | Search queries, one per line. Maximum: 1,000. |
startPage | integer | No | 1 | First Google results page. |
endPage | integer | No | 1 | Last page, from 1 to 10 and not lower than startPage. |
language | string | No | es | Two-letter Google search language used as hl. |
country | string | No | es | Two-letter country used as gl and for proxy geolocation. |
concurrency | integer | No | 1 | Pages processed in parallel, from 1 to 3. Use 1 for maximum stability. |
debug | boolean | No | false | Adds detailed retry diagnostics to the run log. |
Example input
{"queries": ["best web hosting 2026", "seo tools for beginners"],"startPage": 1,"endPage": 2,"language": "en","country": "us","concurrency": 1}
Output
Each organic result is stored as a separate dataset item:
{"query": "best web hosting 2026","page": 1,"position": 1,"title": "Best Web Hosting 2026 - Full Comparison","url": "https://example.com/best-web-hosting/","description": "Snippet text shown in Google results."}
People Also Ask may be stored as one additional, uncharged helper item:
{"query": "best web hosting 2026","page": 1,"type": "people_also_ask","people_also_ask": [{"question": "What is the best hosting provider?","answer": "Short answer extracted from Google.","source_title": "Example source","source_url": "https://example.com/"}]}
Run summary
The default Key-Value Store contains a SUMMARY record with page, result, recovery, resume, and spending-limit counters. The Actor output object links directly to both the dataset and this summary.
Reliability
- Retries rate limits, blocked responses, timeouts, degraded HTML, and empty parses.
- Rotates request identities and proxy URLs between attempts.
- Runs a slower recovery pass for pages that fail initially.
- Persists completed and partially published pages across migrations or restarts.
- Checks the run spending limit before starting paid SERP work.
- Stops cleanly when no more paid results can be published.
Notes
- Users do not need to configure proxies; network routing is managed by the Actor.
- The selected
countryis applied to search localization and managed network routing. - Ads, shopping boxes, maps, local packs, and knowledge panels are not included in organic output.
- Google markup and results can change, so positions and snippets may differ between runs.
- Some results may not contain a description.
- Use output responsibly and comply with applicable laws, regulations, and website terms.
