Google SERP Scraper
Pricing
$0.60 / 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.60 / 1,000 serp results
Rating
0.0
(0)
Developer
DataScraperES
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
6 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.
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.60 / 1,000 results |
Equivalent price: $0.0006 per organic result. Failed pages are not charged as serp-result events.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
queries | string[] | Yes | none | Search queries, one per line. Maximum: 10,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 | Preferred language for the search results. |
country | string | No | es | Target country used to localize the search results. |
Example input
{"queries": ["best web hosting 2026", "seo tools for beginners"],"startPage": 1,"endPage": 2,"language": "en","country": "us"}
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."}
Run summary
The default Key-Value Store contains a SUMMARY record with the final run status, requested, successful, failed, and remaining pages, total results, selected country and language, and whether the spending limit stopped the run. The Actor output object links directly to both the dataset and this summary.
Capacity and run limits
- A run accepts up to 10,000 queries and pages 1–10.
- The selected query/page combinations are capped at 10,000 Google result pages. This supports, for example, 10,000 queries on page 1, 5,000 queries on pages 1–2, or 1,000 queries on pages 1–10.
- With up to 10 organic results per page, the maximum paid output is 100,000 organic results.
- The Actor checks the Apify spending limit before each paid page and stops when no further paid result can be delivered.
Reliability
- Retries rate limits, blocked responses, timeouts, malformed responses, and empty parses.
- 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
- The selected
countrylocalizes the search market; it is not a strict filter, so some international results can still appear. - 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.
- Deep pages may contain fewer than 10 results when Google has exhausted the available result set.
- Use output responsibly and comply with applicable laws, regulations, and website terms.