Keyword Search Volume, CPC & Keyword Ideas
Pricing
from $4.00 / 1,000 keyword with search volume (small runs)s
Keyword Search Volume, CPC & Keyword Ideas
Get Google Ads monthly search volume, CPC, competition, top-of-page bids and 12-month trends for up to 10,000 keywords per run in any of 217 countries, plus related keyword ideas. No Google Ads account needed.
Get Google Ads search volume for up to 10,000 keywords per run, in any of 217 countries or worldwide: average monthly searches, monthly searches for each month, cost per click (CPC), advertiser competition, top-of-page bid range and a 3-month trend. Add keyword ideas to find related searches with the same numbers. No Google Ads account and no API key needed.
What does Keyword Search Volume do?
- Search volume in bulk: paste a list of keywords, or link a CSV or text file, and get one row per keyword.
- Google Ads Keyword Planner numbers: average monthly searches over the last 12 months, searches per month, CPC, competition (LOW / MEDIUM / HIGH and 0-100), low and high top-of-page bids, spelling Google Ads used.
- Trend at a glance:
trend3MonthsPercentcompares the last 3 months with the 3 months before. - Keyword ideas: related searches found from your keywords, with the same numbers, highest volume first.
- 217 countries (Vietnam, Germany, Brazil, India, Japan…) or all countries together.
- Two speeds: live (results in seconds) or queued (results in 1-3 hours, lower price per batch in large runs). Lists of up to 50 keywords in the 92 countries of the keyword database are answered in seconds either way.
- Source on every row:
dataSourcesays whether the numbers were asked from Google Ads during the run or come from a keyword database of Google Ads numbers refreshed monthly. - Fair billing: keywords Google Ads would refuse are free, small lists pay only for keywords with a search volume, and batches that fail in live mode or that the data service turns down are free.
Who uses it?
- SEO and content teams: size topics before writing, and pick the keyword with the most searches.
- PPC managers: estimate CPC and competition before building a campaign.
- Agencies: check search demand for a client's product list in several countries.
- E-commerce sellers and product teams: compare demand for product names and features.
- Developers and AI agents: add search volume to dashboards, spreadsheets and research tools through the API.
How to use it
- Click Try for free.
- In Keywords, add one keyword per line, for example
coffee grinder. For a long list, put a link to a CSV or text file in Keyword file. - Pick a Country (the default is United States).
- Choose Speed: Live for results in seconds, Queued for a lower price per batch when you can wait 1-3 hours (give the run a timeout of at least 4 hours in Run options).
- Optional: under Keyword ideas, choose My keywords and keyword ideas or Only keyword ideas, and set Maximum keyword ideas.
- Click Start. Download the results as JSON, CSV or Excel, or use the API.
Keyword file: a public link to a CSV or text file (the file itself, not a web page showing it), up to 2 MB. Either one keyword per line, or a CSV with a column
named keyword (also keywords, query, search term or term); without such a column the first column is used.
Keywords from the file are added to the list.
Use with AI agents (MCP)
AI assistants and AI agents can call this Actor through Apify's MCP server at mcp.apify.com or through the Apify API. Questions it answers well:
- "How many people search for 'coffee grinder' in Germany each month?" Read
searchVolume(andmonthlySearchesfor each month) withcountryset toDE. - "Which of these 50 product names has the most searches?" Sort the rows by
searchVolume. - "Find related keywords for 'espresso machine' with their CPC." Run with Only keyword ideas and read
keyword,searchVolumeandcpcof each idea row. - "Is interest in 'standing desk' going up?" Read
trend3MonthsPercent.
Only keywords (or keywordsFileUrl) is needed. Use live mode for quick answers.
Input example
{"keywords": ["coffee grinder", "espresso machine", "burr grinder"],"country": "US","mode": "live","ideas": "also","maxIdeas": 200}
Output example
One keyword row (numbers for illustration, monthly list shortened):
{"keyword": "buy laptop","type": "keyword","seedKeywords": null,"status": "ok","message": null,"searchVolume": 2900,"cpc": 7.95,"competition": "HIGH","competitionIndex": 100,"lowTopOfPageBid": 1.69,"highTopOfPageBid": 10.04,"monthlySearches": [{ "month": "2026-10", "searchVolume": 2400 },{ "month": "2026-09", "searchVolume": 2900 },{ "month": "2026-08", "searchVolume": 3600 }],"trend3MonthsPercent": 8.5,"spellCorrection": null,"country": "US","locationCode": 2840,"language": null,"searchPartners": false,"mode": "live","dataSource": "google-ads","checkedAt": "2026-11-03T10:00:00.000Z"}
Keyword ideas have "type": "idea" and list the keywords they were found from in seedKeywords. Every row has a
status:
| Status | Meaning | Charged in runs priced per keyword |
|---|---|---|
ok | Has search volume | Yes |
no-data | No search volume was found for it in the chosen country | No |
invalid | Not looked up: too long, more than 10 words, or a character Google Ads refuses (message says which) | No |
failed | The lookup failed | No |
In runs priced per batch, each batch is charged as a whole, whatever the status of its rows (see
How much does it cost?). invalid keywords are never charged.
dataSource tells where the numbers come from:
google-ads: asked from Google Ads during the run (used for lists of more than 50 keywords, keyword ideas, all countries together, search partners, and countries or languages the keyword database does not cover).keyword-database: Google Ads numbers stored in a keyword database and refreshed once a month, used for lists of up to 50 keywords (and Free plan trial runs) in the 92 countries it covers. Answers in about 2 seconds. Very rare keywords may be missing there and come back asno-data.
The OUTPUT record of each run sums up the counts and why a run stopped early.
How much does it cost?
How a run is charged follows from your input (keywords that are refused are not counted). It is decided once, when the run starts, and shown in the log and the status message:
- Priced per keyword: runs under 40 keywords that the keyword database answers alone (one country it covers, no search partners, no keyword ideas). You pay for each keyword saved with a search volume. No batch fee.
- Priced per batch: every other run, that is 40 keywords or more, keyword ideas, All countries, search partners, or a country or language the keyword database does not cover. You pay a fee for each batch of up to 1,000 keywords (keyword ideas: 20 seed keywords per batch), whether or not its keywords have a search volume. No per-keyword fee.
When a batch fee is charged:
- Live: when the batch finishes. A live batch that fails is free.
- Queued: when the data service accepts the batch. It stays charged if the run is aborted or times out before the results arrive. A batch the data service turns down is free.
No start fee. Prices by Apify plan:
| Event | Free | Bronze | Silver | Gold and up |
|---|---|---|---|---|
| Keyword with search volume (runs priced per keyword) | $0.0075 | $0.006 | $0.005 | $0.004 |
| Live batch of up to 1,000 keywords (runs priced per batch) | $0.30 | $0.24 | $0.195 | $0.165 |
| Queued batch of up to 1,000 keywords (runs priced per batch) | $0.25 | $0.20 | $0.167 | $0.133 |
- Free: keywords that were not looked up (
invalid), and in runs priced per keyword, keywords without data. - Set a maximum cost per run and the Actor plans the run to stay under it, then stops cleanly.
Examples on Bronze:
- 30 keywords in the United States, all with a search volume: 30 × $0.006 = $0.18, live or queued.
- 1 keyword in All countries: one batch, so $0.24 live or $0.20 queued.
- 3 keywords with up to 200 keyword ideas, live: one search volume batch and one keyword ideas batch, so 2 × $0.24 = $0.48.
- 50 keywords: one batch, so $0.20 queued or $0.24 live.
- 5,000 keywords: 5 batches of 1,000, so 5 × $0.20 = $1.00 queued, or 5 × $0.24 = $1.20 live.
Apify Free plan: each run looks up one trial batch of up to 10 keywords, without keyword ideas, then stops and says so. Trial runs use the keyword database, so they work in its 92 countries, one country at a time, without search partners. Any paid Apify plan looks up the full list in every country.
FAQ
Where do the numbers come from? From Google Ads Keyword Planner, through a licensed data provider. They are the
same numbers advertisers see when planning campaigns: rounded monthly averages, updated once a month. Each row's
dataSource says whether they were asked during the run or read from the monthly keyword database.
Why does a keyword have no data? No searches were found for it in the chosen country, often because it is rare or misspelled. Such rows are free. Try All countries (always asked from Google Ads) or a broader keyword.
Why was a keyword not looked up? Google Ads refuses keywords with more than 80 characters, more than 10 words or
some characters (such as !, ,, ?, %, (, ) and emoji). Those keywords are listed with status invalid and
the reason, and the rest of the list is looked up as usual.
Does the language setting change the numbers? Usually not: Google Ads gives the same search volume for any language, so it is best left empty.
Live or queued? Both give the same data. In runs priced per batch, queued costs less per batch; in runs priced per keyword both speeds cost the same. Queued results take 1-3 hours for lists over 50 keywords, so it suits large lists and scheduled runs.
Limits
- Up to 10,000 keywords per run (list and file together), 1,000 per batch.
- Keyword ideas: one batch of 20 seed keywords for every 100 ideas wanted, up to 10 batches and 20,000 ideas per run. Ideas come from the first keywords of the list (20 per batch); the log says when some keywords were not used.
- Keyword file: up to 2 MB, public http or https link.
- Keywords are looked up in lowercase; duplicates are removed.
Related
- SEO Site Audit & Broken Link Checker: technical SEO audit of every page of a website.
Questions and feedback
Open an issue on the Issues tab.