competitive-intelligence · 7 min read
How to Read Competitor Ad Performance Without Their Ads Manager Access
Last updated: June 2026
What can you actually read from a competitor's public ad presence?
You can't see a competitor's ROAS, CTR, or CPM directly — those are walled by Meta's policy. But you can triangulate their performance from observable proxies: run duration, ad-variant count, hook rotation cadence. The Meta Ads Library API exposes everything you need for proxy-level inference; the metrics-level reading is impossible without their Ads Manager access (and getting that requires either a corporate partnership or breaking their ToS).
The structural insight: competitive intelligence operates at the proxy layer, not at the raw-metric layer. Operators who try to read competitor ROAS chase a number that doesn't exist publicly. Operators who read the proxies CommonWealth Ops surfaces can make the same strategic decisions without the metric.
Proxy 1 — Run duration as ROAS proxy
The single most useful proxy. Every ad on Meta Ad Library has a `datefirstseen` and (sometimes) `datelastseen`. The delta tells you how long the ad has been running.
Below 7 days: the creative is still in initial validation. Could be testing; could be on its way to a kill. Not actionable yet.
7 to 14 days: the creative passed the algorithm's first quality check. The brand's internal kill-switch hasn't triggered yet, which usually means the unit economics are at least breakeven.
14+ days: the creative is structurally working. The brand has decided to keep paying for it. CommonWealth Ops's "persistent ad" floor is 14 days because empirically that's where the noise / signal divide sits.
21+ days: the creative is a top performer for that advertiser. Most brands rotate creative every 14-21 days for fatigue management; an ad running past 21 days has unusually strong unit economics OR the brand is operating with a low refresh cadence.
The proxy is directionally accurate. You can't say "Hardyn's ROAS is 2.8x" — but you can say "Hardyn's 28-day-old creative is working for their target ROAS, whatever that is, and they're scaling spend behind it."
Proxy 2 — Active-ad variant count as scaling-decision proxy
How many simultaneous active ads is the brand running? The count over time reveals scaling decisions.
Stable variant count week-over-week: business as usual. The brand is maintaining their current spend; no scaling decision made.
Increasing variant count (e.g., 2 → 5 → 8 over 14 days): the brand is scaling spend behind validated creative. They've found at least one variant that's clearing their ROAS floor and they're adding parallel variants to widen audience reach.
Decreasing variant count: the brand is consolidating or pulling. Either their best variants are still working and they're cutting the underperformers, or they're pulling out of the niche entirely.
CommonWealth Ops's frequency-acceleration signal (one of the 5 product-scaling signals) reads this proxy automatically. Brands like Flipkart running 7 simultaneous variants in fitness this month are signaling that their fitness vertical's unit economics are profitable enough to sustain the variant count.
Proxy 3 — Hook rotation cadence as creative-health proxy
How often does the brand cycle in a new hook variant? The cadence reveals creative health.
Slow rotation (creative variants live 21+ days): the existing hooks are working. The brand doesn't need to refresh because the audience hasn't saturated. This is a healthy state.
Fast rotation (creative variants live 7-10 days): the brand is refreshing aggressively. Could be testing new angles (healthy), could be reacting to hook fatigue (less healthy). The interpretation depends on whether the variant-count is stable or shrinking.
No rotation: the brand is running the same creative for 30+ days. Could be highly profitable (good creative + no fatigue), could be neglectful (brand isn't actively managing). The neighboring brands' rotation patterns disambiguate.
CommonWealth Ops's hook diversity ratio (one of the 3 ad-fatigue metrics) is built on this proxy. A low diversity ratio + short run durations + rising discount inflation = the fatigue signature.
The triangulation framework
Combining the three proxies produces a working performance read:
| Run duration | Variant count | Rotation | Performance read |
|---|---|---|---|
| 14+ days | Increasing | Slow | Healthy + scaling |
| 14+ days | Stable | Slow | Healthy + steady-state |
| 14+ days | Stable | Fast | Working but refreshing aggressively |
| 7-14 days | Stable | Fast | Testing in progress |
| <7 days | Any | Any | Pre-validation |
| 14+ days | Decreasing | Slow | Selective wind-down |
| <14 days | Decreasing | Any | Niche exit |
Operators reading this matrix can make decisions like "Hardyn is in healthy + scaling state; the niche they're operating in is open" or "the Plix franchise is in healthy + steady-state with rotating creator-led variants; the niche is mature."
How does CommonWealth Ops automate the inference?
CommonWealth Ops scrapes Meta Ad Library and TikTok Ad Library weekly, captures per-advertiser per-week ad count + run duration + hook variant rotation, and computes the triangulation matrix automatically. Subscribers see in the weekly intelligence report the performance-read for each top-5 advertiser in their niche — not the raw ROAS (impossible), but the directional state that drives strategic decisions.
The methodology is fully documented in our how-CommonWealth-Ops-collects-intelligence post. The wall doctrine around what's publicly exposed is documented in our meta-ads-library-api-what-it-returns-what-it-doesnt post. For the metrics-side reference (your own KPIs, not competitor inference), see our meta-ads-metrics-that-actually-matter-for-ecommerce post.
Frequently asked questions
- Is it legal to infer competitor performance from public ad libraries?
- Yes. Meta Ad Library and TikTok Ad Library are public surfaces published under EU Digital Services Act compliance and equivalent U.S. transparency requirements. Reading them at scale is no different from reading them once. The legal line is at scraping private accounts, breaking explicit anti-automation ToS, or paying insiders for non-public data. Public-library inference work sits well inside the legal floor for all the brands cited in this post and in CommonWealth Ops's intelligence reports.
- How accurate is observable-proxy inference vs the real metrics?
- The proxies are directionally accurate, not precisely accurate. A competitor's 14-day run duration tells you the creative is working (high confidence) but not the specific ROAS number (zero visibility). For competitive-intelligence decisions — which niche to enter, which hook archetype is currently winning, which audience pocket is open — directional accuracy is sufficient. For your own Ads Manager optimization, you need the real metrics from your own account.
- What if a competitor pulls their ad before the 14-day threshold?
- Ads pulled before day 7 likely failed the algorithm's first-quality-check (low hook rate). Ads pulled between days 7-14 likely failed the ROAS threshold. Ads pulled past day 14 likely hit fatigue. CommonWealth Ops's capture tracks the pull-reason inference per advertiser-week; the timing of the pull is itself a signal even when you can't see the underlying metric that drove it.
Become an operator
Stop guessing what to sell.
CommonWealth Ops turns your market's competitor activity into ranked, data-backed intelligence — and protects your capital before you spend a euro on ads. EUR 49/mo + 20% of net profit. No free trial: skin in the game both ways.
Join the waitlist