Microsoft Ad Library Lookup: Is This Company Advertising
Pricing
from $9.12 / 1,000 advertiser founds
Microsoft Ad Library Lookup: Is This Company Advertising
Microsoft ad library checker: is this company running bing ads in the EU? Microsoft advertiser lookup EU by company name. One row per company: ads in the queried market, sample titles. Misses are free.
Pricing
from $9.12 / 1,000 advertiser founds
Rating
0.0
(0)
Developer
Adrian Voss
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
Paste a list of company or brand names. Get back one row per company telling you whether it is advertising on Microsoft Advertising (Bing) in an EU/EEA market, with the ad count Microsoft itself reports and a handful of sample titles. Data comes straight from Microsoft's own Ad Library, the EU DSA public register of ads served on Microsoft Advertising.
Who it's for
- Outbound and RevOps teams enriching a lead list: "is this company running Bing ads?" is a budget-and-intent signal you can filter on in Clay, n8n, or a spreadsheet.
- Agencies prospecting for ad clients: find companies that are already advertising on Microsoft Advertising (they have budget) or not yet advertising in the EU (they need you).
- Competitor and market analysts who want a quick per-company read — active Microsoft ad program in a given EU market or not, how many ads, which titles — without scraping thousands of creatives.
- AI agents that need a single structured answer per company, callable over plain HTTP.
Why this one
Every other Microsoft Ads actor on Apify is a bulk creative scraper: you give it a query, it downloads individual ads, and you pay per ad. Fine for building a creative-intelligence archive; the wrong tool for enriching a 5,000-row lead list, where you'd pay for hundreds of ads from one company just to learn "yes, they advertise."
This actor asks the opposite question: one input company → one output row, sized and priced as an enrichment column, matching the same approach as this portfolio's LinkedIn Ads Presence Lookup and Google Ads Presence Lookup.
- One row per company, not one per ad. Predictable output, predictable cost.
- Never charged for a miss. A company with no advertiser match, or a match with zero ads in the market you queried, costs you nothing.
- Name match only — and that's honest, not hidden. Microsoft's Advertisers search has no domain filter. Paste the brand or legal name, not
nike.com. - Match confidence on every hit. Exact name, verified advertiser, or a fuzzy top result — you can tell which one you got.
Coverage
This reads Microsoft's own EU DSA ad repository, so only ads served in the EU/EEA to the market you query are visible. A US-only Bing advertiser will never show here, and that is the repository's own scope, not a bug.
What you get
One dataset row per input, with these columns (all included by default; select fewer with the columns input):
| Column | Meaning |
|---|---|
advertiserId | Microsoft's advertiser id for the matched account |
advertiserName | Advertiser name as Microsoft lists it |
advertiserCountry | Country Microsoft has on the advertiser |
isVerified | Whether Microsoft marks the advertiser as verified |
adCountInMarket | Ads in the queried EU/EEA market (@odata.count from the Ads call) |
sampleAdTitles | Up to maxAdsPerCompany titles (default 5). A sample, not a dump. |
sampleDestinationUrl | Destination URL from the first sample ad (never an internal ad id) |
market | The two-letter market you queried |
matchConfidence | exact, verified, or fuzzy |
A miss comes back as "found": false and is never charged.
How to use Microsoft Ad Library Lookup: Is This Company Advertising
- In the Apify Console. Open the actor page and click Start — the
itemsfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~microsoft-ads-presence-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"items":["Nike","Adidas"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
Input
{"items": ["Nike","Adidas"]}
One company or brand name per line. Microsoft's Ad Library matches by advertiser name only — there is no domain search. Paste the name as it appears on the ads. Accepted formats: Nike, Adidas, Samsung.
Sample output
| query | found | status | advertiserId | advertiserName | advertiserCountry | isVerified | adCountInMarket | sampleAdTitles | sampleDestinationUrl | market | matchConfidence | scrapedAt |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nike | true | OK | <verified advertiser?> | 1970-01-01T00:00:00.000Z |
Example runs
Three inputs that return real rows, with no key or account of your own. Each one is a keyless prefill.
1. Check whether Nike and Adidas advertise on Microsoft Advertising in Germany.
{"items": ["Nike", "Adidas"],"market": "DE"}
2. Same list, hide the misses so a Clay or n8n step only keeps companies that are actually running ads.
{"items": ["Nike", "Adidas"],"market": "DE","onlyFound": true}
3. Single-company enrichment column — the shape a prospecting workflow maps one name into.
{"items": ["Nike"],"market": "DE"}
Pricing
$12 per 1,000 companies or brands, plus a $0.00005 start fee. Misses (found:false) are never charged.
A search with zero advertiser matches, or a matched advertiser with zero ads in that market, is never charged.
Use it from Clay, n8n, Make, or an AI agent
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~microsoft-ads-presence-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"items":["Nike","Adidas"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~microsoft-ads-presence-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"items":["Nike","Adidas"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~microsoft-ads-presence-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"items":["{{company or brand}}"]}, mapping the row's company or brand into the items array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "microsoft ads library checker by company name" — the agent will find and run this actor.
Tips
- Use the advertiser name, not a domain.
nike.comwill likely miss.NikeorNike - EMEAmatches. matchConfidencetells you how the name was resolved.exactis a case-insensitive name match,verifiedis Microsoft's verified advertiser,fuzzyis the top remaining result. If several companies look plausible and none is exact or verified, you still get the top result, withfuzzyso you can decide.- Pick the market that matches the ads you care about. Default is Germany (
DE). Ads shown only in France will not appear on aDErun. adCountInMarketis Microsoft's own count for that market, not the length of the sample. The sample is capped atmaxAdsPerCompany(default 5).- A US-only advertiser is a miss here. See Coverage.
FAQ
What does "no ads found" (found: false) actually mean?
Either no advertiser matched that name in Microsoft's Ad Library, or the matched advertiser has zero ads in the market you queried. It is never charged.
Can I search by domain? No. Microsoft's Advertisers search is name-only. Use the brand or company name.
Does this download the actual ad creatives? No. You get a sample of titles and one destination URL. If you need every creative's media, use a bulk creative scraper; this actor is the cheap per-company presence check.
Is this legal? The Ad Library is Microsoft's own public EU DSA transparency register. This actor reads only that public data — no login, no personal data.
Related actors
- LinkedIn Ads Presence Lookup — the same enrichment-column approach for LinkedIn Ads.
- Google Ads Presence Lookup — the same approach for Google Ads, with domain matching.
- Meta Ads Presence Lookup — the same approach for Meta/Facebook/Instagram ads.
If this saved you a scrape, a rating on the Store page helps other buyers find it.