Home / Tools / Keyword Research Tool

Keyword research

Keyword Research Tool

Keyword ideas from any seed with search volume, CPC, keyword difficulty (KD), search intent and SERP features in one row. Ahrefs Keywords Explorer & Semrush Keyword Magic alternative. 90+ countries, up to 10,000 keywords per run, $3 per 1,000 keywords.

Run it on Apify API & MCP

Sample output

Real rows from the prefilled example run on Oct 19, 2026.

Full JSON of one real output row (4 rows in the example dataset)
{
  "keyword": "coffee",
  "type": "seed",
  "seed_keyword": "coffee",
  "search_volume": 6120000,
  "cpc": 0.68,
  "competition": "LOW",
  "competition_index": 14,
  "low_top_of_page_bid": 1.07,
  "high_top_of_page_bid": 7.3,
  "keyword_difficulty": 84,
  "difficulty_level": "hard",
  "search_intent": "informational",
  "secondary_intents": [],
  "serp_features": [
    "local_pack",
    "organic",
    "popular_products",
    "... 6 more"
  ],
  "has_ai_overview": false,
  "has_featured_snippet": false,
  "has_people_also_ask": true,
  "has_local_pack": true,
  "has_shopping_results": true,
  "has_video": false,
  "has_images": true,
  "has_ads": false,
  "serp_results_count": 1860000000,
  "word_count": 1,
  "avg_backlinks_top10": 6901,
  "avg_referring_domains_top10": 1119,
  "search_volume_trend": {
    "monthly": 0,
    "quarterly": 0,
    "yearly": 0
  },
  "location": "United States",
  "language": "English",
  "data_updated_at": "2026-10-18T03:07:45Z",
  "scraped_at": "2026-10-19T01:50:39Z"
}

Output fields

From the Actor's dataset schema. Every row has the same flat shape, so it drops straight into a spreadsheet, a database or an agent's context.

FieldTypeDescription
keywordstringKeyword (lower-case)
typestringseed = one of your seed keywords; idea / suggestion / related = a keyword found from the seeds
seed_keywordstringSeed keyword the row came from (null in ideas mode with several seeds)
search_volumeintegerAverage monthly Google searches (last 12 months)
cpcnumberAverage Google Ads cost per click (USD)
competitionstringGoogle Ads competition level: LOW, MEDIUM or HIGH
competition_indexintegerGoogle Ads competition, 0-100
low_top_of_page_bidnumberTop-of-page bid, low range (USD)
high_top_of_page_bidnumberTop-of-page bid, high range (USD)
keyword_difficultyintegerSEO keyword difficulty 0-100 (higher = harder to reach the top 10)
difficulty_levelstringvery easy (0-14), easy (15-29), possible (30-49), difficult (50-69), hard (70-84), very hard (85-100)
search_intentstringMain search intent: informational, navigational, commercial or transactional
secondary_intentsarrayOther likely intents
serp_featuresarrayGoogle result types on the first page, e.g. ai_overview, people_also_ask, local_pack, popular_products, video
has_ai_overviewbooleanGoogle shows an AI Overview for this keyword
has_featured_snippetbooleanGoogle shows a featured snippet
has_people_also_askbooleanGoogle shows People Also Ask questions
has_local_packbooleanGoogle shows a local map pack
has_shopping_resultsbooleanGoogle shows shopping / product results
has_videobooleanGoogle shows video results
has_imagesbooleanGoogle shows image results
has_adsbooleanGoogle showed ads when the results page was last checked
serp_results_countintegerNumber of results Google reports for the keyword
word_countintegerNumber of words in the keyword

Pricing

Pay per result, billed by Apify. No subscription and no minimum. Discount tiers apply automatically on paid Apify plans.

EventFree planBronzeSilverGold
Keyword result main
Charged once per keyword row returned (volume, CPC, KD, intent and SERP features).
$0.003$0.0027$0.0025$0.0022
Research request
Charged once per keyword-database lookup of up to 1,000 keywords (the seed-keyword lookup is one more).
$0.025$0.025$0.025$0.025

Examples on the Free plan: 100 keyword results = $0.30, 1,000 keyword results = $3, 10,000 keyword results = $30. Apify's Free plan includes $5 of monthly usage credit. Prices read from the Apify API at build time (2026-10-20).

Example input

This is the prefilled input on the Store page. Keep it and click Start to see real data in seconds.

{
  "seedKeywords": [
    "running shoes"
  ],
  "mode": "ideas",
  "location": "United States",
  "language": "English",
  "maxKeywords": 50
}

Use it from code, no-code or an AI agent

cURL (one request, returns rows)
curl -X POST \
  "https://api.apify.com/v2/acts/wrenfield-data~keyword-research-tool/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"seedKeywords": ["running shoes"], "mode": "ideas", "location": "United States", "language": "English", "maxKeywords": 50}'
Python
# pip install apify-client
import os
from apify_client import ApifyClient

client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("wrenfield-data/keyword-research-tool").call(
    run_input={
    "seedKeywords": [
        "running shoes"
    ],
    "mode": "ideas",
    "location": "United States",
    "language": "English",
    "maxKeywords": 50
},
    max_total_charge_usd=1.00,  # hard cap for this run
)
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(row)
JavaScript / Node
// npm i apify-client
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('wrenfield-data/keyword-research-tool').call({
  "seedKeywords": [
    "running shoes"
  ],
  "mode": "ideas",
  "location": "United States",
  "language": "English",
  "maxKeywords": 50
}, { maxTotalChargeUsd: 1 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
MCP (Claude, Cursor, VS Code, any MCP client)
{
  "mcpServers": {
    "wrenfield-keyword-research-tool": {
      "url": "https://mcp.apify.com?tools=wrenfield-data/keyword-research-tool"
    }
  }
}

Remote MCP server hosted by Apify. Sign in with OAuth on first use, or send Authorization: Bearer <APIFY_TOKEN>. The tool appears as wrenfield-data--keyword-research-tool. More client setups on the MCP page.

n8n, Make, Zapier

Use the official Apify node or app, pick Run Actor, enter wrenfield-data/keyword-research-tool and paste the input JSON above. Then read the run's dataset items. Ready-made n8n workflows are on the n8n templates page.

FAQ

How much does Keyword Research Tool cost?

$0.003 per keyword result on the Apify Free plan ($3 per 1,000), billed per result by Apify with no subscription. Plus $0.025 per research request. Higher Apify plans get the discounted tiers shown in the pricing table. You can cap any run with a maximum cost.

Where does the data come from?

From a licensed SEO keyword database (DataForSEO Labs) built from Google Ads data and Google results pages. The Actor doesn't scrape Ahrefs or Semrush, and it doesn't log in anywhere.

How is this different from Keyword Search Volume?

Keyword Search Volume gives exact Google Keyword Planner volumes for a list you already have. This tool finds new keywords and adds KD, intent and SERP features to each one.

Why do volumes differ from other tools?

Every tool models Google data differently. Compare keywords relative to each other in the same dataset.

Related tools

Compare and plan

Try Keyword Research Tool now

Open it on Apify, keep the prefilled example and click Start. The Apify Free plan includes $5 of monthly credit, no card needed.

Open on Apify