# Google Autocomplete Scraper - Keyword Suggestions (`cirkit/google-autocomplete-scraper`) Actor

Scrape Google autocomplete keyword suggestions from Google Search, YouTube and Google Shopping. Get long-tail keywords, questions and modifiers with Google's relevance score, position and suggestion type for every phrase, across any country and language.

- **URL**: https://apify.com/cirkit/google-autocomplete-scraper.md
- **Developed by:** [Crikit](https://apify.com/cirkit) (community)
- **Categories:** SEO tools, Marketing
- **Stats:** 4 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$0.40 / 1,000 keyword suggestions

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What is Google Autocomplete Scraper?

**Google Autocomplete Scraper** extracts keyword suggestions from the Google search box, the YouTube search box and the Google Shopping search box. Give it a seed keyword such as "running shoes" and it returns hundreds of real long-tail searches people type, each with **Google's own relevance score**, its position in the dropdown, and the exact query that surfaced it.

Autocomplete is Google telling you what people search for, in their own words, right now. It is the fastest free source of long-tail keywords, content ideas, FAQ questions and product research there is.

- 🔎 **Hundreds of keywords from one seed.** Alphabet expansion (a to z, 0 to 9) turns Google's 15 suggestions into 300 to 500 unique long-tail phrases
- ❓ **Questions people actually ask**, from how, what, why, can, is and seven more question words, ready for FAQ pages and blog outlines
- ⚖️ **Comparisons and buyer intent** from modifiers like "vs", "for", "near", "best" and "cheap"
- 📺 **Three autocompletes in one actor:** Google Search, YouTube and Google Shopping, each deduped on its own
- 📊 **Google's relevance score on every row**, so you can rank suggestions the way Google does instead of guessing
- 🌍 **Any country and language**, including non-Latin scripts such as Japanese, Arabic and Hindi
- 🔁 **Recursive expansion** that feeds each suggestion back in to dig deeper into a niche
- ⚡ **Fast and cheap.** Plain HTTP requests, no browser, no login, no Google API key. 500 keywords in about 10 seconds

### What data does Google Autocomplete Scraper extract?

Every run writes one row per unique suggestion.

| Field | Example |
|---|---|
| `suggestion` | how crm software works |
| `keyword` | crm software |
| `source` | google, youtube or shopping |
| `relevance` | 1250 (Google's relevance score, higher is stronger) |
| `position` | 1 (rank in the dropdown) |
| `matchedQuery` | how crm software (the query that surfaced it) |
| `expansionType` | seed, question, modifier, alphabet or recursive |
| `expansionToken` | how |
| `depth` | 0 for direct expansions, 1 to 3 for recursive ones |
| `wordCount` / `characterCount` | 4 / 22 |
| `isQuestion` | true |
| `containsKeyword` | true when every word of the seed is in the suggestion |
| `suggestionType` / `subtypes` | QUERY / \[512] (Google's internal type codes) |
| `country` / `language` | us / en |
| `scrapedAt` | 2026-10-05T13:10:09.650Z |

The dataset also has a ready **Questions** view that keeps only the question-shaped suggestions.

### How to scrape Google autocomplete suggestions

1. Open **Google Autocomplete Scraper** and click **Try for free**.
2. Add one or more **Seed keywords**, for example "running shoes" or "crm software".
3. Pick the **Autocomplete sources**: Google Search, YouTube, Google Shopping, or all three.
4. Leave **Alphabet expansion** on for volume. Turn on **Question expansion** and **Modifier expansion** for content and buyer intent research.
5. Set the **Country** and **Language** of the market you are researching.
6. Click **Start**. Results appear live in the **Output** tab.
7. Export as JSON, CSV, Excel or XML, or pull them from the [Apify API](https://docs.apify.com/api/v2).

### Input example

```json
{
    "keywords": ["crm software"],
    "sources": ["google", "youtube"],
    "expandAlphabet": true,
    "expandQuestions": true,
    "expandModifiers": false,
    "depth": 0,
    "country": "us",
    "language": "en",
    "maxSuggestionsPerKeyword": 500
}
```

### Output example

```json
{
    "keyword": "crm software",
    "source": "google",
    "suggestion": "how crm software works",
    "position": 1,
    "relevance": 1250,
    "suggestionType": "QUERY",
    "subtypes": [512],
    "description": null,
    "matchedQuery": "how crm software",
    "expansionType": "question",
    "expansionToken": "how",
    "depth": 0,
    "wordCount": 4,
    "characterCount": 22,
    "isQuestion": true,
    "containsKeyword": true,
    "country": "us",
    "language": "en",
    "scrapedAt": "2026-10-05T13:10:09.650Z",
    "noResults": false,
    "notice": null
}
```

A few more real suggestions for "crm software": *crm software for small businesses*, *crm software for real estate*, *which crm software is best*, *how much crm software cost*, *what crm software does verizon use*.

### How many keywords can I get?

Google shows up to 15 suggestions per query. With alphabet expansion one seed keyword typically yields **300 to 500 unique suggestions** per source. Question and modifier expansion add up to about 150 more. Recursive depth 1 multiplies that roughly tenfold, and depth 2 or 3 goes further still, so set **Max suggestions per keyword** to keep big runs bounded.

Suggestions are deduped within each keyword and source, so you never pay twice for the same phrase from the same autocomplete.

### How much does it cost to scrape Google autocomplete?

Google Autocomplete Scraper uses pay per result pricing: **$0.40 per 1,000 keyword suggestions**, with no monthly rental and no start fee. You only pay for unique suggestions written to your dataset.

| Run | Rows | Cost |
|---|---|---|
| 1 keyword, Google Search, alphabet expansion | about 500 | about $0.20 |
| 10 keywords, Google Search, alphabet and questions | about 5,500 | about $2.20 |
| 1 keyword, Google, YouTube and Shopping | about 1,500 | about $0.60 |

Every Apify account includes free monthly usage credit, so you can try it at no cost. Set **Max suggestions in total** to cap what a run can spend.

### Use cases

- **SEO keyword research:** build long-tail keyword lists and topic clusters around a seed term
- **Content planning:** pull the questions people ask for blog posts, FAQ pages and "People also ask" style sections
- **YouTube SEO:** find what viewers type into YouTube search before you title and tag a video
- **Ecommerce and Amazon style product research:** Google Shopping suggestions show the product attributes, sizes and brands buyers search for
- **PPC and paid search:** discover modifiers and comparisons ("vs", "cheap", "near me") for ad groups and negative keywords
- **Brand monitoring:** see what Google suggests next to your brand or a competitor's, in every market you sell in
- **Trend spotting:** schedule a daily run and diff the results to catch new searches as they appear

### Integrations

Connect Google Autocomplete Scraper to Google Sheets, Airtable, Slack, Zapier, Make, n8n or your own code through [Apify integrations](https://apify.com/integrations), or call it from Python or JavaScript with the Apify API client. Schedule it to track how suggestions change over time.

### FAQ

#### Is it legal to scrape Google autocomplete?

Google Autocomplete Scraper reads the same public suggestions anyone sees when typing into Google, YouTube or Google Shopping. It does not log in, use cookies or access anything behind an account, and suggestions contain no personal data. As with any data source, check that your use complies with the terms and laws that apply to you, and consult a lawyer if you are unsure.

#### How much does it cost?

$0.40 per 1,000 unique suggestions, billed per result. A keyword that returns nothing writes one notice row explaining why, billed as a single result ($0.0004).

#### Do I need a Google account, cookies or an API key?

No. The actor needs nothing from you but keywords. It runs on Apify Proxy, which is included with every Apify account.

#### What does the relevance score mean?

It is the score Google itself attaches to each suggestion when it builds the dropdown. The top suggestion usually scores 1250 or more, and the rest step down from about 600. Use it to rank suggestions within a query, or to spot the completions Google is most confident about.

#### Why do some suggestions not contain my keyword?

Google sometimes suggests a related phrasing, a singular form or a spelling correction ("running shoe" for "running shoes"). The `containsKeyword` field marks these so you can filter them out or keep them as related keywords.

#### Can I get suggestions for other countries and languages?

Yes. Set **Country** to a two letter code such as gb, de, in or br, and **Language** to the language of your keywords, such as de, es, ja or hi. Suggestions come back in their original script.

#### Does it include search volume?

No. Autocomplete shows what people search, not how often. Pair the output with a search volume tool, or use the relevance score and position as a free proxy for popularity.

#### Why did my run stop before the cap?

Each keyword has a natural ceiling: once every expansion query has been asked, there is nothing new to return. Turn on question and modifier expansion, or set **Recursive depth** to 1, to go deeper.

# Actor input Schema

## `keywords` (type: `array`):

Keywords to expand, one per line, for example "running shoes" or "crm software". Each keyword is expanded separately and its suggestions are deduped.

## `sources` (type: `array`):

Which autocomplete to read. Google Search is the classic search box, YouTube is the YouTube search box, and Google Shopping is the product search box. Each source is billed and deduped on its own.

## `expandAlphabet` (type: `boolean`):

Also query the keyword followed by each letter and digit ("running shoes a", "running shoes b" and so on). Turns 15 suggestions into several hundred long-tail keywords.

## `expandQuestions` (type: `boolean`):

Also query question words in front of the keyword (how, what, why, when, where, who, which, can, is, are, does, will, should). Surfaces the questions people ask, for FAQ and content planning.

## `expandModifiers` (type: `boolean`):

Also query common modifiers: "keyword for", "with", "without", "vs", "near", "to", "like", "and", "or", plus "best", "cheap", "free" and "top" in front. Surfaces comparisons, use cases and buyer intent.

## `depth` (type: `integer`):

Feed every new suggestion back into autocomplete this many times. 0 reads only the expansions above. 1 also expands each suggestion found, which multiplies results (and cost) roughly tenfold, so pair it with a per keyword cap.

## `country` (type: `string`):

Two letter country code Google tailors suggestions to, for example us, gb, de, in or br.

## `language` (type: `string`):

Two letter language code for the suggestions, for example en, de, es, fr or ja. Match it to the language of your keywords.

## `maxSuggestionsPerKeyword` (type: `integer`):

Upper limit of unique suggestions for each keyword and source. Alphabet expansion alone yields about 300 to 450 per keyword.

## `maxItems` (type: `integer`):

Hard cap on rows across every keyword and source, and therefore on what the run can cost. Leave empty for no cap.

## `proxyConfiguration` (type: `object`):

Apify Proxy is used by default and works with the standard datacenter pool. You normally do not need to change this.

## Actor input object example

```json
{
  "keywords": [
    "running shoes"
  ],
  "sources": [
    "google"
  ],
  "expandAlphabet": true,
  "expandQuestions": false,
  "expandModifiers": false,
  "depth": 0,
  "country": "us",
  "language": "en",
  "maxSuggestionsPerKeyword": 500,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

Every unique autocomplete suggestion found, one row per suggestion, with relevance score, position, source and the query that surfaced it.

## `resultsCsv` (type: `string`):

The same suggestions as a downloadable CSV file.

## `questions` (type: `string`):

Suggestions phrased as questions, for FAQ pages and content planning.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "running shoes"
    ],
    "sources": [
        "google"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("cirkit/google-autocomplete-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "keywords": ["running shoes"],
    "sources": ["google"],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("cirkit/google-autocomplete-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "running shoes"
  ],
  "sources": [
    "google"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call cirkit/google-autocomplete-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,cirkit/google-autocomplete-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/1FSL5DVfcnZca4MMQ/builds/RtrMnhpaaDaYz7zv1/openapi.json
