# AI Search Volume: ChatGPT & AI Overview Keyword Research (`zaiq/ai-search-volume`) Actor

How often people use your keywords in ChatGPT and AI search, with a 12-month AI trend, next to Google search volume, CPC and difficulty, in 94 countries. Or find the real questions people ask AI about any topic, with the sites AI cites. No API key, no subscription.

- **URL**: https://apify.com/zaiq/ai-search-volume.md
- **Developed by:** [Zaiq](https://apify.com/zaiq) (community)
- **Categories:** SEO tools, AI
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 keywords

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## AI Search Volume: how often people use your keywords in ChatGPT and AI search

Get the **AI search volume** of any keyword: an estimate of how many times a month it is used in **ChatGPT, Google's AI answers and other AI tools**, with **12 months of AI history**, the **monthly, 3-month and 12-month AI trend**, and **Google's own numbers in the same row**: search volume, CPC, competition, keyword difficulty and intent. **94 countries, 46 languages**, any number of keywords.

Switch to **questions** and get the **real questions people ask AI** that contain your keyword: recorded **ChatGPT prompts** and the **Google searches that show an AI Overview**, highest AI search volume first, each with the **sites the AI cited**, the **brands it named** and, for ChatGPT, the **searches it ran** to answer. That is your GEO content plan, from what people actually asked.

Every run also writes a one-page **report** (open it from the run's **Output** tab): your keywords ranked by AI demand, with a 12-month line for each, what is rising, what is falling and which keywords lean most towards AI. Built for **SEO and GEO/AEO teams**, **content strategists**, **agencies** and **AI agents**. No API key, no subscription: you pay per keyword.

### What you get

| Field | What it holds |
|---|---|
| AI numbers | `aiSearchVolume` (latest month), `aiSearchVolumeAvg` (12-month average), `aiTrend` (monthly, quarterly, yearly % change), `aiTrendDirection` (rising, stable, falling, new), `aiPeakMonth`, `aiMonthlySearches` (12 months), `dataMonth` |
| Google numbers (on by default) | `googleSearchVolume`, `cpc` (USD), `competition`, `keywordDifficulty` (0-100), `intent`, `googleTrend`, `googleMonthlySearches` (the same 12 months) |
| AI against Google | `aiToGoogleRatio`: AI searches for every Google search, to see which keywords lean towards AI |
| Question rows (questions mode) | `question`, `platform` (ChatGPT or Google AI Overview), `aiSearchVolume`, `aiMonthlySearches`, `citedDomains`, `topSources` (title, site, link), `brandsMentioned`, `fanOutQueries` (the searches ChatGPT ran), `answerPreview`, `alsoAskedAs` (variants given the same answer, with their volume), `firstSeen`, `lastSeen`, `seed` |
| Every row | `country`, `countryName`, `language`, `scrapedAt` |
| SUMMARY and REPORT.html | top keywords by AI volume; rising and falling fastest; the most AI-heavy keywords; per country totals. Questions: the sites AI cites most and the brands it names most |

### What people use it for

- **GEO and AEO planning:** find the topics people take to AI and write the pages AI cites
- **Content briefs:** the real questions people ask ChatGPT about your topic, with the sites cited for each
- **Keyword priorities:** AI demand next to Google demand, CPC and difficulty, in one row
- **Trend spotting:** keywords rising in AI search month by month, before they show in Google
- **Market sizing:** AI demand for a category in 94 countries
- **Client reporting:** a one-page report for every run, ready to send
- **AI agents:** AI search volume inside any workflow, paid per keyword

### How to use it

1. Enter your **keywords**, one per line, and pick the **countries**.
2. Keep **What to get** on AI search volume, or switch to **questions** to see what people ask AI.
3. Click **Start**. Open the **Report** from the Output tab, or download the table (JSON, CSV, Excel).

### Input

| Field | Example | Notes |
|---|---|---|
| Keywords | `best crm software` | One per line; up to 20 seeds in questions mode |
| What to get | AI search volume | Or questions people ask AI |
| Countries | `US`, `GB`, `DE` | 94 countries; each keyword is measured in each |
| Language | `en` | Optional; empty = each country's main language |
| Add Google metrics | on | Google volume, CPC, competition, difficulty, intent; same price |
| Minimum AI searches a month | `0` | Keywords below it are left out and not charged |
| AI platform (questions) | both | ChatGPT prompts (US) and Google AI Overview searches, each searched on its own |
| Questions per keyword | `100` | Per platform, up to 1,000, highest AI volume first |

### Output

Each result is one row in the run's dataset (download it as JSON, CSV, Excel, XML or HTML, or read it through the API). An example row (values shortened):

```json
{
  "keyword": "best crm software",
  "aiSearchVolume": 928,
  "aiSearchVolumeAvg": 290,
  "aiTrend": {
    "monthly": 120.4,
    "quarterly": 1327.7,
    "yearly": 144.2
  },
  "aiTrendDirection": "rising",
  "aiPeakMonth": "2026-09",
  "dataMonth": "2026-09",
  "aiMonthlySearches": [
    {
      "year": 2025,
      "month": 10,
      "aiSearchVolume": 380
    },
    {
      "year": 2026,
      "month": 6,
      "aiSearchVolume": 65
    },
    {
      "year": 2026,
      "month": 9,
      "aiSearchVolume": 928
    }
  ],
  "googleSearchVolume": 9900,
  "cpc": 41.47,
  "competition": "LOW",
  "keywordDifficulty": 25,
  "intent": "commercial",
  "aiToGoogleRatio": 0.094,
  "country": "US",
  "countryName": "United States",
  "language": "en"
}
```

The run's key-value store also holds `SUMMARY` (the top keywords by AI search volume, the ones rising and falling fastest, the most AI-heavy ones and totals per country; in questions mode the sites AI cites most and the brands it names most, plus notes and what was charged) and `REPORT.html`, the same as a web page (the **Report** link in the Output tab). The example row is from a run on 13 October 2026: AI searches for "best crm software" went from 65 in June to 928 in September, while Google counted 9,900 searches a month.

### Pricing

- **$0.005 per keyword** row ($5 per 1,000), with its AI numbers and, by default, Google's numbers
- **$0.08 per lookup**: one lookup covers up to 700 keywords in one country
- Questions mode: **$0.006 per question** and **$0.40 per question search** (one keyword, one platform, one country)
- Keywords with no AI and no Google searches recorded, keywords below your minimum and failed lookups cost nothing

What typical jobs cost at the list price:

| Job | Cost |
|---|---|
| 10 keywords, one country | $0.13 |
| 100 keywords, one country | $0.58 |
| 1,000 keywords, one country | $5.16 |
| 100 keywords in 3 countries | $1.74 |
| 50 ChatGPT prompts and 50 Google AI Overview searches for one keyword | $1.40 |

On Apify's Scale and Business plans the per-event prices are lower (Store discounts). Set **Maximum cost per run** and the Actor stops cleanly when it is reached: you never pay more than that.

### Tips

- Put up to 700 keywords per country in one run: the lookup fee is shared by all of them.
- AI search volume and Google volume are counted differently: compare keywords with each other (which ones lean towards AI) rather than reading the ratio as an exact share.
- Run questions mode on your main topic, then measure the questions' own wording as keywords.
- Schedule a monthly run: the AI figures are monthly, and the trend shows what is moving.

### Use it through the API

**Python**

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("zaiq/ai-search-volume").call(run_input={"keywords": ["what is a crm", "best crm software"], "countries": ["US"]})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(row)
```

**JavaScript**

```js
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('zaiq/ai-search-volume').call({"keywords": ["what is a crm", "best crm software"], "countries": ["US"]});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
```

**HTTP (one call, results back)**

```bash
curl -X POST 'https://api.apify.com/v2/acts/zaiq~ai-search-volume/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{"keywords": ["what is a crm", "best crm software"], "countries": ["US"]}'
```

### Integrations and schedules

- **Schedules:** run it every hour, day or week from the Apify Console (Schedules) and keep a history of results.
- **Make, Zapier, n8n, Google Sheets, Slack, Airtable:** connect it through Apify's integrations, or send each finished run to a **webhook**.
- **Datasets:** results stay in the run's dataset; export them or read them by API whenever you need them.

### Use it with AI agents (MCP)

Add Apify's MCP server (`https://mcp.apify.com`) to Claude, ChatGPT, Cursor, VS Code or any MCP client. The agent can find this Actor and run it for you: ask it for "the AI search volume and Google search volume of these 50 keywords in the UK". AI agents can also pay for runs directly through Apify's agentic payments.

### Limits

- AI search volume is a search-data provider's estimate. For ChatGPT and for keywords it is modelled from the People Also Ask questions that contain the keyword; for Google AI Overview searches it is the search's Google volume.
- ChatGPT prompts are recorded for the United States in English; Google AI Overview searches cover all 94 countries.
- The AI figures are monthly with 12 months of history; the latest month is the last full month.
- Google figures need keywords of up to 80 characters and 10 words; longer keywords get AI figures only.
- Apify's free plan: 10 keywords in one country, or 10 questions for one keyword.

### FAQ

**What is AI search volume?**

An estimate of how many times a month a keyword is used in AI tools such as ChatGPT and Google's AI answers. Keyword tools have counted Google searches; this counts the questions people take to AI.

**Where does the data come from?**

From a search-data provider's AI keyword database and its database of recorded ChatGPT and Google AI Overview answers (416.8 million answers in 94 countries in October 2026).

**Do I need a ChatGPT, Semrush or Ahrefs account?**

No. No account, no API key and no subscription: you pay per keyword.

**Why can a keyword have more AI searches than Google searches?**

The two are counted in different ways (see Limits). "what is a crm" had 29,350 AI searches and 22,200 Google searches in September 2026: explainer questions lean towards AI, buying searches such as "best crm software" (928 against 9,900) still lean towards Google.

**How fresh are the numbers?**

Monthly. On 13 October 2026 the latest month was September 2026.

**Which countries?**

94, including the United States, United Kingdom, Canada, Australia, India, Germany, France, Spain, Brazil, Japan and South Africa.

### Related Actors from Zaiq

- [llm-mentions-tracker](https://apify.com/zaiq/llm-mentions-tracker): which brands those AI answers name, and your share of voice
- [keyword-research](https://apify.com/zaiq/keyword-research): Google keyword ideas with volume, CPC and difficulty
- [google-ai-mode-tracker](https://apify.com/zaiq/google-ai-mode-tracker): Google AI Mode's answers for your questions
- [ai-answer-tracker](https://apify.com/zaiq/ai-answer-tracker): your brand in ChatGPT, Perplexity, Gemini, Claude and Grok answers

### Support

Questions, a site that changed, or a field you need? Open an issue on this Actor's **Issues** tab: we answer there, usually within a day.

***

Also found as: ai search volume, chatgpt search volume, llm search volume, ai keyword research, geo keyword research, aeo keyword research, chatgpt keyword tool, ai overview keywords, prompt research, chatgpt prompts research, people also ask questions, semrush ai toolkit alternative.

# Actor input Schema

## `mode` (type: `string`):

Volume measures each keyword (AI searches a month, 12-month AI trend, Google volume, CPC, difficulty). Questions finds the real ChatGPT prompts and Google AI Overview searches that contain each keyword, highest AI volume first.

## `keywords` (type: `array`):

Keywords to measure (volume), or seed keywords to find questions for (questions: up to 20). One per line.

## `countries` (type: `array`):

One or more of the 94 countries covered (each keyword is measured in each country). ChatGPT questions exist for the United States only.

## `language` (type: `string`):

Optional language code or name (en, de, fr, Spanish...). Empty = each country's main language.

## `includeGoogleMetrics` (type: `boolean`):

Volume mode: Google's monthly searches, CPC, competition, keyword difficulty, intent and 12-month trend next to the AI numbers, and the AI-to-Google ratio. Same price.

## `minAiSearchVolume` (type: `integer`):

Leave out keywords or questions below this AI search volume. Left-out keywords are not charged.

## `platform` (type: `string`):

Questions mode. ChatGPT prompts are what people type into ChatGPT (United States, English); Google AI Overview searches are the Google searches that show an AI answer (94 countries). Each platform is one question search per keyword.

## `maxQuestions` (type: `integer`):

Questions mode: how many questions per seed keyword, platform and country, highest AI search volume first.

## Actor input object example

```json
{
  "mode": "volume",
  "keywords": [
    "what is a crm",
    "best crm software",
    "crm for small business"
  ],
  "countries": [
    "US"
  ],
  "includeGoogleMetrics": true,
  "minAiSearchVolume": 0,
  "platform": "both",
  "maxQuestions": 100
}
```

# Actor output Schema

## `results` (type: `string`):

Dataset: the results.

## `summary` (type: `string`):

What each input returned, and notes.

## `report` (type: `string`):

A one-page view of the results to open in a browser.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "keywords": [
        "what is a crm",
        "best crm software",
        "crm for small business"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("zaiq/ai-search-volume").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "keywords": [
        "what is a crm",
        "best crm software",
        "crm for small business",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("zaiq/ai-search-volume").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "keywords": [
    "what is a crm",
    "best crm software",
    "crm for small business"
  ]
}' |
apify call zaiq/ai-search-volume --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,zaiq/ai-search-volume"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/MYRC4G0hTCbzTY2Cc/builds/U9VBRm4w10TeJXNFe/openapi.json
