Keyword Search Volume: Google Ads Volume, CPC & Difficulty
Pricing
from $2.80 / 1,000 keyword with data
Keyword Search Volume: Google Ads Volume, CPC & Difficulty
Get Google search volume, CPC, competition, keyword difficulty, search intent and 12 months of history for up to 20,000 keywords per run, in 92 countries. Google Ads data, refreshed monthly. Pay per keyword, no subscription.
Pricing
from $2.80 / 1,000 keyword with data
Rating
0.0
(0)
Developer
clement
Maintained by CommunityActor stats
0
Bookmarked
7
Total users
4
Monthly active users
5 hours ago
Last modified
Categories
Share
What is Keyword Search Volume?
Keyword Search Volume gives you Google search volume, CPC, competition, keyword difficulty and search intent for a list of keywords, with up to 24 months of history. Paste your keywords, pick a country, and download the results. No Google Ads account needed.
What can this keyword tool do?
- Google Ads data, refreshed every month, for 92 countries.
- Everything in one row per keyword: monthly searches, cost per click, advertiser competition, top-of-page bid range, difficulty score (0-100), search intent, and the monthly trend.
- Bulk friendly. Up to 20,000 keywords per run.
- Pay per keyword. No subscription, and keywords with no data are free.
- No Google Ads account, API key or login needed.
Because it runs on Apify, you also get:
- Scheduling: refresh the figures for your keyword list every month.
- API access: start runs and read results from your own code.
- Integrations: send results to Make, Zapier, n8n, Google Sheets and more.
- Monitoring: get alerted when a run fails or returns less than expected.
- Exports: download results as JSON, CSV or Excel.
How to check keyword search volume
- Paste your keywords into Keywords, one per line.
- Choose the Country whose searches you want figures for.
- Optionally set the language, and how many months of history you want.
- Click Start. When the run finishes, open the Output tab and download the results as JSON, CSV or Excel.
Live lookups need a paid Apify plan. On the free plan, the Actor returns clearly labelled sample rows and charges nothing for your keywords, so you can see the exact output format.
How much does keyword data cost?
You pay per keyword with data, plus $0.02 per lookup, charged once for every 700 keywords in a run. Keywords with no data cost nothing. The price per keyword depends on your Apify Store discount tier:
| Store discount tier | Price per keyword |
|---|---|
| Bronze | $0.0036 |
| Silver | $0.0032 |
| Gold and above | $0.0028 |
At the Bronze price:
| Keywords in a run | Cost |
|---|---|
| 10 | $0.056 |
| 100 | $0.38 |
| 1,000 | $3.64 |
Set the run's maximum charge to cap spending: the Actor stops before exceeding it.
Input example
{"keywords": ["running shoes","trail running shoes","best running shoes for flat feet"],"country": "US","monthsOfHistory": 12}
| Field | Meaning |
|---|---|
keywords | Your keywords, up to 20,000 per run |
country | Two-letter country code |
language | Two-letter language code (optional; each country has a default) |
monthsOfHistory | Months of past search volume to return, up to 24 |
Output example
Real results for the input above, captured on 2026-10-05:
| Keyword | Monthly searches | Difficulty | CPC | Intent |
|---|---|---|---|---|
| running shoes | 301,000 | 43 | $1.09 | transactional |
| trail running shoes | 165,000 | 3 | $1.07 | transactional |
| best running shoes for flat feet | 9,900 | 10 | $1.01 | commercial |
One dataset item per keyword, shortened here:
{"keyword": "running shoes","found": true,"country": "US","language": "en","searchVolume": 301000,"cpc": 1.09,"competition": 1,"competitionLevel": "HIGH","lowTopOfPageBid": 0.47,"highTopOfPageBid": 2.17,"keywordDifficulty": 43,"searchIntent": "transactional","trend": {"monthly": 22,"quarterly": 50,"yearly": -45},"monthlySearches": [{"month": "2026-08","searchVolume": 301000},{"month": "2026-07","searchVolume": 246000}],"dataUpdatedAt": "2026-09-15"}
| Field | Meaning |
|---|---|
searchVolume | Average monthly Google searches in the chosen country |
cpc | Average cost per click in Google Ads, in US dollars |
competition, competitionLevel | How many advertisers bid on the keyword: 0 to 1, and LOW, MEDIUM or HIGH |
lowTopOfPageBid, highTopOfPageBid | The range advertisers pay to appear at the top of the page, in US dollars |
keywordDifficulty | How hard it is to rank in the top 10 organic results, from 0 (easy) to 100 (very hard) |
searchIntent | informational, navigational, commercial or transactional |
trend | Change in search volume, in percent, over the last month, quarter and year |
monthlySearches | Search volume for each past month |
found | false when there is no data for the keyword. Those keywords are not charged |
Use cases
- Size the demand behind a list of content or product ideas.
- Prioritise SEO work by volume against difficulty.
- Estimate Google Ads budgets from CPC and bid ranges.
- Spot seasonal patterns from the monthly history.
- Enrich keyword lists inside Make, Zapier, n8n or your own code.
Tips for better keyword research
- Compare volume with difficulty. A smaller keyword with low difficulty is often the better target: in the example above, "trail running shoes" has half the volume of "running shoes" for a fraction of its difficulty.
- Check the monthly history before planning seasonal content.
- Choose the country your customers are in, since figures differ widely between markets.
FAQ
How do I check the search volume of a keyword?
Paste the keyword, choose a country and start the run. The searchVolume field is the average number of monthly Google searches in that country.
Where does the data come from?
From Google Ads, the same source as Google Keyword Planner, supplied through the data provider DataForSEO and refreshed once a month. Each row shows when its data was last updated.
Why do some keywords come back with "found": false?
Very rare or brand-new search terms have no recorded data. They are returned so you can see which ones are missing, and they are not charged.
Can I get search volume for a city or a region?
Not yet. Figures are for whole countries.
Which languages are supported?
Each country uses its main language by default. For countries with several languages, such as Switzerland, Belgium or Canada, set Language to the two-letter code you want.
How many keywords can I check at once?
Up to 20,000 per run. Each keyword can have up to 10 words and 80 characters.
Can I use it from my own code, Make, Zapier or n8n?
Yes. Call it through the Apify API (see the examples below), or connect it with Apify's integrations for Make, Zapier and n8n.
What happens to my keywords?
They are sent to the data provider (DataForSEO) to be looked up. Results are stored only in your own Apify account.
Limits
- Country-level data only, with no city or region breakdown.
- Google search only. Bing, YouTube and Amazon volumes are not included.
- No keyword suggestions: the Actor returns data for the keywords you provide.
- Figures are monthly averages as reported by Google Ads, which groups close variants of a keyword together.
Other Actors you may find useful
| Actor | What it does |
|---|---|
| Keyword Ideas Generator | Long-tail keyword ideas from a seed keyword |
| Meta AI Brand Visibility Tracker | Whether Meta AI recommends your brand |
| PDF & Image to Text | Text from PDFs, scans, photos and screenshots |
| Audio & Video to Text | Transcribe your own files and public video links |
Run it from the API
With cURL:
curl -X POST "https://api.apify.com/v2/acts/spokentext~keyword-search-volume/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{ "keywords": ["running shoes", "trail running shoes"], "country": "US" }'
With Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("spokentext/keyword-search-volume").call(run_input={"keywords": ["running shoes", "trail running shoes"], "country": "US"})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["keyword"], item.get("searchVolume"))
This Actor is an independent tool. It is not affiliated with or endorsed by Google; the Google Ads figures come through a third-party keyword data provider.
Feedback
Something failed or gave a wrong result? Open an issue in the Issues tab of this page, with the error message from your results: every report is read and fixed. If the Actor saved you time, a rating helps others find it.