Keyword Search Volume: Google Ads Volume, CPC & Difficulty avatar

Keyword Search Volume: Google Ads Volume, CPC & Difficulty

Pricing

from $4.00 / 1,000 keyword with data

Go to Apify Store
Keyword Search Volume: Google Ads Volume, CPC & Difficulty

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 $4.00 / 1,000 keyword with data

Rating

0.0

(0)

Developer

clement

clement

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Share

Get 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.

  • 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.

How to use

  1. Paste your keywords into Keywords, one per line.
  2. Choose the Country whose searches you want figures for.
  3. 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 so you can see the exact output format.

Output

One dataset item per keyword:

{
"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"
}
FieldMeaning
searchVolumeAverage monthly Google searches in the chosen country
cpcAverage cost per click in Google Ads, in US dollars
competition, competitionLevelHow many advertisers bid on the keyword: 0 to 1, and LOW, MEDIUM or HIGH
lowTopOfPageBid, highTopOfPageBidThe range advertisers pay to appear at the top of the page, in US dollars
keywordDifficultyHow hard it is to rank in the top 10 organic results, from 0 (easy) to 100 (very hard)
searchIntentinformational, navigational, commercial or transactional
trendChange in search volume, in percent, over the last month, quarter and year
monthlySearchesSearch volume for each past month
foundfalse when there is no data for the keyword. Those keywords are not charged

Pricing

  • $0.004 per keyword with data.
  • $0.02 per lookup, charged once for every 700 keywords in a run.
  • Keywords with no data cost nothing.
Keywords in a runCost
10$0.06
100$0.42
1,000$4.04

Set the run's maximum charge to cap spending: the Actor stops before exceeding it.

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.

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.

Does it work on the free Apify plan?

The free plan returns sample rows only. Every live lookup is bought from a paid data source, so live data is available on paid Apify plans.

Can I use it from my own code, Make, Zapier or n8n?

Yes. Call it through the Apify API (see 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.

Run it from the API

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" }'