DEV Community

Cover image for How to Get Google Keyword Search Volume & CPC Without Setting Up the Google Ads API
Francesco Formisano for DokeLab

Posted on

How to Get Google Keyword Search Volume & CPC Without Setting Up the Google Ads API

If you need Google keyword data for SEO workflows, internal tools, content planning, or automation, the hard part usually isn't the metrics themselves.

It's the setup.

You often need to:

  • manage a third-party API account
  • handle authentication
  • normalize responses
  • add caching
  • structure output for downstream tools
  • make it usable for non-technical teammates

That friction is exactly why we built Google Keyword Search Volume & CPC Checker on Apify.

What it does

The Actor lets you fetch structured keyword metrics such as:

  • search volume
  • CPC
  • competition
  • competition index
  • bid estimates
  • monthly search trends

You provide a list of keywords, choose the location and language, and get structured results back.

No separate DataForSEO account or API credentials are required.

A typical use case

Imagine you already have a list of keywords:

  • web hosting
  • seo tools
  • keyword research
  • email marketing software
  • crm software

You don't need another keyword-generation tool.

You just want to know:

Which of these keywords actually have search demand?

And:

How competitive and commercially valuable are they?

That's where a simple keyword-metrics workflow makes sense.

Example input

{
  "keywords": [
    "web hosting",
    "seo tools",
    "keyword research"
  ],
  "locationCode": 2840,
  "languageCode": "en",
  "includeMonthlySearches": true,
  "freshnessDays": 7
}
Enter fullscreen mode Exit fullscreen mode

The Actor can process up to 1,000 keywords per run.

Example output

For each keyword, you can get fields such as:

  • search_volume
  • cpc
  • competition
  • competition_index
  • low_top_of_page_bid
  • high_top_of_page_bid
  • monthly_searches
  • cache_hit
  • fetched_at

The results are structured, so they can be exported or consumed by another application.

Why structured output matters

This becomes especially useful when keyword research is only one step in a larger workflow.

For example:

AI generates keyword ideas → keyword metrics are fetched → low-value keywords are removed → the remaining keywords are used for content planning.

Or:

A customer uploads a keyword list → metrics are enriched automatically → the final dataset is exported to a dashboard.

This is much easier when the output is predictable and machine-readable.

Fresh data vs cached data

The Actor also supports cached results.

If recent data for the same keyword, location, and language already exists, it can be reused instead of making another upstream request.

The output tells you whether a result was served from cache through:

cache_hit: true

You can also control the acceptable cache age using freshnessDays.

If you explicitly need fresh data, set:

freshnessDays: 0

Missing data stays missing

One detail that matters when building automated data pipelines: a missing value should not automatically become zero.

If a provider doesn't return a metric, the Actor returns null.

That makes it possible to distinguish between:

  • an actual value of zero
  • unavailable data

This prevents misleading downstream analysis.

When this approach makes sense

This workflow is useful when you:

  • already have a keyword list
  • need metrics for dozens or hundreds of keywords
  • want structured JSON or dataset output
  • are building an SEO automation
  • want keyword data inside an AI workflow
  • don't want to maintain another API integration

It is not intended to replace full SEO platforms like Ahrefs or Semrush.

Those products solve much broader problems.

The goal here is intentionally narrower:

keywords in → useful keyword metrics out.

Try it on Apify

We built Google Keyword Search Volume & CPC Checker as part of DokeLab.

You can try it here:

https://apify.com/dokelab/keyword-metrics-pro

If you're building SEO, PPC, content, or AI automation workflows, I'm also interested in hearing what other keyword-data operations would be useful to expose in this format.


Built by DokeLab.

Top comments (0)