Bing Search API | SERP, Rank Tracking and Ads Data avatar

Bing Search API | SERP, Rank Tracking and Ads Data

Pricing

from $0.01 / 1,000 dataset item storeds

Go to Apify Store
Bing Search API | SERP, Rank Tracking and Ads Data

Bing Search API | SERP, Rank Tracking and Ads Data

Bing Search API for SERP data and Bing rank tracking. Returns organic results with titles, snippets, real URLs and dates, plus ad placements for competitor monitoring. Works as a Bing scraper billed per page rather than per result, so a thin page never costs more than it is worth. MCP ready.

Pricing

from $0.01 / 1,000 dataset item storeds

Rating

0.0

(0)

Developer

John

John

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

6 hours ago

Last modified

Share

Bing Search API

The Bing Search API returns Bing's organic results as clean, structured JSON: titles, snippets, real destination URLs, displayed domains and dates, plus the paid placements if you want them.

Bing is the largest search engine outside Google, and it is where a meaningful share of desktop and enterprise search still happens. If you track rankings, monitor competitors, or feed a research agent, the Google-only picture is an incomplete one.

Most people arrive here wanting Bing rank tracking: the same query run on a schedule so you can watch a position move. That works, and so does one-off SERP extraction.

Use cases

  • Bing rank tracking. Run a query on a schedule and store position with page for an absolute rank over time. Set a location and device to track the market and form factor you actually care about.
  • Competitor ad monitoring. Switch on ad placements and see who is buying against your terms. On commercial queries there are often more ads than organic results.
  • SEO research. Pull titles, snippets and real destination URLs for a keyword set to see how Bing frames a topic differently from Google.
  • Local rank tracking. Set a city and compare what a local searcher sees against the national picture.
  • Content gap analysis. Export page one for a topic cluster and find what is being answered and what is not.
  • Feeding an AI agent. Give an assistant live non-Google search results so its research is not built on a single index.

Input parameters

ParameterTypeRequiredDefaultDescription
querystringyesweb scraping toolsSearch term. Bing operators pass straight through, so site:, filetype:, OR and NOT all work.
max_pagesintegerno1Pages to fetch, 1 to 20. This is the billing unit.
include_adsbooleannofalseAlso return paid placements, marked resultType: "ad". They are on the page you already paid for, so this costs nothing extra.
countrystringnononeTwo letter country code. Cannot be combined with Market.
marketstringnononeLanguage and country pair such as en-US. More precise than Country and takes precedence if both are set.
locationstringnononeCity to search from, such as Seattle, Washington. Use city level for realistic local results.
safe_searchstringnoModerateModerate, Strict or Off.
devicestringnodesktopdesktop, mobile or tablet. Rankings differ between them.

Common values for country, market and location

The ten most used values for each targeting field. Any ISO country code, Microsoft market code or city works; these cover the common cases.

countryMarket it targets
usUnited States
gbUnited Kingdom
caCanada
auAustralia
deGermany
frFrance
esSpain
itItaly
brBrazil
jpJapan
marketLanguage and country
en-USEnglish, United States
en-GBEnglish, United Kingdom
en-CAEnglish, Canada
en-AUEnglish, Australia
de-DEGerman, Germany
fr-FRFrench, France
es-ESSpanish, Spain
it-ITItalian, Italy
pt-BRPortuguese, Brazil
ja-JPJapanese, Japan
location exampleUse for
New York, New YorkLocal rank tracking in NYC
Los Angeles, CaliforniaLA local results
Chicago, IllinoisChicago local results
Houston, TexasHouston local results
Phoenix, ArizonaPhoenix local results
Philadelphia, PennsylvaniaPhiladelphia local results
San Antonio, TexasSan Antonio local results
San Diego, CaliforniaSan Diego local results
Dallas, TexasDallas local results
Seattle, WashingtonSeattle local results

Remember country and market are mutually exclusive; if both are set, market wins.

Example output

{
"resultType": "organic",
"query": "project management software",
"page": 1,
"position": 1,
"title": "Best Project Management Software Compared For 2026",
"snippet": "A side by side comparison of the leading project management platforms.",
"url": "https://example.com/blog/project-management-software/",
"displayedUrl": "https://example.com",
"date": "Apr 13, 2026"
}

url is the real destination. Bing wraps outbound links in a redirect that is opaque and expires, so that wrapper is discarded rather than stored. Combine page and position for an absolute rank. Failures arrive as one resultType: "error" row rather than a crash.

Billed per page, and here is why

Most APIs in this portfolio charge per result. This one charges per page, deliberately, and it is worth understanding before you run it.

Bing gives no way to request a page size, and its organic depth swings hard depending on the query. Measured on the same day:

QueryOrganic resultsAds
web scraping tools10, then 3 on a repeat4
best crm software27
project management software213

Commercial-intent queries, the ones with buyers behind them, are exactly where Bing fills the page with ads and leaves the fewest organic results. Every one of those requests costs the same to serve.

Charging per result would mean the queries you most want to run are the ones priced worst, and it would push us to quietly inflate the unit price to cover the thin pages. Charging per page means you know the cost before you run, a thin page never costs more than it is worth, and there is no incentive to pad. You get every result on the page you paid for.

What the Bing rank tracking API returns

FieldDescription
titleResult headline
snippetDescription text Bing shows
urlThe real destination URL
displayedUrlThe domain as displayed
datePublication date, where Bing reports one
positionRank within the page
pageWhich page it came from
cachedPageUrlBing's cached copy, where one exists
thumbnailPreview image, where supplied

Bing wraps every result link in a redirect. Those wrappers are opaque and they expire, so they are discarded and url carries the real destination. That is the link worth storing.

Ads come free with the page

Switch on ad placements and paid results come back too, marked resultType: "ad". They were already on the page you paid for, so including them costs nothing extra. On commercial queries there are often more ads than organic results, which makes this a practical competitor ad monitor.

How to get started

  1. Enter a search query. Bing operators like site:, filetype:, OR and NOT all work.
  2. Choose how many pages to fetch. One page is usually enough to answer a ranking question.
  3. Optionally set a location or device for local and mobile rank tracking, then run.

View on Apify Store

Prefer to start from working code? The example repo has a Python quick start plus MCP install walkthroughs for Claude, Cursor and ChatGPT.

Pricing

EventWhen it is charged
Page of results returnedOnce per page fetched, whatever that page holds

No per-run setup fee. The current per-page price is on the Actor's Store card and in the Console before you run.

🔌 Use this API from Claude (MCP)

Add this Actor as a tool in Claude Code (free trial), Claude Cowork (free trial), or any other MCP client, via the hosted Apify MCP server. Use this Actor-specific URL:

https://mcp.apify.com/?tools=actors,docs,johnvc/bing-search-api

Setup walkthrough:

Apify MCP integration docs: https://docs.apify.com/platform/integrations/mcp

💸 Pay per run with crypto (x402)

The Bing Search API supports agentic payments via the x402 protocol. AI agents and MCP clients can pay for runs in USDC (on Base) with no Apify account or API token needed: point your agent at the Apify MCP server and it can discover, pay for, and run this Actor autonomously. Read the Apify x402 announcement for details.

🔌 Integrations: put Bing rank tracking on a schedule

Tasks and Schedules first. Save a query as a Task and attach a Schedule. A daily run on your target keywords is what turns a single SERP snapshot into a rank history, and it needs no code.

n8n, Make and Zapier. Trigger the Actor and route rows onward: a ranking drop into Slack, a new competitor on page one into a tracker, or ad rows into a competitive spend sheet.

Storage. Write into Supabase, Postgres or Google Sheets through the Apify integrations tab so rank history accumulates rather than being overwritten.

MCP. Point an AI assistant at the Actor and let it check live rankings mid-conversation. Server URL is in the MCP section above.

Webhooks. Fire an HTTP callback when a run finishes so your service can collect the dataset without polling.

Search coverage beyond Google, and the answer engines that sit on top of it:

Cheaper-looking alternatives such as data_api/bing-search-scraper-cheap exist, but it sits at around 2 users with no published rating. This API is actively maintained, returns the real destination URL rather than an expiring redirect wrapper, and states its billing model and its reliability limits openly.

FAQ

Why did my search return only two results?

Because that is what Bing showed for that query. Commercial queries get filled with ads, leaving very few organic results. Turn on ad placements to see what took the space. This is also the reason the Actor bills per page instead of per result: you are never charged more for a page that happened to come back thin.

Can I track rankings over time?

Yes. Run the same query on a schedule and store position together with page. For an absolute rank across multiple pages, combine the two. Set a location and device to track the specific market and form factor you care about, since rankings genuinely differ between desktop and mobile.

How do I do local rank tracking?

Set the Location field to a city, such as "Seattle, Washington". Give it at city level; broader values produce results that are not representative of what a local searcher sees.

Can I use Bing search operators?

Yes, they pass straight through. site:example.com, filetype:pdf, OR and NOT all work as they do in the Bing web interface.

Why is the URL different from what I see on the Bing results page?

Bing wraps outbound links in a tracking redirect. Those wrappers are long, opaque and expire, so this Actor discards them and returns the real destination URL instead. That is the value you want in a database.

Is this a Bing API or a web scraper?

You use it as an API: a query in, structured JSON out, with a documented schema. It reads public Bing results, so it is not an official Microsoft product and is not affiliated with, endorsed by, or connected to Microsoft.

Can I use it as a bulk Bing scraper?

Yes, up to 20 pages per run. Because billing is per page you know the cost before you start. For large keyword sets, drive it from a Task plus a Schedule or from a workflow tool as described in the Integrations section.

How do I call this from an AI agent using MCP?

Point any Model Context Protocol client at the server URL in the MCP section above. The agent reads the input schema itself and can check a live SERP during a conversation.

What other tools work well alongside this one?

See Related Tools above. Running this beside the Yandex, Baidu, DuckDuckGo and Naver Actors gives you a view of the search landscape that no single engine provides.

Should I expect the same reliability as the Google Actors?

Be honest with yourself here: Bing is a harder target. The source applies bot protection more aggressively on complex queries, so expect a somewhat lower success rate than the Google-family Actors, particularly on long or heavily filtered searches. Straightforward keyword queries are reliable.

Agent Skills

Ready-made skills for Claude Code (free trial) and other agents that drive this Actor. Install with npx skills add johnisanerd/<name>.

n8n integration

Available as an n8n community node, n8n-nodes-bing-search-api. In n8n: Settings, Community Nodes, install n8n-nodes-bing-search-api, then use it in any workflow (it also works as an AI Agent tool).

Ready-to-run examples on the Apify Store.


🌐 About Alpha OSINT

This Actor is part of Alpha OSINT, toolset of financial and operations data sources and APIs. For support or requests for this actor, please start a ticket directly on our support page.

Last Updated: 2026.08.08