Scraping LinkedIn Ad Library Ads via Clay

Use Clay and the Ampify actor to scrape LinkedIn Ad Library, revealing who’s running ads, ad details, and counts for any list of companies—no code needed.

Apps Used

LinkedIn Ad Library

Credits

Eric Nowoslawski
Growth Engine X
Scraping LinkedIn Ad Library Ads via Clay

Overview

This workflow demonstrates how to use Clay.com in combination with the Apify actor to extract ad campaign data from the LinkedIn Ad Library for any list of companies. The process helps identify which companies are actively running LinkedIn ads, the number and types of ads, and associated campaign metadata — valuable for competitive research, lead generation, or enrichment.

Why This Use Case Is Useful

Understand competitors’ ad spend and targeting

Verify if prospects are investing in LinkedIn ads

Extract detailed ad metadata for enrichment and outreach

How This Workflow Is Built

Step 1: Prepare Input Data

Gather company names* and websites* to be used as input; these are the minimum requirements.

Step 2: Normalize Data for LinkedIn Search

When formatting search queries for the LinkedIn Ad Library, replace spaces in company names with plus signs (e.g., "Pilot.com" remains "Pilot.com", "American Express" becomes "American+Express").

Step 3: Set Up Clay.com Workflow

  • Import your company list into Clay.
  • Normalize domains for tracking and upload flexibility.
  • This enables dynamic and repeatable workflows for different lists.

Step 4: Configure Apify Actor

  • Inside Clay, connect your Apify account using the LinkedIn Ad Library Scraper actor.
  • Input normalized company names/websites as search terms.
  • Configure the result limit (e.g., 25 ads per company).
  • For edge cases (e.g., companies with potentially ambiguous ad affiliations), keep the search terms consistent between company name and advertiser fields for better results.

Step 5: Clean and Filter Results

  • Use Clay’s "filter list of objects" step to remove irrelevant ads, focusing on those where the click URL matches the company’s domain or otherwise directly links to verified ads.
  • Review for agency-ad relationships: e.g., some ads might be run by agencies on behalf of brands (e.g., "Kepler Group" running for "American Express").
  • Adjust filter logic if necessary to capture the desired scope (direct advertisers only).

Step 6: Extract & Use Data

  • The final output includes: advertiser name, ad count, ad content (body, headline, image), ad targeting data, impressions, click URL, etc.
  • Export, sync, or enrich CRM or sales enablement tools as needed.

Best Practices

  • Always test searches with both company name and company domain in advertiser/keyword fields for best coverage.
  • Be aware of edge cases due to agency-run campaigns or companies with multiple LinkedIn presences.
  • Normalize domains to keep lists deduplicated and clean.

Example Applications

  • Identify which target accounts are investing in LinkedIn advertising (for sales prospecting).
  • Gather sample ad copy for messaging inspiration.
  • Monitor competitors’ advertising activity and creative angles.

Limitations

  • LinkedIn’s ad library doesn’t provide a direct “all ads for this company” page like Facebook, so search queries must be tuned.
  • Some results may include agency or affiliate ads; filters are needed to ensure accuracy.
  • This workflow streamlines the process for extracting actionable LinkedIn ad data at scale, supporting sales, marketing, and research teams.

Watch Tutorial

Ready to implement this use case?

Our team can help you set up Clay to solve this specific challenge for your business.

Related Use Cases