LinkedIn Ad Library Scraper | Ads & Targeting | $0.50/1K avatar

LinkedIn Ad Library Scraper | Ads & Targeting | $0.50/1K

Pricing

from $0.40 / 1,000 ads

Go to Apify Store
LinkedIn Ad Library Scraper | Ads & Targeting | $0.50/1K

LinkedIn Ad Library Scraper | Ads & Targeting | $0.50/1K

LinkedIn Ad Library Scraper and LinkedIn Ads API: competitor ads by company, keyword or payer for $0.50/1K. Impressions by country, targeting, payer, dates and CTA. No login.

Pricing

from $0.40 / 1,000 ads

Rating

0.0

(0)

Developer

Monkey D. Scraping

Monkey D. Scraping

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 hours ago

Last modified

Security

Limited permissions

Share

LinkedIn Ad Library Scraper | Ads & Targeting | $0.50/1K

LinkedIn Ad Library Scraper exports ads from the public LinkedIn Ad Library by company, keyword or payer. Get ad text, headline, creative, format and advertiser for $0.50 per 1,000 ads, platform usage included. Add payer, run dates, call to action, total impressions, impressions by country and targeting (languages, locations, audience, company, job and more) for $0.80 per 1,000 ads. No LinkedIn account, login or cookies needed.

Also known as: LinkedIn Ads Library scraper, LinkedIn Ad Library API, LinkedIn competitor ads scraper, LinkedIn ads spy tool.

Built for B2B marketers, agencies, SaaS teams, sales and analysts who want to see what competitors advertise on LinkedIn, which messages and offers they test, where their ads are seen and whom they target.

Why choose this LinkedIn Ad Library scraper?

  • Full details at a low, all-inclusive price. $0.50 per 1,000 ads, or $1.30 with full details. Platform usage (compute and proxies) is included. No start fee. Popular LinkedIn ad scrapers in the Apify Store charge $1–$5 per 1,000 ads, and the most used one $4 per 1,000 with details on the free plan (checked on 6 November 2026).
  • Impressions by country, not just a total. Every country LinkedIn reports, with its share of impressions, plus the total impression range as text and as numbers you can sort.
  • Landing pages with UTM parameters. The ad's destination link, its domain and its UTM parameters (source, medium, campaign...), so you see where competitors send traffic and how they name their campaigns.
  • Every format, with its media. Video files and cover, document title, page count and link, carousel cards with title and image, message ads with sender and full text, advertiser logo.
  • No result cap on the free plan. Some LinkedIn ad scrapers stop at 30 or 300 results until you pay or rent. This one returns as many ads as you ask for, at the same price.
  • Targeting you can analyse. Targeted and excluded languages and locations (including the hidden "and 23 others" list), and which targeting parameters were used or excluded: audience, demographic, company, education, job, member interests and traits.
  • Search by company, keyword or payer, with country, date, ad format and impressions range filters, or paste a LinkedIn Ad Library search URL. Turn on Only this exact advertiser to skip partners and resellers whose name contains the brand.
  • You never pay for gaps. Duplicate ads are free. Details are charged only when they were actually obtained. Ad IDs that cannot be read are not charged.
  • Every ad found is delivered. The search runs first, then details are added. If LinkedIn slows down or the run nears its time limit, the remaining ads are still delivered (without details, which are then not charged). The status message shows progress live.
  • No login, no cookies, no LinkedIn account.

What can you use it for?

  • Competitor ad research: every LinkedIn ad a competitor runs, with full text, headline, creative, CTA and dates.
  • B2B messaging and offer ideas: search a keyword (for example crm, cybersecurity or webinar) and see how companies position themselves.
  • Reach and market analysis: which countries a campaign reached and how impressions are split.
  • Targeting analysis: which languages, locations and audience criteria advertisers select or exclude.
  • Lead generation: find which companies advertise on LinkedIn in a niche and who pays for their ads (often the agency).
  • Monitoring with schedules or API: run the same search weekly and compare results by adId. For new and disappeared ads between runs, see the LinkedIn Ad Library Change Monitor below.

What data do you get?

FieldDescriptionAd ($0.50/1K)Details (+$0.80/1K)
adId, adUrlAd ID and link to the ad in the LinkedIn Ad Library✅✅
advertiserNameAdvertiser shown on the ad✅✅
format, formatLabelsingle-image, video, carousel, document, event, message, text, spotlight and others✅✅
adText, headline, imageUrlsAd text (shortened in search results, full with details), headline and creative images✅✅
advertiserUrl, advertiserCompanyIdLinkedIn company page and ID—✅
paidByWho paid for the ad (company or agency)—✅
ctaTextCall to action button—✅
clickUrl, landingDomain, utmParametersLanding page of the ad, its domain and UTM parameters, when LinkedIn publishes the link—✅
videoUrls, videoPosterUrlVideo files (best quality first) and cover image—✅
documentTitle, documentPageCount, documentUrlDocument ads: file title, pages and link—✅
carouselCardsCarousel ads: each card's title and image—✅
messageSender, messageTextMessage (InMail) ads: sender and full message—✅
advertiserLogoUrl, textLinksAdvertiser logo and links written in the ad text—✅
daysRunning, isActiveDays the ad ran and whether it ran in the last two days—✅ (EU)
firstShown, lastShownRun dates (YYYY-MM-DD)—✅ (EU)
totalImpressions, totalImpressionsMin, totalImpressionsMaxTotal impressions range, as text and numbers—✅ (EU)
impressionsByCountryEvery country with its share of impressions—✅ (EU)
targetingLanguages, targetingLocations (+ Excluded)Targeted and excluded languages and locations—✅ (EU)
targetingParametersAudience, demographic, company, education, job, interests: targeted or excluded—✅ (EU)

Every row also has searchTerm, searchBy, searchCountry, detailsIncluded, euData and scrapedAt.

(EU): LinkedIn publishes dates, impressions and targeting for ads shown in the European Union. For other ads these fields are empty (euData: false); advertiser, payer, format, text and CTA are still returned.

How much does it cost?

You pay only for results. Platform usage is included.

What you getFree and Starter plansScale planBusiness plan and above
Ads only (details off), per 1,000 ads$0.50$0.45$0.40
Ads with full details (default), per 1,000 ads$1.30$1.05$0.90

For example, 100 ads with full details cost $0.13 on the free plan. Prices are per result with platform usage included; the exact price for your plan is shown on the pricing tab.

  • Duplicate ads are removed and not charged.
  • Details are charged only when they were actually obtained for that ad.
  • An ad requested by ID whose details cannot be read is not charged.
  • Set a maximum cost per run in Apify Console and the run stops when it is reached.

Same input, same day (6 November 2026): advertiser hubspot, 30 ads with details, free Apify plan.

This ActorPopular alternative
Ads with details30 / 3030 / 30 (free plan capped at 30)
Landing page✅ with UTM parameters✅ without UTM parameters
Price paid$0.039$0.045
Run time2 min 24 s18 s

The alternative is faster on small runs; this Actor is cheaper, has no free-plan cap and returns UTM parameters, media and the full targeting lists.

Measured on real searches

Runs from 6 November 2026, default settings:

SearchResultRun time
hubspot, 100 ads with details100 / 100 with details, 56 with EU impressions and targeting6 min 51 s
keyword crm, Germany, 50 ads with details50 / 50 with details, 26 advertisers3 min 17 s
salesforce, 500 ads without details500 / 5002 min 43 s
hubspot, 10 ads with details (example input)10 / 10 with detailsabout 1 min

Results depend on the search and on how busy the LinkedIn Ad Library is. Re-run your own search with 10 ads to check output and cost before larger runs.

How to use it

  1. Enter one or more companies, keywords or LinkedIn Ad Library search URLs, one per line.
  2. Choose Search by: advertiser (company), keyword, or payer.
  3. Optional: choose a country, a date range, ad formats or an impressions range.
  4. Set maximum ads per search. Start with 10 to see the output.
  5. Click Start and export to JSON, CSV, Excel, or use the API.

Tips for large searches

  • For thousands of ads, run without details first (fast and cheap), then put the IDs of the ads you care about in Ad IDs or ad URLs to get their details.
  • Use country and dates to focus on the ads that matter and get faster runs.
  • Searching a brand returns partners whose name contains it too. Turn on Only this exact advertiser to keep only the brand itself.

Input example

{
"searchTerms": ["hubspot"],
"searchBy": "advertiser",
"country": "",
"maxAdsPerSearch": 10,
"includeDetails": true
}

Output example

Real result with details, shortened:

{
"adId": "1672927376",
"adUrl": "https://www.linkedin.com/ad-library/detail/1672927376",
"advertiserName": "Systony - HubSpot Elite Partner",
"advertiserUrl": "https://www.linkedin.com/company/1130063",
"advertiserCompanyId": "1130063",
"paidBy": "Systony",
"format": "single-image",
"formatLabel": "Single Image Ad",
"adText": "PHP-pijn gehad? Voorkom dat het nog eens gebeurt. Met HubSpot CMS heb je geen PHP-updates...",
"headline": "Geen PHP, geen zorgen: ontdek HubSpot CMS",
"ctaText": "Learn more",
"firstShown": "2026-11-04",
"lastShown": "2026-11-04",
"totalImpressions": "1k-5k",
"totalImpressionsMin": 1000,
"totalImpressionsMax": 5000,
"impressionsByCountry": [{ "country": "Netherlands", "share": "100%", "sharePercent": 100 }],
"targetingLanguages": ["English"],
"targetingLocations": ["Netherlands"],
"targetingParameters": [
{ "parameter": "Audience", "targeted": false, "excluded": false },
{ "parameter": "Company", "targeted": true, "excluded": true }
],
"euData": true,
"searchTerm": "hubspot",
"searchBy": "advertiser",
"detailsIncluded": true,
"scrapedAt": "2026-11-06T17:37:57.104Z"
}

Ready-to-run examples

ExampleUse caseWhat you get
Competitor LinkedIn ads by companySee every ad a competitor runs20 Salesforce ads with payer, dates, impressions and targeting
LinkedIn ads by keywordB2B messaging and offer ideas50 ads mentioning cybersecurity, without details
Impressions and targeting in GermanyReach and targeting analysis20 Microsoft ads shown in Germany with impressions by country and targeting
LinkedIn ads paid by an agencyAgency and client research30 ads paid for by iProspect, with advertisers and dates
Which companies advertise on LinkedInLead generation100 CRM ads in Germany from about 45 advertisers

When should an AI agent use this Actor?

Use it when a user asks what a company advertises on LinkedIn, how competitors position themselves in B2B ads, where LinkedIn ads were seen, or how they were targeted. Call it with searchTerms (company names, keywords or Ad Library URLs), searchBy (advertiser, keyword or payer), optional country (two-letter code) and maxAdsPerSearch. Set includeDetails: false for a cheap list of ads ($0.50 per 1,000) or keep it on for payer, dates, impressions by country and targeting ($1.30 per 1,000 in total). Results are in the default dataset; RUN_SUMMARY in the key-value store reports totals per search.

Limits

  • The scraper returns what the LinkedIn Ad Library publishes: impressions, dates and targeting only for ads shown in the EU.
  • Impressions are ranges and shares published by LinkedIn (for example 50k-100k, 33%), not exact numbers. A share shown as "less than 1%" is returned as sharePercent: 0.5.
  • LinkedIn shortens ad text in search results; with details the full text is returned (adTextTruncated tells you which).
  • The landing page is returned only when LinkedIn publishes the link of the creative (about half of the ads in our tests); message ads and some formats have none.
  • The impressions range filter is LinkedIn's own and applies to ads shown in the EU and Brazil.
  • Image links are the links published by LinkedIn and can expire.
  • For a few formats (for example Spotlight ads) the advertiser name is not shown in search results; with details it is always returned.

FAQ

How is this different from other LinkedIn ad scrapers? Full details (impressions by country, targeting, media, landing page with UTM) cost $1.30 per 1,000 ads on the free plan and $0.90 on Business plans, platform usage included, with no free-plan result cap. Popular alternatives charged $1.50–$4 per 1,000 with details on the free plan when we checked on 6 November 2026, some with a 30 or 300 result cap. Prices change, so compare the total cost of a test run.

Do I need a LinkedIn account or cookies? No. It reads the public LinkedIn Ad Library like a logged-out visitor.

Why are impressions or targeting empty for some ads? LinkedIn publishes them only for ads shown in the European Union. Those ads have euData: true. For other ads you still get advertiser, payer, format, text and CTA.

Why do I get ads from other companies when I search a brand? LinkedIn's advertiser search matches names that contain your term, such as partners and resellers. Turn on Only this exact advertiser.

Can I get specific ads? Yes. Put ad IDs or LinkedIn Ad Library ad URLs in Ad IDs or ad URLs. Details are fetched for each one.

How do I monitor a competitor? Save an Apify task with the company and schedule it, then compare runs by adId. If you want new, disappeared and newly seen advertisers computed for you, use the LinkedIn Ad Library Change Monitor.

More tools for marketers

These are separate Actors and are never called by this one.