# Bing Keyword Search Volume: Bulk Bing Ads Volume & CPC (`plainrows/bing-keyword-search-volume`) Actor

Bing keyword search volume and Bing keyword research tool: Bing Ads search volume, CPC, competition, 12-month history for up to 10,000 keywords per run (batches of 1,000). US, UK, Canada, Australia, Germany, France. Pay $0.0001 per keyword with data, plus $0.15 per batch and a small start fee.

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

## Pricing

from $0.10 / 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

## Bing Keyword Search Volume: Bulk Bing Ads Volume & CPC

Get **Bing keyword search volume, CPC, competition and 12-month history** (the Microsoft Advertising keyword planner metrics) for up to 10,000 keywords per run, **without a Microsoft Ads account**. Bing data covers searches on Bing, Yahoo and AOL: the part of the market Google tools do not show. **You pay $0.0001 per keyword with data, plus $0.15 per batch of up to 1,000 keywords and a small start fee**: keywords with no data are returned for free, so you know they were checked.

### Why not the Microsoft Advertising keyword planner itself?

- **No Microsoft Ads account, no campaign, no billing setup**: paste your keywords and run.
- **Bulk and automatable**: up to 10,000 keywords per run, through the Apify API, n8n, Make, Zapier or AI agents, with clean JSON or CSV output.
- **One row per keyword**, with monthly history, ready for a spreadsheet.

### Typical uses

- Size the Bing / Yahoo / AOL audience of your keywords next to their Google volume.
- Estimate Microsoft Ads budgets with Bing CPC and competition per country.
- Spot seasonality with 12 months of Bing search history.
- Enrich keyword lists in Google Sheets, n8n / Make workflows or AI agents.

### Why this one

- **Batch price**: one fee per 1,000 keywords, not per keyword: 1,000 keywords with data cost about **$0.27** in total.
- **No charge for keywords without data**, nor for a batch the source failed to answer.
- **Hard cost cap**: the run stops before the maximum cost you set.

### What you get for each keyword

| Field | Description |
|---|---|
| `keyword` | Your keyword, lowercased with single spaces (Bing data is lowercase) |
| `found` | `false` when Bing has no volume and no CPC for the keyword (not billed) |
| `searchVolume` | Average monthly Bing searches over the last 12 months |
| `cpc` | Average cost per click on Microsoft Ads, in USD |
| `competition` | Advertiser competition, 0 to 1 |
| `monthlySearches` | Last 12 months or so, oldest first: `{year, month, searchVolume}` |
| `country`, `locationCode`, `languageCode` | Market and language of the data |
| `device`, `searchPartners` | Device type and whether Bing search partners are included |
| `observedAt`, `schemaVersion` | When the data was fetched, row format version |

### Input

- **keywords**: one per line, up to 100 characters each, up to 10,000 per run. Duplicates are removed.
- **country**: United States, United Kingdom, Canada, Australia, Germany or France (the only markets with Bing keyword data).
- **languageCode**: English, French or German (the only languages Bing keyword data exists in). Empty = the country's usual language.
- **device**: all devices (default), desktop, mobile or tablet.
- **includeSearchPartners**: off = Bing, Yahoo and AOL; on = also Microsoft's syndicated search partner sites.
- **speed**: live (default) or standard, see below.

#### Speed: live or standard

Same data, same price. **Live** answers in seconds: best for AI agents and interactive tools. **Standard** goes through the data provider's queue: each batch of up to 1,000 keywords usually takes a few minutes, fine for scheduled or bulk runs. A batch still queued after 10 minutes is not charged: the run stops with a warning, and you can run its keywords again.

### Output example

```json
{
  "keyword": "coffee maker",
  "found": true,
  "searchVolume": 45720,
  "cpc": 2.19,
  "competition": 0.9,
  "monthlySearches": [{ "year": 2025, "month": 9, "searchVolume": 46380 }, "...", { "year": 2026, "month": 9, "searchVolume": 37610 }],
  "country": "US",
  "locationCode": 2840,
  "languageCode": "en",
  "device": "all",
  "searchPartners": false,
  "observedAt": "2026-10-17T09:00:00.000Z",
  "schemaVersion": "1.0"
}
```

### Pricing

- **$0.0001 per keyword with data** (Bing volume or CPC).
- **plus $0.15 per batch**: keywords are sent to the source in batches of up to 1,000; 1 to 1,000 keywords = 1 batch, 1,001 to 2,000 = 2 batches. A batch is charged only once the source has answered.
- **plus a start fee of $0.02 per run.**

Examples: 100 keywords with data cost about **$0.18**; 1,000 keywords with data about **$0.27**. Group your keywords in one run: the batch fee is the same for 1 or 1,000 keywords. No subscription. See the **Pricing** tab for the current prices.
Keywords without data, duplicates and invalid keywords are never billed. Input mistakes (unsupported country or language, empty list) stop the run with a clear message and cost nothing beyond the start fee.
The run never spends more than the maximum cost you set: it stops sending batches before reaching it.

**Free Apify plan:** each run looks up the first 100 keywords (one batch), so you can test the output. A paid Apify plan removes this limit.

### Run summary

Each run also stores a summary in the key-value store (`OUTPUT`): keywords submitted, checked, with data, without data, batches charged, duplicates removed, invalid keywords with the reason, and any keyword skipped because of the free-plan or budget limit.

### Use it from code, automations or AI agents

**API (one call, results returned directly):**

```bash
curl -X POST "https://api.apify.com/v2/acts/plainrows~bing-keyword-search-volume/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"keywords": ["coffee maker", "espresso machine"], "country": "US"}'
```

**n8n, Make, Zapier:** use the Apify integration and pick `plainrows/bing-keyword-search-volume` as the Actor; map the dataset items to your sheet, CRM or database.

**AI agents (MCP):** add `https://mcp.apify.com?tools=plainrows/bing-keyword-search-volume` to Claude, Cursor or any MCP client. The agent gets a typed tool with the input and output schemas of this page and pays per result.

### Limits

- Data comes from Microsoft Advertising (Bing Ads) keyword data via a commercial SEO data provider. Very new or very rare keywords may have no data.
- Search volumes are averages and estimates, not exact counts.
- English, French and German only; the 6 countries listed above.
- This tool is not affiliated with Microsoft. Bing and Microsoft Advertising are trademarks of Microsoft.
- For Google volumes, use [PlainRows Keyword Planner Alternative](https://apify.com/plainrows/keyword-planner-alternative).

### FAQ

**Can I get Bing search volumes without a Microsoft Ads account?**
Yes. Paste your keywords, pick the country and run: no Microsoft account, no ad campaign, no billing setup.

**How do I check the Bing search volume of many keywords at once?**
Paste them in **keywords**, one per line (up to 10,000 per run), pick the country and run. You get one row per keyword with monthly volume, CPC, competition and monthly history.

**Does it include Yahoo and AOL?**
Yes: Bing's network covers Bing, Yahoo and AOL searches. Turn on **includeSearchPartners** to add Microsoft's syndicated partner sites.

**What does it cost for 1,000 keywords?**
$0.0001 per keyword with data, plus $0.15 for the batch and a $0.02 start fee: about $0.27 for 1,000 keywords with data. Keywords without data are free.

**Can I use it in Google Sheets, n8n, Make or an AI agent?**
Yes: through the Apify API, the Apify integrations for n8n, Make and Zapier, or the Apify MCP server (see above).

### More PlainRows tools

Same pay-per-result pricing, same clean JSON, built to chain together in n8n, Make, Zapier or AI agents.

- **SEO and keywords:** [Keyword Search Volume, CPC & Difficulty](https://apify.com/plainrows/keyword-search-volume) · [Keyword Planner Alternative (Bulk Search Volume & CPC)](https://apify.com/plainrows/keyword-planner-alternative) · [Keyword Ideas Generator](https://apify.com/plainrows/keyword-ideas-generator) · [Google Autocomplete & People Also Ask](https://apify.com/plainrows/google-autocomplete-questions) · [Google Trends Explorer](https://apify.com/plainrows/google-trends-explorer) · [Website Organic Traffic & Top Keywords](https://apify.com/plainrows/domain-seo-overview) · [SEO Competitors & Keyword Gap Finder](https://apify.com/plainrows/seo-competitors-keyword-gap) · [Bulk Domain Authority Checker](https://apify.com/plainrows/domain-authority-checker) · [Backlink Checker](https://apify.com/plainrows/backlink-checker) · [Broken Link Checker](https://apify.com/plainrows/broken-link-checker) · [AI Search Visibility Tracker (ChatGPT, Gemini, AI Mode)](https://apify.com/plainrows/ai-search-brand-visibility) · [Google Maps Rank Tracker (Geo-Grid Local SEO)](https://apify.com/plainrows/google-maps-rank-tracker)
- **Leads and companies:** [Google Maps Scraper](https://apify.com/plainrows/google-maps-businesses) · [Google Maps Email Extractor](https://apify.com/plainrows/google-maps-email-extractor) · [Google Maps Businesses Without Website](https://apify.com/plainrows/google-maps-no-website-leads) · [Yellow Pages Australia Scraper](https://apify.com/plainrows/yellowpages-au-scraper) · [Website Technology Checker](https://apify.com/plainrows/website-tech-stack) · [Website Email Extractor](https://apify.com/plainrows/website-email-extractor) · [Contact Details Scraper (Emails, Phones, Socials)](https://apify.com/plainrows/contact-details-scraper) · [ATS Jobs Scraper (Workday, Greenhouse, Lever, Ashby)](https://apify.com/plainrows/ats-job-postings) · [Workday Jobs Scraper](https://apify.com/plainrows/workday-jobs-scraper) · [Greenhouse Jobs Scraper](https://apify.com/plainrows/greenhouse-jobs-scraper) · [Lever Jobs Scraper](https://apify.com/plainrows/lever-jobs-scraper) · [Ashby Jobs Scraper](https://apify.com/plainrows/ashby-jobs-scraper) · [Google Jobs Scraper](https://apify.com/plainrows/google-jobs-scraper) · [Reed.co.uk Jobs Scraper (UK)](https://apify.com/plainrows/reed-jobs-scraper) · [Google Ads Scraper (Transparency Center)](https://apify.com/plainrows/google-ads-transparency) · [Company Registry Lookup (SIRENE, LEI, Brreg)](https://apify.com/plainrows/company-registry-lookup) · [Public Tenders Search (EU TED & UK)](https://apify.com/plainrows/public-tenders-search)
- **E-commerce and travel:** [Amazon Product Search Scraper](https://apify.com/plainrows/amazon-product-search) · [Amazon Best Sellers Scraper](https://apify.com/plainrows/amazon-bestsellers-scraper) · [Amazon Reviews Scraper](https://apify.com/plainrows/amazon-reviews-scraper) · [Google Shopping Prices Scraper](https://apify.com/plainrows/google-shopping-prices) · [Google Hotels Prices Scraper](https://apify.com/plainrows/google-hotels-prices) · [Google Hotels Scraper](https://apify.com/plainrows/google-hotels-scraper) · [Tripadvisor Reviews Scraper](https://apify.com/plainrows/tripadvisor-reviews) · [Trustpilot Reviews Scraper](https://apify.com/plainrows/trustpilot-reviews)
- **Marketplaces and classifieds:** [AliExpress Scraper](https://apify.com/plainrows/aliexpress-scraper) · [Kleinanzeigen Scraper (Germany)](https://apify.com/plainrows/kleinanzeigen-scraper) · [AutoScout24 Scraper (Cars, Europe)](https://apify.com/plainrows/autoscout24-scraper) · [Kijiji Scraper (Canada)](https://apify.com/plainrows/kijiji-scraper) · [Marktplaats Scraper (Netherlands)](https://apify.com/plainrows/marktplaats-scraper) · [Property Finder Scraper (UAE)](https://apify.com/plainrows/propertyfinder-scraper) · [Redfin Scraper (US Homes for Sale)](https://apify.com/plainrows/redfin-scraper) · [Otomoto Scraper (Polish Car Listings)](https://apify.com/plainrows/otomoto-scraper) · [Otodom Scraper (Poland Property)](https://apify.com/plainrows/otodom-scraper) · [Imovirtual Scraper (Portugal Property)](https://apify.com/plainrows/imovirtual-scraper) · [Standvirtual Scraper (Portugal Cars)](https://apify.com/plainrows/standvirtual-scraper) · [Blocket Scraper (Sweden)](https://apify.com/plainrows/blocket-scraper) · [FINN.no Scraper (Norway)](https://apify.com/plainrows/finn-scraper) · [coches.net Scraper (Spain Cars)](https://apify.com/plainrows/coches-net-scraper) · [2dehands Scraper (Belgium)](https://apify.com/plainrows/2dehands-scraper) · [Storia Scraper (Romania Property)](https://apify.com/plainrows/storia-scraper) · [FINN.no Car Scraper (Norway Cars)](https://apify.com/plainrows/finn-cars-scraper) · [DBA Scraper (Denmark)](https://apify.com/plainrows/dba-scraper)
- **Content and media:** [Google News Scraper](https://apify.com/plainrows/google-news-scraper) · [YouTube Search Scraper](https://apify.com/plainrows/youtube-search-scraper) · [YouTube Search API (JSON)](https://apify.com/plainrows/youtube-search-api) · [YouTube Comments Scraper](https://apify.com/plainrows/youtube-comments-scraper) · [Google Images Scraper](https://apify.com/plainrows/google-images-scraper) · [Website Screenshot API](https://apify.com/plainrows/website-screenshot) · [Google Maps Reviews Scraper](https://apify.com/plainrows/google-maps-reviews) · [Google Reviews Scraper](https://apify.com/plainrows/google-reviews-scraper) · [App Store & Google Play Reviews Scraper](https://apify.com/plainrows/app-reviews-scraper) · [Google Play Reviews Scraper](https://apify.com/plainrows/google-play-reviews-scraper) · [App Store Reviews Scraper](https://apify.com/plainrows/app-store-reviews-scraper)

### Support

Found a bug or need a field? Open an issue on this page. Issues are read and answered.

# Actor input Schema

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

Keywords to look up on Bing, one per line (up to 100 characters each; they are lowercased, duplicates removed). Up to 10,000 keywords per run, sent to the source in batches of 1,000: each batch costs one batch fee, so group your keywords in one run.

## `country` (type: `string`):

Bing Ads market the volumes are for.

## `languageCode` (type: `string`):

Language of the searches. Bing keyword data exists in English, French and German only. Empty = the country's usual language (English, or German for DE/AT/CH, French for FR/BE).

## `device` (type: `string`):

Volumes for all devices or one device type.

## `includeSearchPartners` (type: `boolean`):

Off: Bing, AOL and Yahoo searches. On: also Microsoft's syndicated search partner sites.

## `speed` (type: `string`):

Live (default) gets the data in seconds. Standard sends the same request through the data provider's queue: same data and same price for you, but each batch of up to 1,000 keywords usually takes a few minutes (a batch still queued after 10 minutes is not charged and the run stops with a warning). Use live for AI agents and interactive tools, standard for scheduled or bulk runs.

## Actor input object example

```json
{
  "keywords": [
    "coffee maker",
    "espresso machine",
    "french press"
  ],
  "country": "US",
  "device": "all",
  "includeSearchPartners": false,
  "speed": "live"
}
```

# Actor output Schema

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

No description

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

No description

# 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": [
        "coffee maker",
        "espresso machine",
        "french press"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("plainrows/bing-keyword-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": [
        "coffee maker",
        "espresso machine",
        "french press",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("plainrows/bing-keyword-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": [
    "coffee maker",
    "espresso machine",
    "french press"
  ]
}' |
apify call plainrows/bing-keyword-search-volume --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,plainrows/bing-keyword-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/nwaRk7J2JOJs2eYJq/builds/ae0XUGa8cese8D0aN/openapi.json
