Growth Marketer

We Spy on Every Competitor Ad for Free

$6K/year in tools savedMarketing & SEO4 min read

Key Takeaway

We scrape Google Ads Transparency Center and Meta Ad Library daily to see exactly what our competitors are running β€” creatives, spend estimates, targeting β€” without paying for any ad intelligence tool.

The Problem

Ad intelligence tools β€” AdBeat, SimilarWeb Ads, SpyFu, SEMrush's ad module β€” charge $200-600/month to show you what your competitors are running. We were paying for two of them before we realized we were paying for aggregation of public data.

Google and Meta have both made ad transparency a legal requirement. Every advertiser's active ads, creatives, and targeting parameters are publicly accessible via:

  • Google Ads Transparency Center: adstransparency.google.com
  • Meta Ad Library: facebook.com/ads/library

The data is free. What we needed was automated scraping, structured output, and AI analysis β€” not a $500/month SaaS wrapper.

The Solution

Daily Apify actor runs on both transparency centers, feeding structured ad data into an Mr.Chief analysis skill that surfaces:

  • New creatives (ads launched in the last 7 days)
  • Paused creatives (what they stopped running β€” often signals what didn't work)
  • Messaging trends (which copy angles are scaling vs. being killed)
  • Spend estimates (based on ad duration Γ— typical CPM for the format)
  • Landing page patterns (where they're sending traffic)

The Process

Step 1: Define your competitor monitor list.

yamlShow code
# competitor-ad-monitor.yaml
competitors:
  - name: "Hexa"
    google_advertiser_id: "AR14732891234"
    meta_page_id: "104729348172"
    priority: high

  - name: "JoinEF"
    google_advertiser_id: "AR29183746521"
    meta_page_id: "209183746521"
    priority: high

  - name: "StationF"
    google_advertiser_id: "AR83716452091"
    meta_page_id: "317264850193"
    priority: medium

monitor:
  frequency: daily
  alert_on: ["new_creative", "paused_creative", "new_landing_page"]
  output_format: slack_digest

Step 2: Configure the Apify scrapers.

javascriptShow code
// google-ads-transparency-scraper.js
const input = {
  advertiserIds: ["AR14732891234", "AR29183746521", "AR83716452091"],
  dateRange: "last_7_days",
  adFormat: ["search", "display", "video"],
  extractFields: [
    "adCreative", "headline", "description",
    "displayUrl", "finalUrl", "firstShownDate",
    "lastShownDate", "impressionsRange", "geographicTargeting"
  ],
  maxAdsPerAdvertiser: 50
};
javascriptShow code
// meta-ad-library-scraper.js
const input = {
  pageIds: ["104729348172", "209183746521", "317264850193"],
  adActiveStatus: "all",  // active AND inactive
  adType: "all",
  searchTerms: [],
  extractFields: [
    "adCreativeBody", "adCreativeLink", "callToAction",
    "pageId", "pageName", "startDate", "endDate",
    "impressionsLowerBound", "impressionsUpperBound",
    "spendLowerBound", "spendUpperBound",
    "demographicDistribution", "deliveryByRegion"
  ]
};

Step 3: AI analysis of the scraped data.

Raw ad data gets fed to the Mr.Chief Ad Intelligence skill, which outputs structured analysis:

jsonShow code
{
  "weekly_ad_report": {
    "generated_at": "2026-02-28T08:00:00Z",
    "competitors_monitored": 15,

    "new_creatives_this_week": [
      {
        "competitor": "Hexa",
        "platform": "Google",
        "headline": "Deploy AI Agents in 5 Minutes",
        "description": "No infrastructure. No DevOps. Just results.",
        "landing_page": "hexa.com/lp/quick-deploy",
        "first_seen": "2026-02-25",
        "angle": "speed/simplicity",
        "estimated_daily_spend": "$200-400"
      }
    ],

    "paused_creatives": [
      {
        "competitor": "JoinEF",
        "headline": "The Enterprise AI Platform",
        "ran_for_days": 12,
        "likely_reason": "low CTR β€” too generic, no specific benefit",
        "lesson": "Enterprise positioning without a specific claim is getting ignored"
      }
    ],

    "messaging_trends": {
      "scaling_angles": ["speed to deploy", "no infrastructure required", "open source"],
      "declining_angles": ["enterprise-grade", "AI-powered (generic)", "platform"]
    }
  }
}

Step 4: Slack digest delivery.

Every morning at 8am, a Slack message lands in #growth-intel:

View details
πŸ“Š Competitor Ad Report β€” Feb 28

NEW THIS WEEK:
β€’ Hexa launched 3 new Google Search ads (speed angle)
  β†’ "Deploy AI Agents in 5 Minutes" β€” new LP: hexa.com/lp/quick-deploy
β€’ JoinEF running Meta video ads for first time (B2B use cases)

PAUSED:
β€’ JoinEF pulled "Enterprise AI Platform" after 12 days (likely low CTR)
β€’ Hexa paused their pricing-focused ads (2 creatives)

SIGNAL: Competitors moving toward speed/simplicity messaging.
Our current ads lead with features. Worth A/B testing.

The Results

MetricBeforeAfter
Competitors monitored3 (manual)15 (automated)
Monitoring frequencyMonthly, ad-hocDaily
Time spent on competitor ad research3 hrs/week0 hrs/week
Ad intelligence tool spend$500/month$0/month
Annual savingsβ€”$6,000
Speed to react to competitor creative changesWeeks<24 hours
Ad A/B tests informed by competitor data1-2/quarter8-12/quarter

The compounding benefit is insight velocity. When a competitor launches a new angle, we know within 24 hours β€” not when we remember to check. We've caught three competitor positioning pivots before they scaled, giving us time to respond.

Try It Yourself

Both transparency centers are fully scrapable with Apify actors. The free Apify tier covers daily runs for up to 5 competitors. Beyond that, usage-based pricing is roughly $0.10-0.30 per competitor per day.

bashShow code
# Set up competitor ad monitoring
mrchief run ad-intelligence-setup \
  --competitors competitors-list.yaml \
  --output-channel slack \
  --frequency daily

The best ad strategies aren't original. They're stolen from competitors' failures β€” you just need to be watching fast enough to learn from them.

competitive intelligencead researchAI automationmarketing

Want results like these?

Start free with your own AI team. No credit card required.

We Spy on Every Competitor Ad for Free β€” Mr.Chief