The Facebook Ad Library is Meta's free, public archive of the ads currently running across Facebook, Instagram, Messenger, and Audience Network. Anyone can search it at facebook.com/ads/library — no ad account, no budget, no agency login — and read the exact creative, headline, and body copy an advertiser is paying to put in front of people.
That makes it the best free competitor research tool most organic marketers have never opened. This guide is not an ads tutorial. It's a method for pulling competitors' proven messaging out of a public database and turning it into organic posts you schedule for nothing.
Why an ads database is useful when you never plan to buy ads
Organic posting is cheap, so brands publish plenty of things nobody ever tested. Ads cost money. Every ad in the Library is a message someone was confident enough about to fund — and every ad still running months later is a message that kept earning its budget against a real audience.
That's the whole insight: longevity is the signal. You aren't hunting for clever ads. You're hunting for the ones that refused to die, because those carry the hook, the offer framing, and the objection-handling a competitor has already paid to validate on people who look like your buyers.
A standard social media competitor analysis tells you what competitors publish and how their audience responds to it. The Ad Library tells you what they believe converts. Those are different questions, and the second one is usually more useful when you're deciding what your next quarter of content should actually argue.
It's also worth being clear about what you're looking at. Most ads in the Library never appeared on the advertiser's Page timeline — they're unpublished dark posts, built inside Meta Ads Manager purely for delivery to a targeted audience. Occasionally you'll spot something that reads like a normal Page post with money behind it, which is usually a boosted post; the difference between boosting and running a proper ad explains why the two look and behave differently in the feed.
What you can see, and what you can't
| Visible to anyone | Not visible for commercial ads |
|---|---|
| Full ad creative (image, video, carousel) | Spend |
| Headline, primary text, description, CTA button | Click-through and conversion rates |
| The date the ad started running | Audience targeting |
| How many versions of the ad are running | Return on ad spend |
| Landing page destination | Which version is winning |
| Advertiser Page name, and Page transparency details | Whether the ad is profitable at all |
Two categories get extra disclosure. Political and social-issue ads show spend ranges, impression ranges, and demographic breakdowns. And as of November 2024, ads served in the EU carry additional transparency detail under European rules. For a normal commercial advertiser you get creative plus dates — which turns out to be plenty.
There is an Ad Library API, but access is gated and scoped to political and social-issue advertising. For researching an ordinary business you're browsing the web interface by hand, and that's fine. The manual pass is where the thinking happens.
Running the search
The mechanics take about two minutes to learn.
- Open the Ad Library and set your country. Results are country-scoped, so set it to the market you actually sell in. Ad category stays on "All ads" unless you're researching a regulated vertical.
- Search by advertiser first, keyword second. Typing a competitor's Page name gives you their complete active roster. Typing a category phrase — "bookkeeping for contractors", "sourdough starter kit" — surfaces advertisers you didn't know existed, which is often the more valuable pass.
- Filter by media type and platform. If you only publish static images, filtering to image ads keeps you from admiring video work you can't produce this month.
- Read the "started running" date on every ad. This is the field that matters. Sort your attention, not the interface, around it.
- Note the version count. When Meta flags that an ad has multiple versions, the advertiser is split-testing copy behind the same creative — and the variations show which variable they think is in play.
A quick scenario. You run social for a small accounting firm. You search three regional competitors and find they collectively have around forty active ads. Thirty-two started in the last six weeks — noise, seasonal pushes, agency churn. Three have been running since spring. Those three are your entire research output. Everything else is a distraction.
The extraction sheet: hook, offer, objection
Screenshotting ads into a folder feels productive and teaches you nothing. Break each long-running ad into its components instead, one row per ad:
- Hook — the literal first line, before the "see more" cut. This is the part fighting for attention, and it's the part that transfers most directly to organic.
- Promise — the specific outcome being sold. Not "better bookkeeping" but "books closed by the 5th".
- Objection handled — what the ad pre-empts. Price, switching cost, time investment, trust, "I already tried something like this".
- Proof type — testimonial, screenshot, credential, before/after, guarantee, demonstration.
- Format — talking head, text-on-image, carousel, UGC-style clip, plain copy.
- Days running — your confidence score.
Fill twenty rows and the patterns fall out. If four unrelated competitors handle the same objection in their longest-running ads, that objection is alive in your market whether or not anyone has said it to you directly. If every durable ad in your category leads with a cost comparison and yours leads with features, you've found the gap in one sitting.
The objection column is the most valuable and the most ignored. SocialKit has no social listening or inbox tools, so it can't tell you what your audience is complaining about in DMs — but a competitor who has spent six months funding an ad that opens by defusing "isn't this expensive?" has done that listening for you and published the result.
Translating a proven angle into organic posts
An ad and an organic post do different jobs, so you can't paste one into the other. Three translation rules cover most cases.
Ads buy attention; organic has to earn it. An ad gets placed in front of a cold audience whether they asked for it or not. Your organic post has to survive a scroll. Keep the competitor's angle and rewrite the hook harder — more specific, more concrete, less polished. Our guide to writing Facebook captions that hold attention covers the mechanics.
Ads can repeat; organic can't. The same ad runs for months to a rotating audience. Your followers see everything. One proven angle needs five or six genuinely different treatments, not five reposts.
Ads close; organic opens. Strip the urgency and the "Sign up today" CTA. Keep the tension the ad created and let the post end on the insight instead of the ask.
Here's what one angle looks like after translation:
| Source | Organic treatment |
|---|---|
| Long-running ad defusing "switching is a nightmare" | A post walking through what your onboarding week actually looks like, hour by hour |
| Same objection | A customer story focused on the switch, not the results |
| Same objection | A blunt list of the three things that genuinely are annoying about switching |
| Same objection | A short video answering the question as if a customer just asked it |
Same competitor-validated insight, four posts, zero ad spend. And note the third one — the honest downside post. Competitors' ads will never do that, which is precisely why it works organically.
Turn each proven angle into a content pillar
One angle produces a week of content. Four or five angles produce a quarter. That's the point where Ad Library research stops being a curiosity and becomes your planning input: each validated angle becomes a content pillar, and each pillar gets a recurring slot on the calendar.
The workflow that keeps this from collapsing is batching. Pull your research once a month, translate the surviving angles into a list of post concepts, then write and schedule them in a single session rather than improvising daily — the approach laid out in our batch content creation workflow.
This is where a scheduler does the unglamorous half of the work. SocialKit doesn't manage ads — the research stays in Meta's Library, where it belongs — but once you have the angles, you can compose each post once, customize the caption, hashtags, and media per network, and auto-publish across all 11 platforms from one visual calendar. A cost-comparison angle that lands on Facebook usually needs tightening for X and expanding for LinkedIn; our character limits reference has the per-network specifics, and the Facebook scheduling walkthrough covers the setup. Every plan includes all 11 platforms and unlimited scheduled posts, with a 7-day free trial — pricing starts at €29/month for Solo as of November 2024.
Guardrails
Don't copy the copy. Angles and objections aren't ownable; specific ad wording is written by someone and shouldn't be lifted. Take the strategic insight, write your own sentences.
Long-running doesn't always mean profitable. Some ads run for months because a large brand has an always-on awareness budget and nobody is watching the account. Corroborate: if three independent competitors converge on an angle, trust it. If one does, treat it as a hypothesis.
Don't let research replace publishing. The Ad Library is genuinely fun, which makes it an excellent procrastination surface. An hour a month is enough.
Remember what the Library can't tell you. It shows what competitors are selling, not what their organic audience enjoys. Pair it with your own analytics and the wider organic versus paid trade-off before you rebuild a content plan around it — especially if you're working through declining Facebook reach, where the fix is usually format and consistency rather than messaging.
Your first Ad Library sprint
Block sixty minutes and work in order:
- Open the Ad Library, set your country, search your three closest competitors by Page name.
- Run two category keyword searches to catch advertisers outside your usual radar.
- Ignore everything that started in the last month. Keep only ads running ninety days or longer.
- Build the extraction sheet — hook, promise, objection, proof, format, days running — for every survivor.
- Circle the objections that appear more than once. Those are your pillars.
- Write four organic treatments for each pillar, following the translation rules above.
- Load them into your calendar, tagged by pillar so you can see the balance.
- Diarise the next pass for thirty days out and check which ads are still alive.
The compounding benefit shows up on the second visit. Ads that survived your first sprint and are still live a month later have earned another month of budget; the ones that vanished tell you something too. Track that across a couple of quarters and you'll have a running read on what your market is willing to pay to say — assembled from a free, public page and turned into content that costs nothing to publish.