Bing Search Scraper
Pricing
from $3.90 / 1,000 results
Bing Search Scraper
Bing Search Scraper pulls organic results, ads, and related searches from Bing for any keyword. Good for rank tracking, SERP research, and watching what shows up for your competitors.
Pricing
from $3.90 / 1,000 results
Rating
0.0
(0)
Developer
Kawsar
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Bing Search Scraper fetches organic results, ads, and related searches from Bing for any keyword you give it. Pass in a list of queries; get back ranked results with real destination URLs, titles, snippets, and positions. It pages through results automatically, so pulling 50 results per query is the same input effort as pulling 10. Output goes into Apify's dataset and exports to JSON, CSV, or Excel.
Worth noting upfront: this scrapes Bing specifically, not Google. If you're tracking rankings on both, you'll need both.
What it does
For each query, it loads the Bing results page and extracts:
- Organic results — title, real destination URL, display URL, snippet text, and rank position
- Ads — same fields as organic, labeled separately with
isAd: true - Featured snippets — the answer box Bing shows for definition, how-to, and fact queries
- Related searches — the suggestion links at the bottom of each page
- Estimated result count — the total results count Bing reports (e.g. "About 1,230,000,000 results")
When you ask for more than 10 results, it paginates automatically.
Input
| Field | Required | Default | Description |
|---|---|---|---|
queries | Yes | — | One or more search keywords to scrape |
maxResults | No | 10 | Max results per keyword (up to 50) |
market | No | en-US | Bing regional index code |
safeSearch | No | Moderate | Off, Moderate, or Strict |
freshness | No | All time | Filter by Day, Week, or Month |
language | No | en | Interface language code |
maxItems | No | 100 | Total dataset cap across all queries |
requestTimeoutSecs | No | 30 | Per-request timeout in seconds |
Market codes (common examples)
| Market | Code | Market | Code |
|---|---|---|---|
| United States | en-US | Germany | de-DE |
| United Kingdom | en-GB | France | fr-FR |
| Canada | en-CA | Spain | es-ES |
| Australia | en-AU | Italy | it-IT |
| India | en-IN | Japan | ja-JP |
| Brazil | pt-BR | Netherlands | nl-NL |
| Mexico | es-MX | Poland | pl-PL |
Language codes (common examples)
en, de, fr, es, it, pt, nl, ja, ko, zh-Hans, ar, ru
Example inputs
Basic keyword search:
{"queries": ["best laptops 2024", "restaurants in NYC"],"maxResults": 20,"market": "en-US","safeSearch": "Moderate"}
Multi-market SEO comparison:
{"queries": ["buy running shoes"],"maxResults": 30,"market": "en-GB","language": "en","safeSearch": "Off"}
Recent news only:
{"queries": ["OpenAI news", "AI regulation update"],"maxResults": 10,"freshness": "Day","market": "en-US"}
German-language results:
{"queries": ["beste Laptops 2024"],"maxResults": 20,"market": "de-DE","language": "de"}
Output fields
Each row in the dataset represents one search result:
| Field | Type | Description |
|---|---|---|
query | string | The search query that produced this result |
position | integer | Rank position (1 = top result). Null for ads |
resultType | string | organic or ad |
pageTitle | string | The result's page title |
url | string | Real destination URL (decoded from Bing's redirect) |
displayUrl | string | Short URL shown in the search result |
snippet | string | Description text shown under the title |
isAd | boolean | true if the result is a sponsored ad |
isFeaturedSnippet | boolean | true if pulled from an answer box |
featuredSnippetText | string | Answer box text (null if no featured snippet) |
relatedSearches | array | List of related search queries from the page |
totalResultsEstimate | string | Bing's estimated result count for the query |
market | string | Market code used for this query |
language | string | Language code used |
safeSearch | string | Safe search level applied |
scrapedAt | string | ISO 8601 timestamp of when the result was scraped |
Example output
{"query": "best laptops 2024","position": 1,"resultType": "organic","pageTitle": "Best Laptops 2024: Our Top Picks - PCMag","url": "https://www.pcmag.com/picks/the-best-laptops","displayUrl": "https://www.pcmag.com › picks › the-best-laptops","snippet": "We test and review hundreds of laptops every year. Here are our top picks across all categories for every budget.","isAd": false,"isFeaturedSnippet": false,"featuredSnippetText": null,"relatedSearches": ["best laptop 2024 under 1000","best gaming laptop 2024","best budget laptop 2024","best MacBook 2024"],"totalResultsEstimate": "About 4,120,000,000 results","market": "en-US","language": "en","safeSearch": "Moderate","scrapedAt": "2024-01-15T10:30:00.000000+00:00"}
What people use it for
SEO rank tracking on Bing — Bing holds a significant share of desktop and enterprise search traffic (especially in the US, Germany, and Japan). Track where your pages rank and how snippets change over time.
Competitor SERP monitoring — Pull the top 20 results for your target keywords weekly. See which competitors are entering or leaving the top positions and what their title/snippet changes look like.
Keyword research — Run a batch of candidate keywords and collect the related searches from each SERP. These are real user queries that Bing surfaces, useful for expanding keyword clusters.
Multi-market research — Run the same queries across different market codes (en-US, en-GB, de-DE, fr-FR) to see how Bing's index differs by country. Useful for international SEO and localization research.
Content gap analysis — Pull the top 10 results for your target keyword, collect the snippets, and analyze what topics and angles the ranking pages cover that yours might not.
News and trend monitoring — Use freshness: "Day" or freshness: "Week" to track what's ranking for trending topics in near-real time.
Ad intelligence — The actor captures sponsored results separately (isAd: true). Use this to monitor which advertisers are bidding on your target keywords and what their ad copy says.
Scheduling and automation
To run this actor on a schedule:
- Go to your actor's page on Apify and click Schedules
- Set the interval (daily, weekly, etc.)
- Save the same input configuration you're using for your keyword set
- Results will accumulate in the dataset over time
For large keyword sets, consider splitting them across multiple runs with different maxItems caps to stay within your plan limits.
Exporting data
From the Apify dataset view:
- JSON — full structured output, all fields
- CSV — flat table, good for Excel or Google Sheets
- JSONL — line-delimited JSON, useful for streaming pipelines
- XML — for legacy integrations
The relatedSearches field is an array and will be joined as a comma-separated string in CSV exports.
Known limitations
Results are a snapshot. Run the same query again an hour later and you may get a slightly different set, since Bing personalizes results by location and session.
Bing changes its page structure occasionally. When that happens, snippet or URL extraction may stop working until the selectors are updated.
Large query batches take time. The actor waits between requests to avoid hitting rate limits, so 100 queries with 10 results each will take several minutes.
The freshness filter applies to the whole page, not individual results. Some results on a "Day" filtered page may still be older if Bing considers them highly relevant.
Featured snippets only appear for certain query types (definitions, how-to questions, fact queries). For most commercial or navigational queries, featuredSnippetText will be null.