Keyword Research Tool: Keyword Ideas, Volume & Difficulty
Turn seed keywords into up to 1,000 keyword ideas each: long-tail suggestions, Google related searches or same-topic ideas, with search volume, CPC, keyword difficulty, intent and 12-month trend. 94 countries. Pay only per idea returned.
Typical uses
- Content plans and topic clusters: hundreds of long-tail questions and phrases around a topic, sorted by volume or by difficulty.
- Low-competition keywords: keep ideas under a difficulty of 30 with at least 100 searches a month.
- PPC research: CPC and top-of-page bid range for every idea, per country.
- Product and market research: see how people search for a product category with the `ideas` source.
- Automations and AI agents: feed n8n, Make, Zapier, Google Sheets or an MCP client with clean JSON rows.
Pricing
Pay per use, no subscription, no monthly fee. The price depends on your Apify plan. Apify's free plan includes $5 of usage every month.
| You pay per | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
| Keyword One keyword idea returned with its search volume, CPC, competition, difficulty, intent and 12-month history. Ideas removed by your filters, duplicates and seeds with no idea are not billed as ideas. | $0.004 | $0.003 | $0.0025 | $0.002 |
| Seed keyword Charged once per seed keyword sent to the data source, which bills a fixed fee for every search, even one that finds no idea. Not charged when the request is rejected or the data source is down. | $0.01 | $0.01 | $0.01 | $0.01 |
Run it from your code
Get an API token in the Apify Console (Settings → Integrations), then:
curl -X POST \
"https://api.apify.com/v2/acts/plainrows~keyword-ideas-generator/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"seedKeywords": [
"coffee maker"
],
"mode": "suggestions",
"country": "US",
"maxIdeasPerSeed": 100
}'
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("plainrows/keyword-ideas-generator").call(run_input={'seedKeywords': ['coffee maker'],
'mode': 'suggestions',
'country': 'US',
'maxIdeasPerSeed': 100})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)
Use it in automations and AI agents
- n8n, Make, Zapier: use the official Apify integration and pick the Actor
plainrows/keyword-ideas-generator. - Generate keyword ideas with search volume and difficulty into Google Sheets (n8n workflow JSON)
- MCP (Claude, Cursor, other AI agents):
https://mcp.apify.com?tools=plainrows/keyword-ideas-generator
Full documentation, input options and output fields: https://apify.com/plainrows/keyword-ideas-generator