~ / 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
the wall

Why Bing makes Bing Ads Results data hard

Bing exposes no API for the ads that run on its SERP, and the ad blocks render only on commercial queries and only when Bing server-renders them for a given request. When they are present, our scraper reads the top, bottom, and sidebar ad units and returns each as clean JSON with its landing link decoded; when they are not, the ads array is simply omitted rather than faked.

kickoff

The Bing Ads Results Scraper API, one request away

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"])
accepted params

Parameters

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.
the payload

Fields returned by the Bing Ads Results Scraper API

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.
workflows

What this data is good 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.
>

Auction and coverage insight

Note which queries surface ads and how many, so you can prioritize the terms where paid competition is heaviest.
>

Compliance and brand safety

Scan ads on your brand terms to catch competitors or affiliates bidding on your name and running off-brand copy.
under the hood

Why our Bing Ads Results Scraper API is reliable

When Bing renders ad units for a query, our scraper reads the top, bottom, and sidebar ads and returns each with its title, decoded landing link, displayed link, snippet, and sitelinks as clean JSON on the same call as the organic results. The ad parser is defensive, so on queries with no ads the block is omitted rather than faked, and every request runs through rotating proxies with anti-bot handling and retries at a 2.6s median.

*

Top, bottom, and sidebar ads

The parser resolves ad units across Bing's ad containers, deduped, and returns them in the ads array when present.
*

Decoded landing links

Each ad's link is unwrapped from Bing's ck/a redirect to the real landing URL rather than a tracking link.
*

Ad sitelinks captured

When an ad carries extension links, they return as title and link pairs in the ad's sitelinks array.
*

Ads on the organic call

You do not call a separate endpoint. The ads block attaches to the same bing/search response as the organic results.
*

Honest when absent

Ads render only on commercial queries and only when Bing serves them, so the array is omitted rather than fabricated when there are none.
*

Anti-bot and proxy rotation

Requests escalate through datacenter and residential proxy tiers with anti-bot handling if a block is detected.
weigh it up

Choosing between the Bing Ads Results Scraper API and the Bing API

Our APIDIY (requests / headless)Bing Web Search API (Azure)
SERP ad listingsParsed when Bing renders themYou write the ad selectorsNo ad data in the API
Ad landing linksDecoded to the real URLYou decode ck/a redirects yourselfNot applicable
Ad sitelinksCaptured as title + linkExtra parsing per adNot applicable
AvailabilityLive and maintainedDepends on your setupClosed to new customers, sunsetting
SetupAPI key onlyProxies, headless browser, parsersAzure account and resource keys
DeliveryOn the organic call, no extra requestExtra parsing per blockNot applicable
price

Straightforward 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.

Build with ads results api data
Begin free with 1,000 requests, no credit card.
Get a free API key Full endpoint list