Google Search Results Scraper — Organic avatar

Google Search Results Scraper — Organic

Pricing

from $3.50 / 1,000 results

Go to Apify Store
Google Search Results Scraper — Organic

Google Search Results Scraper — Organic

Scrape Google SERPs by keyword or URL. Extract organic results, paid ads, AI Mode answers, People Also Ask, related queries & product ads. No API key needed.

Pricing

from $3.50 / 1,000 results

Rating

0.0

(0)

Developer

Randeep Dhillon

Randeep Dhillon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Google Search Results Scraper — Organic, Paid, AI Mode & People Also Ask

Extract structured data from Google Search results pages (SERPs) by keyword or URL. This Google SERP scraper API returns organic results, paid ads, AI Mode summaries, People Also Ask, related queries, and product ads — no API key or Google account required.


What This Actor Does

The Google Search Results Scraper crawls Google Search Results Pages (SERPs) and extracts every data block on the page. Input a list of search terms or raw Google URLs and get back clean, structured JSON you can export to CSV, Excel, or feed into your pipeline.

Supported data blocks:

BlockDescription
🌱 Organic resultsTitle, URL, description, position, emphasized keywords, site links
🛍 Paid resultsAd copy, display URL, ad position
🤖 AI Mode / AI OverviewFull AI-generated answer text + cited sources
❓ People Also AskQuestion + answer + source URL
🔍 Related queriesSuggested search terms + Google search URLs
📢 Product adsProduct title, price, rating, review count, image URL
⭐ Review ratingsStar rating and review count where present

Use Cases

  • SEO monitoring — track your site's rank for target keywords over time
  • Competitor analysis — monitor which pages rank above yours and why
  • Keyword research — collect related queries and PAA questions at scale
  • Ad intelligence — capture competitor paid ads copy and positioning
  • AEO / GEO tracking — monitor AI Overview and AI Mode summaries for brand visibility
  • Content gap analysis — identify what topics dominate the top 10 for your niche
  • Lead generation — build URL lists from keyword searches for downstream scraping

Input

FieldTypeDefaultDescription
queriesarray["hotels in Seattle"]Search terms or full Google URLs, one per line
countryCodestringusGoogle domain country (e.g. us, gb, de)
languageCodestringenLanguage of search results
maxPagesPerQueryinteger1Pages to scrape per query (1–10, ~10 results each)
resultsPerPageinteger10Results per page: 10, 20, 50, or 100
mobileResultsbooleanfalseReturn mobile SERP results instead of desktop
includeUnfilteredResultsbooleanfalseInclude omitted/filtered results
saveHtmlbooleanfalseSave raw HTML of each SERP page to key-value store

Scraping by search term

{
"queries": ["latest crm tool", "best project management software"],
"countryCode": "us",
"languageCode": "en",
"maxPagesPerQuery": 2,
"resultsPerPage": 10,
"mobileResults": false
}

Scraping by URL

Replace search terms with full Google URLs:

{
"queries": [
"https://www.google.com/search?q=hotels+in+Seattle",
"https://www.google.co.uk/search?q=best+crm+software"
]
}

Tip: To get ~100 results per query, set maxPagesPerQuery to 10. The actor navigates 10 pages collecting ~10 results each.


Output

One dataset record per SERP page. Here is a sample record:

{
"searchQuery": {
"term": "latest crm tool",
"device": "DESKTOP",
"page": 1,
"type": "SEARCH",
"domain": "google.com",
"countryCode": "US",
"languageCode": "en",
"url": "https://www.google.com/search?q=latest+crm+tool&num=10&gl=us&hl=en&start=0"
},
"organicResults": [
{
"position": 1,
"title": "Best CRM Software: User Reviews from May 2026",
"url": "https://www.g2.com/categories/crm",
"displayedUrl": "https://www.g2.com › Sales Tools",
"description": "G2's top-rated CRM systems include Salesforce Sales Cloud, HubSpot Sales Hub, ActiveCampaign, ClickUp, and Close.",
"date": "Apr 20, 2026",
"emphasizedKeywords": ["Salesforce Sales Cloud"],
"siteLinks": [],
"type": "organic"
}
],
"paidResults": [],
"paidProducts": [],
"relatedQueries": [
{
"title": "best crm for small business",
"url": "https://www.google.com/search?q=best+crm+for+small+business"
}
],
"peopleAlsoAsk": [
{
"question": "What is the most popular CRM tool?",
"answer": "Salesforce is the most widely used CRM globally...",
"url": "https://www.salesforce.com/..."
}
],
"aiModeResult": {
"text": "The leading CRM tools in 2026 include Salesforce, HubSpot, Zoho CRM, and Pipedrive...",
"sources": [
{
"title": "Best CRM Software 2026",
"url": "https://www.g2.com/categories/crm",
"description": "G2's top-rated CRM systems..."
}
]
},
"resultsTotal": null
}

Get one result per row

Select the Organic results or Paid results export view in the Apify Console to spread each result into a separate row. Via API, append &view=organic_results or &view=paid_results to your dataset URL.


Export Formats

  • JSON — full nested structure, ideal for pipelines and APIs
  • CSV / Excel — flat organic or paid results view, one row per result
  • HTML — rendered SERP snapshot saved to key-value store (enable saveHtml)

Export via the Apify Console, Python SDK, Node.js SDK, API endpoint, or webhook.


Pricing

This actor uses Pay Per Event (PPE) pricing — you pay only for what you extract.

EventPrice
Per organic result$0.003
Per paid result$0.003
Actor startincluded

Example: Scraping 10 keywords × 1 page × 10 results = 100 results = $0.30


How to Use

In the Apify Console

  1. Go to the actor page and click Try for free
  2. Enter your search terms under Queries, one per line
  3. Set your country, language, and page depth
  4. Click Start — results appear in the Output tab

Via API (Node.js)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('YOUR_ACTOR_ID').call({
queries: ['best crm software', 'salesforce alternatives'],
countryCode: 'us',
maxPagesPerQuery: 3,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Via API (Python)

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("YOUR_ACTOR_ID").call(run_input={
"queries": ["best crm software", "salesforce alternatives"],
"countryCode": "us",
"maxPagesPerQuery": 3,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

Notes & Limitations

  • Results vary by IP location, browsing history, and browser fingerprint. The actor uses rotating proxies to mitigate this.
  • Google's SERP structure changes frequently. If a data block stops appearing, open an issue — updates are released promptly.
  • resultsTotal is returned as null — Google no longer reliably exposes the total result count in HTML.
  • AI Mode and AI Overview availability depends on query type and Google's rollout. Not all queries trigger these blocks.
  • For very high-volume scraping (100k+ results/day), contact us to discuss a custom plan.

Frequently Asked Questions

Do I need a Google API key? No. This actor scrapes the public Google Search HTML — no API key or Google account required.

How do I scrape Google in a specific country? Set countryCode to the two-letter country code (e.g. gb for UK, de for Germany). The actor routes requests through proxies in that country and uses the matching Google domain.

Can I scrape Google Images or Google News? This actor is focused on the main web search SERP. For Images or News results, use a dedicated actor or pass a raw URL with the tbm=isch or tbm=nws parameter — basic fields will still be extracted.

How do I get 100 results per keyword? Set maxPagesPerQuery to 10 and resultsPerPage to 10. The actor will crawl pages 1–10, collecting ~10 results each.

Is the output compatible with Google's own Search API? The field structure mirrors common SERP API conventions. Fields like position, title, url, description, and displayedUrl map directly to their equivalents in most SEO tools.


  • Google Maps Scraper — extract business listings, reviews, and contact info
  • Google Shopping Scraper — product prices, ratings, and merchant data
  • Bing Search Scraper — same workflow for Bing SERPs
  • Perplexity AI Search Scraper — AI-native search results for AEO tracking

Support

Found a bug or need a custom field? Open an issue on the actor page or email support. Typical response within 24 hours.