Meta Ads Competitor Intelligence Report
Pricing
from $0.49 / completed ad intelligence report
Meta Ads Competitor Intelligence Report
Turn Facebook / Meta Ads Library scraper datasets into weekly competitor intelligence reports. Generate a client-ready Markdown report, JSON summary, and CSV evidence export with top advertisers, offer-angle signals, CTA domains, and traceable ad IDs.
Pricing
from $0.49 / completed ad intelligence report
Rating
0.0
(0)
Developer
Juyeop Park
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
Turn Facebook / Meta Ads Library scraper results into a client-ready weekly competitor intelligence package for brands, agencies, and growth teams.
This Actor does not scrape Meta directly. It analyzes rows from a Meta Ads Library scraper run, dataset, or inline export and produces:
REPORT/report.md— a human-readable competitor ad intelligence reportOUTPUT/summary.json— a structured JSON summary for automationADS_CSV/ads.csv— a traceable CSV evidence export- One dataset summary row for quick inspection in Apify Console
Get your first report in 3 minutes
This is the reporting layer after a Meta Ads Library scraper. It does not open or scrape Meta itself.
-
Try the report format first. Click Try and run the built-in Nike / PUMA / New Balance sample rows. This creates an initial snapshot without claiming week-over-week change.
-
Connect real scraper output. Replace the sample rows with either the default dataset ID or run ID from your Meta Ads Library scraper:
{"reportName": "Weekly competitor ad report - sportswear","datasetId": "YOUR_META_DATASET_ID","maxItems": 500}Or let this Actor load a scraper run's default dataset:
{"reportName": "Weekly competitor ad report - sportswear","runId": "YOUR_META_SCRAPER_RUN_ID","maxItems": 500} -
Open the deliverables. Review
REPORTfor the Markdown brief,OUTPUTfor the JSON summary,ADS_CSVfor source evidence, and the default dataset for the summary row.
What the $0.49 completed-report event produces
A completed-report event is charged only after the report artifacts are generated successfully. A separate platform-managed Actor start event also applies; see Pricing.
Each completed report includes:
- a Markdown competitor brief in
REPORT - a structured automation summary in
OUTPUT - a traceable source export in
ADS_CSV - one dataset summary row with report status, counts, top patterns, source IDs, and charge status
Plain-language sample report summary
The summary below condenses metrics from the current built-in three-row sample; it is not a verbatim excerpt of the generated REPORT. Because no baseline was supplied, it is correctly labeled as an initial snapshot.
Initial competitor ad snapshotAds captured: 3 active ads across 3 advertisersTop advertiser: New Balance — 1 captured row, 33.3% shareTop offer angle: Problem / benefit led — 3 captured rowsRepeated term: training — 2 captured rowsCTA domains: newbalance.com, nike.com, us.puma.comReview next: inspect the top CTA destination and compare offer angles with your campaign plan
The report grounds these statements in source row IDs and evidence URLs. It does not calculate ROAS, spend, conversions, performance lift, or “winning ads.”
Repeat it as a weekly report
-
Run the same upstream Meta Ads Library scraper for the same competitor set and search criteria.
-
Use its new dataset as
datasetIdand last week's dataset asbaselineDatasetId:{"reportName": "Weekly competitor ad change report","datasetId": "CURRENT_META_DATASET_ID","baselineDatasetId": "PREVIOUS_META_DATASET_ID","maxItems": 1000} -
Use workflow/API for success-based chaining after the upstream scraper succeeds. Use a later Apify Schedule only for time-based follow-up runs.
-
Save the current dataset ID as next week's baseline. Keep keywords, country, active status, and item limit consistent for a meaningful comparison.
Good fit: agency client briefs, DTC competitor reviews, creative research, and weekly marketing preparation.
Not a fit: direct Meta scraping, real-time alerts, media-spend measurement, ROAS attribution, or conversion-lift claims.
Why this exists
Popular Apify Store Actors sell because they solve a direct workflow with clear inputs: “paste URLs or keywords, get useful data.” Meta ads scrapers already create the raw ad rows; this Actor handles the next paid workflow: turning raw Facebook/Instagram ad data into a repeatable marketing report.
Use it after running a compatible Facebook / Meta Ads Library scraper when you need a weekly deliverable instead of a raw dataset.
What this is for
Good use cases:
- DTC competitor monitoring — track what brands are actively advertising and what messages repeat.
- Agency client research — create quick competitor creative briefs before strategy calls.
- Ad library review workflows — turn Meta scraper datasets into Markdown, JSON, and CSV artifacts.
- Weekly marketing intelligence — compare a current dataset with a baseline dataset to identify new, removed, and continued ads.
- Scheduled reporting — run the upstream scraper weekly, then run this Actor with the new dataset and previous baseline.
Key insights included
The report highlights evidence-backed patterns such as:
- active ad count and advertiser count
- top advertiser and share of captured ads
- new / removed / continued ads when a baseline is provided
- repeated copy and message patterns
- repeated terms across ad copy
- offer / angle signals such as promo, launch, demo, proof, benefit, and urgency
- CTA destination domains and landing URL patterns
- suggested marketer review actions
- source IDs and Meta Ad Library evidence URLs
How to use
Option A — analyze a Meta ads dataset
- Run a Facebook / Meta Ads Library scraper.
- Copy the resulting dataset ID.
- Run this Actor with:
{"reportName": "Weekly competitor ad report - sportswear","datasetId": "YOUR_META_DATASET_ID","search": {"keywords": ["Nike", "Puma", "New Balance"],"country": "US","activeStatus": "active"},"maxItems": 500}
Option B — analyze a run ID
{"reportName": "Weekly competitor ad report","runId": "YOUR_META_SCRAPER_RUN_ID","maxItems": 500}
The Actor will load the run's default dataset.
Option C — compare against a baseline
For a weekly change report, provide a current dataset and a previous dataset:
{"reportName": "Weekly competitor ad change report","datasetId": "CURRENT_META_DATASET_ID","baselineDatasetId": "PREVIOUS_META_DATASET_ID","maxItems": 1000}
If no baseline is supplied, the output is clearly labeled as an initial snapshot and will not claim week-over-week movement.
Option D — paste inline rows
Use items when you already have exported ad rows or want to test the report format without connecting another dataset.
Pricing
This Actor uses pay-per-event pricing:
- Actor start: small platform-managed start event
- Completed report: charged once only after the report artifacts are generated successfully
This keeps pricing simple for weekly monitoring workflows: one run creates one report package.
Important guardrails
- This Actor analyzes public ad rows supplied by the user or by another scraper output.
- It does not promise real-time monitoring, unlimited scraping, ROAS, winning ads, spend, conversions, impressions, or performance lift.
- It does not send emails/DMs, spend ad budget, or contact prospects.
- TikTok is marked as experimental/fallback only and is not a core source in this MVP.
- Placement/platform analytics are only meaningful when the source rows contain platform values.
Output records
Dataset summary
The default dataset contains one summary row with fields such as:
statusreportTypereportNametotalAdsactiveAdsadvertiserCountnewAdsremovedAdstopAdvertisertopAdvertiserSharePcttopOfferAngletopCtaDomainsourceDatasetIdsourceRunIdreportChargeStatus
Key-value store records
OUTPUT— JSON summaryREPORT— Markdown reportADS_CSV— CSV evidence export
Best results
For a sales-ready or client-ready report:
- use specific competitor brands or Facebook Page IDs in the upstream Meta scraper
- keep each weekly run's search criteria consistent
- store the prior week's dataset ID as the next run's baseline
- review evidence URLs before quoting insights externally
- tag report rows by offer angle, landing page type, and creative theme for your own playbook
Example workflow
- Run a Meta Ads Library scraper for 3–10 competitor brands.
- Save the dataset ID.
- Run this Actor with the dataset ID.
- Download
REPORT,OUTPUT, andADS_CSV. - Next week, use the new dataset as
datasetIdand the prior dataset asbaselineDatasetId.
The result is a repeatable competitor ad intelligence loop instead of one-off manual ad library review.