LinkedIn Ad Library scraper accuracy benchmark (September 2026)
Which LinkedIn Ad Library scraper returns targeting data you can trust? We ran the same query through Apify Store actors and checked the output against the live LinkedIn Ad Library page. Disclosure: Engineer Tsai Studio builds one of the actors tested. Everything below is reproducible with the inputs given; run it yourself before relying on any tool, ours included.
Test setup
| Date | 2026-09-17 |
|---|---|
| Query | Advertiser HubSpot, country DE, last 30 days, 30 ads with full details |
| Why Germany | LinkedIn publishes targeting, run dates and impressions only for ads shown in the EU. A non-EU query would return no targeting for any tool. |
| Ground truth | The LinkedIn Ad Library detail page of each ad, e.g. ad 1563267094 |
| Actors | engineertsaistudio/linkedin-ad-library-scraper-targeting (ours, build 0.0.3+) and memo23/linkedin-ads-scraper (build 0.0.56). A third actor, solidcode/linkedin-ads-scraper, stalled at "Initializing session" twice on this advertiser query and returned no ads, so it could not be scored. |
Results on the same 30 ads
Both scored actors returned the identical 30 ad IDs, so the comparison is purely about data quality per ad.
| Check | engineertsaistudio (ours) | memo23 |
|---|---|---|
| Ads with Location targeting returned | 30 / 30 | 0 / 30 (no Location category) |
| Location excludes captured | 5 (all ads that have them) | 0 |
| LinkedIn page-footer text ("Cookie Policy", "Privacy Policy", "User Agreement") parsed into targeting as "Interests and Traits" | 0 / 30 | 30 / 30 |
| Multi-part place names kept intact ("Boston, MA", "Toronto, ON") | yes (after a fix, see below) | n/a (no locations) |
| Impressions by country | 21 / 30 | 21 / 30 |
| Failed ads | 0 | 0 |
| Run time | 48 s | 40 s |
Spot check against the live page
Ad 1563267094 on LinkedIn: Language includes English; Location includes Germany, Boston MA, Toronto ON, Australia, Ireland, United Kingdom; excludes India, United Arab Emirates. Our output matched exactly. The other output listed no locations and, under "Interests and Traits", the words "About, Cookie Policy, Privacy Policy, Your California Privacy Choices, User Agreement, Accessibility, LinkedIn Corporation 2026".
What we got wrong, and fixed
Our first run split "Boston, MA" into two locations, "Boston" and "MA". That is a real defect and it is why we check output against the page rather than trusting a schema. It was fixed in build 0.0.3 the same day; the verification run (30 ads, 0 failed, 0 bare region codes) is what the table above reports.
Reproduce it
{
"advertisers": ["HubSpot"],
"countries": ["DE"],
"dateRange": "last-30-days",
"maxAdsPerSearch": 30
}
Run this in our actor and the equivalent input in any other, then open a few ad IDs on linkedin.com/ad-library/detail/<id> and compare the Targeting section. LinkedIn's data changes daily, so absolute counts will differ; the two checks that matter are (1) does the tool return Location includes/excludes for EU ads, and (2) is any page-UI text mixed into the targeting fields.
FAQ
Which LinkedIn Ad Library scraper gives the most accurate targeting data?
On this reproducible test, ours was the only one of the two scored actors that returned location targeting at all and the only one with no page-UI text in the targeting fields. That is one advertiser on one day; test your own advertisers with the input above.
Why are targeting, dates or impressions empty for some ads?
LinkedIn publishes them only for ads shown in the EU. Filter to an EU country when targeting matters.
Does it need a LinkedIn login?
No. The Ad Library is public. Note that LinkedIn's User Agreement restricts automated access; review it for your use case.
What does it cost?
$2.00 per 1,000 ads on paid Apify plans ($2.50 on the free plan), full details included, failed ads never charged.
Part of Engineer Tsai Studio's data Actors on Apify Store. Benchmark data files are kept with the actor's records and will be re-run when the actor or LinkedIn's pages change.