# Keyword Research API - Google, YouTube & Amazon Ideas (`sndzcc/keyword-ideas-machine`) Actor

Keyword research tool: turn one keyword into hundreds of long-tail keyword ideas from Google, YouTube, Amazon, Bing and DuckDuckGo autocomplete, in any country and language. With intent and score.

- **URL**: https://apify.com/sndzcc/keyword-ideas-machine.md
- **Developed by:** [Sndz Data](https://apify.com/sndzcc) (community)
- **Categories:** SEO tools, Marketing
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 keyword ideas

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

## Keyword Research API: Google, YouTube & Amazon Ideas

Type one keyword, get **hundreds of real searches** people make, collected from the autocomplete of **Google, YouTube, Amazon, Bing and DuckDuckGo** at the same time, in **any country and language**.

Every idea comes with a **popularity score**, its **search intent** (question, commercial, comparison, local, informational) and **which engines suggested it**. Ideas suggested by all five engines are the safest bets.

### Why this one?

- **Five engines in one run.** Web searches (Google, Bing, DuckDuckGo), video searches (YouTube) and shopping searches (Amazon).
- **Any market.** Spanish searches in Spain, Portuguese in Brazil, English in the UK... Amazon uses that country's own store.
- **Long tail on autopilot.** Deep mode tries your keyword with question words, buying words and every letter and number.
- **Ready to prioritize.** Popularity score, intent and engine count, sorted best first.
- **Cheap.** A fraction of the price of SEO suites, and you pay only for the ideas you get.

### Use cases

- **SEO and content:** plan articles around real questions ("how to choose running shoes").
- **YouTube creators:** find what people search on YouTube before you film.
- **Amazon sellers:** discover buyer keywords for listings, titles and PPC.
- **Ads (Google, Bing):** build keyword and negative keyword lists in minutes.
- **Product and market research:** see what people want around a topic, in each country.

### Input

| Field | What it does |
|---|---|
| **Seed keywords** | One topic per line. |
| **Search engines** | Google, YouTube, Amazon, Bing, DuckDuckGo (all by default). |
| **Language / Country** | e.g. `en` + `us`, `es` + `es`, `pt` + `br`. |
| **Depth** | Deep (hundreds of ideas) or Quick (questions and modifiers). |
| **Max ideas per seed** | Best ideas kept first. |
| **Only ideas that contain the seed** | Drop loosely related suggestions. |

```json
{
  "keywords": ["running shoes", "trail running"],
  "language": "en",
  "country": "us",
  "depth": "deep"
}
```

### Output

```json
{
  "seed": "zapatillas running",
  "keyword": "zapatillas running hombre",
  "intent": "informational",
  "score": 348,
  "engineCount": 5,
  "engines": ["amazon", "bing", "duckduckgo", "google", "youtube"],
  "bestPosition": 1,
  "words": 3,
  "language": "es",
  "country": "es"
}
```

**Score:** each time an engine suggests the idea it adds points (more for the first positions). High score = searched often, on several engines.

### Good to know

- Autocomplete shows what people **really type**, but not exact monthly search volumes.
- Questions are detected in English, Spanish, Portuguese, French, German and Italian.

### Integrations

Send ideas to Google Sheets, Airtable, Notion or your SEO tools with Apify integrations, Zapier, Make or n8n.

### How to use it

1. Click **Try for free** (or **Start**) at the top of this page.
2. Fill in the input, or keep the example to see it working in seconds.
3. Click **Start** and wait for the run to finish.
4. Download the results as **Excel, CSV, JSON or HTML**, or get them through the Apify API.

### How much does it cost?

**$0.001 per keyword idea** ($1.00 per 1,000). No start fee, no monthly fee, and you only pay for the results saved to your dataset.

| Example | Cost |
|---|---|
| Ideas for one topic (deep mode) | about $0.50 |
| Keyword research for 10 topics | about $5.00 |

Apify's free plan includes monthly credit, so you can try it for free.

### FAQ

**Where do the keyword ideas come from?**

From the autocomplete of Google, YouTube, Amazon, Bing and DuckDuckGo: what people really type.

**Does it give search volume?**

It gives a popularity score based on how often and how high each engine suggests the idea, not exact monthly volumes.

**Does it work for Amazon and YouTube keywords?**

Yes. Amazon uses each country's own store, and YouTube shows video searches.

**Which countries and languages?**

Any: for example en + us, es + es, pt + br, de + de.

### More tools from Sndz Data

- [BORME Scraper API - Spain New Company Leads Daily](https://apify.com/sndzcc/borme-spain-companies): every new company registered in Spain, daily
- [App Store & Google Play Reviews Scraper API](https://apify.com/sndzcc/app-reviews-scraper): App Store and Google Play reviews in one run
- [Job Scraper API - Greenhouse, Lever, Ashby & Workable](https://apify.com/sndzcc/ats-jobs-scraper): all open jobs from Greenhouse, Lever, Ashby and more
- [Google News Scraper API - Articles with Real URLs](https://apify.com/sndzcc/google-news-scraper): news by keyword or topic, with real article URLs
- [Email & Contact Scraper API - Emails, Phones & Socials](https://apify.com/sndzcc/contact-details-scraper): emails, phones and social profiles from any website
- [Telegram Scraper API - Channel Posts, Views & Media](https://apify.com/sndzcc/telegram-channel-scraper): posts, views and media from public Telegram channels
- [Brand Monitoring API - Mentions Radar for News & Reddit](https://apify.com/sndzcc/brand-mentions-radar): brand mentions across 9 sources, with sentiment
- [AI Image Upscaler API - Upscale & Enhance Photos 4x](https://apify.com/sndzcc/ai-image-upscaler): upscale and enhance photos 4x with AI
- [Tech Stack Detector API - Wappalyzer & BuiltWith Alternative](https://apify.com/sndzcc/tech-stack-detector): the technologies behind any website, in bulk
- [Polymarket & Kalshi API - Prediction Market Odds](https://apify.com/sndzcc/prediction-markets-scraper): live odds from Polymarket and Kalshi in one dataset
- [WHOIS & Domain Lookup API - DNS, SSL & Availability](https://apify.com/sndzcc/domain-intel): WHOIS, availability, DNS and SSL for any list of domains
- [Bluesky Scraper API - Posts, Profiles & Followers](https://apify.com/sndzcc/bluesky-scraper): posts, profiles and followers from Bluesky, no login
- [SEO Audit API - Broken Links, Meta Tags & Site Crawler](https://apify.com/sndzcc/seo-audit): SEO audit and broken link checker for any website
- [OCR API - Image & PDF to Text Extractor, 100+ Languages](https://apify.com/sndzcc/image-pdf-to-text): text from images and scanned PDFs, 100+ languages

### Support

Want another engine (TikTok, Pinterest, eBay) or a new field? Open an issue on the **Issues** tab.

If this Actor saves you time, a quick ⭐ review helps a lot and keeps it maintained. Thank you!

# Actor input Schema

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

One topic per line, e.g. running shoes, vegan recipes, crm software. Each one becomes hundreds of ideas.

## `engines` (type: `array`):

Where to collect real searches from. All five by default.

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

Two-letter code: en, es, pt, fr, de, it... Also sets the question words used (how / cómo / comment...).

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

Two-letter code: us, gb, es, mx, de, fr, br, in... Amazon uses that country's store.

## `depth` (type: `string`):

Deep also tries your keyword + every letter and number (a, b, c... 0, 1, 2...) for many more long-tail ideas.

## `maxKeywordsPerSeed` (type: `integer`):

The best ideas are kept first (highest score).

## `mustContainSeed` (type: `boolean`):

Drop suggestions that don't include your exact seed words.

## Actor input object example

```json
{
  "keywords": [
    "running shoes"
  ],
  "engines": [
    "google",
    "youtube",
    "amazon",
    "bing",
    "duckduckgo"
  ],
  "language": "en",
  "country": "us",
  "depth": "deep",
  "maxKeywordsPerSeed": 500,
  "mustContainSeed": false
}
```

# Actor output Schema

## `overview` (type: `string`):

Every idea with its popularity score, search intent and the engines that suggested it, best first.

## `allData` (type: `string`):

Every field of every keyword idea.

# 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"
    ],
    "engines": [
        "google",
        "youtube",
        "amazon",
        "bing",
        "duckduckgo"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("sndzcc/keyword-ideas-machine").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"],
    "engines": [
        "google",
        "youtube",
        "amazon",
        "bing",
        "duckduckgo",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("sndzcc/keyword-ideas-machine").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"
  ],
  "engines": [
    "google",
    "youtube",
    "amazon",
    "bing",
    "duckduckgo"
  ]
}' |
apify call sndzcc/keyword-ideas-machine --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,sndzcc/keyword-ideas-machine"
        }
    }
}
```

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/cf9ejs05cS04131Qz/builds/cvrHtYbdvOcX4fmYu/openapi.json
