Google Keyword Research Scraper

Export localized public Google keyword ideas with seed, query, locale, source, and rank provenance for SEO research and content planning.

Data fields

FieldTypeDescription
keywordstringValue exported as keyword.
seedKeywordstringValue exported as seedKeyword.
countrystringValue exported as country.
languagestringValue exported as language.
sourcestringValue exported as source.
queryVariantstringValue exported as queryVariant.
sourceRankintegerValue exported as sourceRank.

Input preview

keywordsSeed keywords *
countryCountry
languageLanguage
maxResultsMaximum keyword ideas
expandAlphabetExpand with alphabet

API and agents

This actor can be run through Apify API, datasets, webhooks, schedules, and the official Apify MCP server.

Ready-to-run examples

Open a saved Apify example, adjust the input, and run the actor in your own Apify account.

View all examples

How this actor works

See example inputs, outputs, API usage, and practical limits before running this actor on Apify.

Open Apify page

Use this Google keyword scraper to generate public keyword ideas from seed topics and export them as structured JSON, CSV, or Excel. It is a focused keyword research tool for long-tail discovery, localized content planning, and keyword-list expansion without a Google Ads login. It does not claim to provide Google keyword volume.

Example input

{
  "keywords": ["running shoes"],
  "country": "us",
  "language": "en",
  "maxResults": 20,
  "expandAlphabet": true
}

Example output

{
  "keyword": "running shoes for women",
  "seedKeyword": "running shoes",
  "country": "us",
  "language": "en",
  "source": "Google Autocomplete",
  "queryVariant": "running shoes",
  "sourceRank": 1
}

What data it exports

Field Description
keyword Public keyword suggestion
seedKeyword Original input seed
country Requested two-letter country code
language Requested two-letter language code
source Public source provenance
queryVariant Exact seed expansion that produced the suggestion
sourceRank Position in the source response

This Actor does not invent search volume, CPC, competition, or difficulty. Those metrics are not available from the anonymous public suggestion source and are therefore not advertised or returned.

Input settings

Setting Description Default
keywords One to 20 seed topics required
country Two-letter country code us
language Two-letter language code en
maxResults Unique ideas to save (1–500) 50
expandAlphabet Expand each seed with a–z variants true

Who is it for?

This Actor is for SEO specialists, content teams, ecommerce marketers, agencies, and developers who need a repeatable way to turn seed topics into exportable public keyword ideas.

Use cases

  • Build long-tail topic lists for editorial planning
  • Compare suggestions across countries and languages
  • Discover phrasing for category pages, FAQs, and ads
  • Feed keyword ideas into spreadsheets, warehouses, or downstream SEO tools

Tips and limits

  • Use one focused seed at a time when you want the maximum number of ideas for that topic.
  • Disable alphabet expansion for a faster, narrower result set.
  • Suggestions reflect the public source at run time and can vary by locale and over time.
  • A source rate limit can produce partial output; already saved ideas are preserved.

API usage

cURL

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~google-keywords-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"keywords":["running shoes"],"country":"us","language":"en","maxResults":20}'

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/google-keywords-scraper').call({
  keywords: ['running shoes'], country: 'us', language: 'en', maxResults: 20,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('fetch_cat/google-keywords-scraper').call(run_input={
    'keywords': ['running shoes'], 'country': 'us', 'language': 'en', 'maxResults': 20,
})
items = client.dataset(run['defaultDatasetId']).list_items().items

Use the completed run's dataset ID to download JSON, JSONL, CSV, or Excel.

MCP and agents

Connect through Apify MCP so an AI agent can generate keyword lists as part of a research workflow.

claude mcp add apify --transport http "https://mcp.apify.com/?tools=fetch_cat/google-keywords-scraper"

Or add this server configuration to an MCP-compatible client:

{
  "mcpServers": {
    "apify": {"url": "https://mcp.apify.com/?tools=fetch_cat/google-keywords-scraper"}
  }
}

Example prompts:

  • “Generate 50 public keyword ideas for sustainable running shoes in the US.”
  • “Compare public suggestion phrasing for email marketing in the US and UK.”

Support

Open an issue from the Actor's Issues tab with the input (excluding secrets), expected behavior, and run ID. We will investigate reproducible source or parsing problems.

Common questions

Questions and answers reused from the canonical actor README.

Does it return monthly search volume or CPC?

No. The anonymous public suggestion source does not expose those values. The Actor returns only source-backed keyword ideas and provenance.

Can I research multiple seeds?

Yes. Submit up to 20 seeds in keywords; the output identifies the originating seed for every idea.

Are duplicates removed?

Yes. Duplicate suggestions are removed within each country/language run.

What data can I export with Google keyword scraper?

You can export each public suggestion with its seed keyword, country, language, source, exact query variant, and source rank.

Can I run Google Keyword Research Scraper through an API, schedule, or MCP client?

Yes. Use the Apify API example above, create a schedule in Apify Console, or connect the Actor through Apify MCP.