Keyword Search Volume: Keyword Planner Data, CPC & Trends
Pricing
from $3.00 / 1,000 keyword results
Keyword Search Volume: Keyword Planner Data, CPC & Trends
Bulk Google search volume, CPC, competition, top-of-page bids and a 12-month trend for up to 10,000 keywords per run, by country and language. Keyword Planner data without a Google Ads account. 30-day cache, clean JSON for SEO tools and AI agents.
Pricing
from $3.00 / 1,000 keyword results
Rating
0.0
(0)
Developer
SteadyScrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
🔎 Keyword Search Volume: Keyword Planner Data, CPC & Trends
Get Google search volume, CPC, competition, top-of-page bids and a 12-month trend for up to 10,000 keywords per run, for any country and language. It's Keyword Planner data without a Google Ads account, and you get clean JSON that's ready for spreadsheets, SEO tools and AI agents.
- 📊 Keyword Planner metrics: average monthly searches, CPC, competition (LOW/MEDIUM/HIGH plus a 0-100 index), and low/high top-of-page bids
- 📈 12-month trend: searches for each month, oldest first
- 🌍 190+ countries, 50+ languages: pass names ("Germany", "German"), ISO codes ("DE", "de") or Google Ads location codes (2276)
- ⚡ Fast by default: results in seconds. Keywords looked up in the last 30 days come back instantly from a cache
- 🧹 Clean input: lowercases, trims and dedupes keywords. Keywords Google Ads rejects are flagged
invalidand never charged - 💸 You pay only for keywords that return data:
no_data,invalidanderrorrows are free
Quick start
{"keywords": ["keyword research", "seo tools", "best running shoes"],"location": "United States","language": "English"}
Output
One item per keyword, in the same order as your input:
| Field | Example | Notes |
|---|---|---|
keyword | best running shoes | Normalized keyword |
inputKeyword | Best Running Shoes! | As you typed it |
status | ok | ok, no_data, invalid or error |
searchVolume | 201000 | Average monthly searches (last 12 months) |
monthlySearches | [{"month": "2025-10", "searchVolume": 165000}, …] | Last 12 months |
cpc | 1.42 | USD |
competition / competitionIndex | HIGH / 100 | Paid-search competition |
lowTopOfPageBid / highTopOfPageBid | 0.61 / 2.07 | USD |
keywordDifficulty / searchIntent | 71 / commercial | Only when the data comes from the keyword database (auto and labs modes) |
spellCorrection | null | The spelling Google Ads used, when it corrected the keyword |
location, locationCode, language, languageCode | United States, 2840, English, en | |
dataDate | 2026-09 | Latest month in the data |
source | live | live (fetched this run) or cache (looked up in the last 30 days) |
dataSource | google_ads | google_ads (Keyword Planner) or dataforseo_labs (keyword database built from Google Ads data) |
fetchedAt | 2026-10-26T22:11:36Z | When the data was fetched |
The run summary (counts, cached vs fresh, and the mode used) is saved in the key-value store as OUTPUT.
Modes
| Mode | Speed | Data source | Best for |
|---|---|---|---|
auto (default) | seconds | DataForSEO Labs keyword database, then Google Ads live for anything missing | Most lists: fast and complete |
live | ~7 s per 1,000 keywords | Google Ads Keyword Planner (live) | When you want every number straight from Keyword Planner |
labs | seconds | DataForSEO Labs keyword database only | Adds keyword difficulty and search intent; keywords not in the database come back as no_data |
queue | 1-3 hours | Google Ads Keyword Planner (standard queue) | Very large lists (5,000+ keywords) where waiting is fine |
All modes return the same fields. Keyword Planner numbers only change once a month, so keywords looked up in the last 30 days for the same country and language can come back instantly from a cache.
Pricing
Pay per event, no subscription:
| Event | Price | When |
|---|---|---|
| Lookup | $0.12 per run | Once per run, only when fresh data is requested from the provider. Runs answered fully from the cache don't pay it |
| Keyword result | $0.003 per keyword ($3 per 1,000) | Per keyword that returns a search volume |
| Actor start | $0.00005 | Apify's standard start fee |
Keywords without data are free: no_data, invalid and error rows are never charged as keyword results. The lookup covers the data request itself, so it still applies to a run where fresh keywords were requested but none had data.
Examples: 20 keywords = $0.18, 100 keywords = $0.42, 1,000 keywords = $3.12 (if every keyword has data).
Set Max cost per run in the run options to cap spending. The Actor only processes as many keywords as your limit covers.
Data source
Data comes from DataForSEO, from its Google Ads Keyword Planner API and its DataForSEO Labs keyword database. DataForSEO's site says its customers may show its data in tools they sell to their own users. This Actor is built by SteadyScrape and isn't affiliated with Google or DataForSEO.
Limits & notes
- Each keyword can have at most 80 characters and 10 words. Characters Google Ads rejects are removed when Clean up keywords is on.
- Google Ads groups close variants, so for example
running shoeandrunning shoescan show the same volume. - Very low-volume keywords may return
no_data. - Worldwide (no location) is only available in
liveandqueuemodes. - Up to 1,000 keywords per run by default (Max keywords per run, up to 10,000). Very large fresh lists may be asked to split into smaller runs.
More tools from SteadyScrape
- AI Visibility & Share of Voice Tracker: see whether ChatGPT and Perplexity mention, rank and cite your brand versus your competitors.
- ATS Job Scraper: see which roles your competitors are hiring for, straight from their career sites.
Need something else?
Open an issue in the Issues tab. SteadyScrape usually replies within a day.