~ / endpoints / Ads Results API

Bing Ads Results Scraper API

Our Bing ads results scraper reads the paid listings on a Bing search results page, returning each ad's title, decoded landing link, displayed link, snippet, and any ad sitelinks as JSON on the same call that fetches the organic results.

Get a free API keyFull endpoint list
1,000
free requests / mo
2.6s
median response
JSON
structured output
1
call for the SERP

Quickstart

cURL
curl "https://api.bingscraperapi.com/api/v1/bing/search?q=car+insurance+quotes&api_key=$API_KEY"
Python
import requests

BASE = "https://api.bingscraperapi.com"
API_KEY = "YOUR_API_KEY"

# Commercial queries are the ones that carry ads on the SERP.
data = requests.get(
    f"{BASE}/api/v1/bing/search",
    params={"q": "car insurance quotes", "api_key": API_KEY},
    timeout=30,
).json()

# The ads array is present only when Bing renders ad units for this request.
for ad in data.get("ads", []):
    print(ad["position"], ad["title"])
    print("  ", ad["link"], "|", ad["displayed_link"])
    for sl in ad.get("sitelinks", []):
        print("    sitelink:", sl["title"], "->", sl["link"])

Response

200 OK
{
  "query": "car insurance quotes",
  "engine": "bing",
  "results_count": 9,
  "ads": [
    {
      "position": 1,
      "title": "Compare Car Insurance Quotes - Save on Your Policy Today",
      "link": "https://www.example-insurer.com/quotes",
      "displayed_link": "www.example-insurer.com/car-insurance",
      "snippet": "Get a free quote in minutes. Compare coverage from top providers and switch online.",
      "sitelinks": [
        { "title": "Get a Free Quote", "link": "https://www.example-insurer.com/quote" },
        { "title": "Coverage Options", "link": "https://www.example-insurer.com/coverage" }
      ]
    }
  ]
}
FieldTypeDescription
adsarrayThe paid listings on the SERP. Present only when Bing server-renders ad units for the request; omitted otherwise.
ads[].positionintegerOrder of the ad among the ad units, starting at 1.
ads[].titlestringThe ad headline text.
ads[].linkstringThe ad's landing URL, decoded from Bing's redirect wrapper.
ads[].displayed_linkstringThe visible display URL shown under the headline, or null.
ads[].snippetstringThe ad's description text, or null when none is shown.
ads[].sitelinksarrayAd extension links under the ad, each with title and link. Present only when the ad has them.

Params

ParameterRequiredDefaultNotes
qrequired-The search query. Commercial and transactional queries are the ones that carry ads on the Bing SERP.
urloptional-A full bing.com/search URL to parse instead of building one from q. Pass q or url.
countryoptionalUSTwo-letter market region, e.g. GB or DE. Sets mkt=en-XX so the SERP is the stable national one. Defaults to US.
countoptional10Number of organic results to request alongside the ads, 1 to 50. Defaults to 10.
api_keyrequired-Your API key, passed as a query parameter. Get one free at signup.

Use it for

>

Competitor ad monitoring

Query your commercial keywords and read the ads array to see which advertisers are bidding, what headlines they run, and where they land.
>

Ad copy research

Collect the titles, snippets, and sitelinks competitors use on Bing to inform your own paid-search creative and offers.
>

Share-of-voice checks

Track how often your brand and rivals appear in the ad slots for a keyword set to gauge paid presence on Bing over time.
>

Landing-page discovery

Use the decoded ad links to see exactly which landing pages competitors point their Bing ads at.

How it works

  1. Send a GET request with your target and API key.
  2. We route through residential proxies, handle anti-bot, and parse the response.
  3. You get validated JSON back, ready to use.

Pricing

PlanPriceBest for
Free1,000 requestsTesting and small jobs
Pro$0.60 / 1kProduction workloads
Pay-as-you-go$0.90 / 1kSpiky or one-off volume

Median response 2.6s. You only pay for successful requests.

FAQ

What is a Bing ads results scraper?

A Bing ads results scraper reads the paid listings on a Bing search results page and returns them in a structured format. Our API returns each ad's position, title, decoded landing link, displayed link, snippet, and any ad sitelinks as JSON, on the same call as the organic results, whenever Bing renders ad units for the query.

Does every query return ads?

No. Ads appear on commercial and transactional queries, and even then Bing server-renders the ad blocks only for some requests. The ads array is present when Bing serves ad units and omitted when it does not. We never fabricate ads to fill the block, so an empty result means Bing showed none for that request, which is common on informational queries.

Which queries are most likely to show ads?

Commercial-intent queries with buyers behind them, for example insurance, software, travel, and product terms, are the ones that carry ads. Informational queries like a how-to or a definition usually show no ads. To monitor competitor ads, query the commercial keywords in your space rather than broad informational terms.

Are the ad landing links the real destination?

Yes. Bing wraps ad links in the same ck/a redirect it uses for organic results, and our scraper decodes them to the real landing URL in the ad's link field. Ad sitelinks are decoded the same way, so both point straight at the advertiser's pages rather than a bing.com tracking link.

Can I track competitor ads over time?

Yes. Query your commercial keywords on a schedule and store the ads array from each response. Comparing the advertisers, headlines, snippets, and landing links across runs shows who enters and leaves the auction and how their copy changes, which is the basis for a Bing share-of-voice and ad-monitoring workflow.

Is scraping Bing ad results allowed?

Scraping publicly visible SERP elements, including the ads Bing shows to any logged-out visitor, is generally treated as lower risk than scraping data behind a login. This is not legal advice: you are responsible for respecting Bing's terms and the laws in your jurisdiction, and for using the data for research such as competitive monitoring rather than republishing ad creative wholesale.

Get ads results api as JSON
Free plan, 1,000 requests. No credit card required.
Get a free API key All endpoints