---
title: "Competitor ad intelligence"
description: "Track competitor ads from Meta Ad Library, Google Ads Transparency Center and paid search results by country, plus the landing page behind each ad."
canonical: https://www.zenrows.com/use-cases/competitor-ads
updated: 2026-10-18
---

# Competitor ad intelligence

Tracking competitor ads means collecting the ads rivals run and where they send people: creatives in public ad libraries, paid search ads by keyword and country, and the landing pages behind them. Zenrows runs ad library searches in Browser, fetches localized search results and landing pages with Fetch, and returns records you can compare week to week.

## Sample output: one competitor ad

```json
{
  "source": "meta_ad_library",
  "advertiser": "Example Rival",
  "library_id": "illustrative-238114",
  "status": "active",
  "started_running": "2026-09-28",
  "platforms": ["facebook", "instagram"],
  "country": "US",
  "format": "video",
  "primary_text": "Switch in a day. We import your data for free.",
  "headline": "Try it free for 14 days",
  "cta": "Sign up",
  "landing_page": {
    "url": "https://www.example-rival.com/lp/switch",
    "h1": "Moving from another tool? We migrate you.",
    "offer": "14-day trial, free data import",
    "screenshot": "lp-switch-2026-10-16.png"
  },
  "variants_seen": 4,
  "first_seen_by_you": "2026-10-01"
}
```

An illustrative ad record that joins what the ad library shows with a snapshot of the landing page the ad links to.

## What competitor ad tracking covers

Ad intelligence splits by channel. Social ad libraries show the creatives, search results show who bids on your keywords, and landing pages show the offer the click lands on.

| Job | Data you collect | Typical sources |
|---|---|---|
| Social creative tracking | Creative, copy, CTA, start date, platforms, active status | Meta Ad Library, LinkedIn Ad Library, TikTok Commercial Content Library |
| Search ad monitoring | Advertiser, ad headline, description, display URL, ad position | Google and Bing results pages for your keywords, by country |
| Brand bidding checks | Which competitors bid on your brand and product names | Google results for branded queries in each market |
| Landing page and offer tracking | Headline, offer, price, trial terms, form fields, screenshot | The URLs that competitor ads point to |
| Advertiser history | Every ad an advertiser has run, by region and date range | Google Ads Transparency Center, Meta Ad Library advertiser pages |
| Creative trend research | Hooks, formats and themes per industry | TikTok Creative Center, ad library keyword searches |

## Why competitor ad tracking is hard

Ads are short-lived, personalised by location, and published inside interactive apps. A weekly manual check sees a fraction of them.

| What breaks | What it looks like | How Zenrows handles it |
|---|---|---|
| Ad libraries are web apps | Results appear after a search and load as you scroll, with no simple page URL per result list | Browser runs Playwright or Puppeteer in a hosted browser that searches, scrolls and reads each ad card |
| Search ads change by location | A query from the US shows different advertisers than the same query from the UK | Geotargeting picks the country each request comes from, so every results page matches the market you target |
| Search engines push back | Repeated Google queries hit CAPTCHA or "unusual traffic" pages | Zenrows' stealth gets through Google's checks and returns the results page |
| Landing pages hide behind protection | Tracking redirects, bot protection and A/B variants | Adaptive Stealth Mode loads the page through Zenrows' stealth, and screenshots keep a visual record of each version |
| Ads end before you look | A two-week promotion runs and stops between checks | Batch reruns your results-page and landing-page URLs on a schedule, so short campaigns get captured |

## How to track competitor ads with Zenrows

1. **Pick advertisers, keywords and markets.** List the competitors to watch in ad libraries, the keywords to check for paid search ads, and the countries that matter.
2. **Search the ad libraries in Browser.** Open each library search for an advertiser, scroll until no new ads load, and store each ad card.
3. **Capture paid search results.** Fetch Google results for each keyword with geotargeting set to each market, and keep the ad block.
4. **Snapshot every landing page.** Fetch each ad's destination as a screenshot for the visual and again as Markdown for the text.
5. **Compare week to week.** Flag new creatives, ended ads and changes to offers, prices or trial terms.

```javascript Node.js
// npm install playwright
const { chromium } = require("playwright");

(async () => {
  const browser = await chromium.connectOverCDP(
    "wss://browser.zenrows.com?apikey=YOUR_ZENROWS_API_KEY"
  );
  const context = browser.contexts()[0] ?? (await browser.newContext());
  const page = await context.newPage();
  const query = encodeURIComponent("Example Rival");
  await page.goto(
    `https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=${query}&search_type=keyword_unordered`
  );
  for (let i = 0; i < 6; i++) {
    await page.mouse.wheel(0, 4000); // scroll to load more ads
    await page.waitForTimeout(1500);
  }
  const text = await page.innerText("body");
  console.log(text.slice(0, 3000)); // parse ad cards: copy, start date, platforms
  await browser.close();
})();
```

```python Python
# pip install requests
import requests

params = {
    "apikey": "YOUR_ZENROWS_API_KEY",
    "url": "https://www.google.com/search?q=project+management+software&gl=us&hl=en",
    "mode": "auto",  # Adaptive Stealth Mode
    "proxy_country": "us",
    # placeholders: use the selectors of the sponsored block on the live page
    "css_extractor": '{"ad_headlines": "AD_HEADLINE_SELECTOR", "ad_links": "AD_LINK_SELECTOR @href"}',
}
response = requests.get("https://api.zenrows.com/v1/", params=params)
print(response.json())
```

```bash CLI
npx -y @zenrows/cli init
# Screenshot and text of the landing page an ad points to
zenrows fetch LANDING_PAGE_URL --screenshot --out landing-page.png
zenrows fetch LANDING_PAGE_URL --output markdown
```

```text Claude Code (MCP)
# Connect once
claude mcp add zenrows -e ZENROWS_API_KEY=YOUR_ZENROWS_API_KEY -- npx -y @zenrows/mcp

# Then ask:
Use Zenrows to open the Meta Ad Library, search active US ads from
Example Rival, scroll until no new ads load, and list each ad's primary
text, headline, start date and landing page URL.
```

## Which Zenrows product fits

| If you need to | Use | Why |
|---|---|---|
| Search Meta, LinkedIn or TikTok ad libraries | [Browser](/products/browser) | A hosted browser you drive with Playwright or Puppeteer types, scrolls and reads results |
| See who runs search ads on a keyword in a given country | [Fetch](/products/fetch) | One request returns the results page as a searcher in that country sees it |
| Keep a screenshot of every landing page | [Fetch](/products/fetch) | Screenshots return an image of the rendered page |
| Recheck hundreds of keywords and landing pages every week | [Batch](/products/batch) | The full list runs as one job, with results by webhook |

## What success looks like

| Measure | What good looks like | How to check it |
|---|---|---|
| Advertiser coverage | Every competitor in scope is checked in each ad library every week | Count advertisers searched per run against your competitor list |
| New creative lag | A new ad is in your data within a week of its start date | Compare the library's start date with your first-seen date |
| Market coverage | Paid search results exist for every keyword in every target country | Count rows per keyword and country in each run |
| Landing page capture | Every ad URL has a screenshot and a text snapshot | Report ads with a missing landing page record |
| Offer change detection | Changes to price, trial length or discount are flagged the week they happen | Diff landing page text week over week and review flagged changes |

## Competitor ads FAQ

### How can I see my competitors' ads?

Start with the public ad libraries. Meta Ad Library shows active ads on Facebook and Instagram, Google Ads Transparency Center lists ads by advertiser, and LinkedIn and TikTok publish their own libraries. For search ads, run your keywords on Google in each target country and record the sponsored results. Zenrows automates both, so you check every competitor every week instead of a few by hand.

### What is ad intelligence?

Ad intelligence is the collection and analysis of competitors' advertising: which ads they run, on which channels, in which markets, for how long, with what message and offer. Teams use it to plan creative, spot new campaigns and price changes early, and see which keywords competitors pay for.

### Can I see competitor Google ads by location?

Yes. Google shows different ads by country and language. Fetch the results page with geotargeting set to the market, and add Google's gl and hl parameters to the search URL. Run the same keyword list for each country to see which advertisers compete where. See SERP scraping for collecting full results pages.

### How is competitor ad tracking different from ad verification?

Competitor ad tracking looks at other advertisers' ads to learn from them. Ad verification checks your own ads: that they appear where you paid, in the right markets, next to safe content, and that partners are not bidding on your brand against the rules. The collection techniques overlap. See ad verification for that job.

### Can I download competitor ad creatives?

Ad libraries show creative images and videos, and you can store the media URLs and screenshots alongside each record for internal analysis. Creatives belong to the advertiser, so keep them in your research archive and do not republish them. Check the library's terms for each platform you collect from.

### How often should I check competitor ads?

Weekly works for most ad libraries, since each ad shows its start date. Check paid search results for your brand terms and top commercial keywords daily, because bids change quickly, and recheck landing pages whenever a new ad points to one.

### Which competitors bid on my brand keywords?

Search your brand and product names on Google from each market you sell in, and record the advertisers in the sponsored block. Run it daily, since brand bids switch on and off. Keep the ad headline and display URL for each advertiser, then fetch the landing page to see whether the ad compares itself with you. A list of brand bidders by country is often the first report a paid search team asks for.

## Related use cases

- [Competitor monitoring](https://www.zenrows.com/use-cases/competitor-monitoring.md): Pricing pages, changelogs, feature pages and job posts on rival sites, snapshotted and diffed on every run.
- [Social media scraping](https://www.zenrows.com/use-cases/social-media-scraping.md): Public posts, profiles, comments and engagement from Reddit, YouTube, TikTok and X, as structured JSON.
- [Competitive intelligence](https://www.zenrows.com/use-cases/competitive-intelligence.md): Pricing, hiring, reviews, launches and partners across your market, structured for battlecards and strategy.
- [Brand monitoring](https://www.zenrows.com/use-cases/brand-monitoring.md): Every mention of your brand in news, forums, reviews and search, as clean text for sentiment and alerts.

Start free: https://app.zenrows.com/register. Docs: https://docs.zenrows.com
