Ad library inactive ads: why ended ads disappear

Each ad library treats ended ads differently. What Meta, Google, TikTok, LinkedIn, Pinterest and X keep after an ad stops, and how we keep the history.

The AdLib team · · 6 min read

Every ad library treats inactive ads differently, because each one is built to show what is running now. Some keep them but make them hard to find, some cut search off after a year, and one publishes no dates at all. If you need to know what a competitor ran last spring, the library alone often cannot tell you.

We crawl all six libraries, so this is a field report of what each keeps, what we keep on top, and where our knowledge ends.

Ad library inactive ads: how each platform treats them

No two libraries keep ended ads the same way. This table is what we observed on 26 Oct 2026; the detailed notes per platform are on platforms.

Library Keeps ended ads Status flag Run dates How far back
Meta yes active/inactive start and end, to the day our index has Meta ads starting Dec 2023
Google yes, as date ranges none first and last shown old date filters came back empty
TikTok yes, in 33 regions filter only first and last shown default view is about the last month
LinkedIn yes none only on some detail pages about one year
Pinterest yes, in 30 countries none yes, end dates lag about one year, 30-day windows
X (beta) in theory none none from 26 Aug 2023

Meta keeps inactive ads, but not every path finds them

The Meta Ad Library keeps inactive ads with their start and end dates, and its status filter has active, inactive and all. That makes Meta the best library for seeing old Facebook ads.

The catch is in how you reach them. Searching an inactive Nike ad's id as a keyword returned zero hits for all countries, Germany and the UK. The same ad opened fine through its direct link, facebook.com/ads/library/?id=929619676778336, with its dates (5 May to 28 Jul 2026), six carousel cards and EU reach data. If you only use the search box, you will miss ads that are still in the library.

Two more things are lost over time. Spend and impressions exist only for political and issue ads. And Meta's media URLs carry an expiry parameter, so the image link you copied last month may no longer load.

Google shows date ranges and no status

The Google Ads Transparency Center has no active or inactive flag at all. Each creative has a first and last shown date, and you decide from those whether it is still running.

That works well for single creatives: the oldest Nike, Inc. creative in our index runs from 25 Oct 2021 to 25 Oct 2026. Browsing by old dates works less well. When we filtered for January 2024, the search returned nothing, so old served dates do not seem to be searchable. We also saw ten Nike, Inc. creatives that all start on 25 Oct 2021, which looks like a reporting floor about five years back. That is our inference; Google does not say so.

TikTok keeps ads for 33 regions only

The TikTok Ad Library is a European transparency repository: it covers 33 regions in the EU/EEA, the UK, Switzerland and Turkey, and nothing else. It has a status filter (active, inactive or all), but the ad record itself carries no active flag, so the status is only known if you filtered by it.

First and last shown dates are there, to the day. The default search window is about the last month, so older ads need an explicit date range. Video links are signed and expire within hours. TikTok also marks ads that were removed for a violation, which is useful context when an ad vanishes.

LinkedIn: no status and mostly no run dates

The LinkedIn Ad Library has no status signal, and run dates appear only on the detail page of some ads. Older ads, and ads that apparently were not served in the EU, show only the ad type, advertiser and payer.

In our index, 481 of 487 LinkedIn ads have no run dates. For those, the only time information anyone can give you is when they saw the ad. Search also stops at about one year back: the date picker does not go further.

Pinterest: 30-day windows, one country at a time

The Pinterest Ads Repository covers 30 countries (the EU-27, Norway, Turkey and Brazil) and keeps about a year of ads. Each search takes exactly one country and a date range under 30 days.

Ask for a longer range and you get an empty list with no error. End dates also trail behind: on 26 Oct 2026, the newest Pinterest end date in our index was 15 Oct. There is no status flag, so an ad that ended last week and one still running can look the same.

X: beta, no dates

The X Ads Repository covers the EU/EEA, can be searched by advertiser handle only, and publishes no first or last shown dates. Its records do not even contain the creative; the page embeds the post.

In our tests on 26 Oct 2026, every advertiser with ads got a 503 "Over capacity" response, and the old CSV download returned 404. We list X as beta and treat its history as whatever we manage to collect.

Why ad history matters

Ended ads are where most of the useful information is, for three reasons.

Campaign timelines

Nike's German Meta ads started in waves, with 0 to 5 new ads a month between October 2025 and October 2026. You can only see that pattern if the ended ads are still there, and with dates.

Compliance and claims

An ad's copy can carry a promise with a deadline, like Nike's "Valid until 2 Dec 9am CET". If you need to show what an advertiser claimed and when, a record that changed or disappeared does not help you.

Research

Run length analysis needs complete runs, which by definition means ended ads (more in ad run length as a performance signal). So does anything that compares this year's creative to last year's.

How we keep ad history

We keep one record per ad and add a new version only when the ad's content changes. Content means text, headline, CTA, landing URL without tracking parameters, formats and the identity of the media. Status, reach and signed CDN links are left out of that comparison, otherwise every crawl of a running ad would create a new version.

A crawl that finds nothing new only updates last_seen_by_us. Next to the platform's first_shown and last_shown we store first_seen_by_us and last_seen_by_us, so you always know which dates came from the platform and which from us.

Images are archived by content hash (as WebP plus a thumbnail), so they keep working after the platform's link expires. For video we keep metadata and a preview image by default, and the full file for advertisers on a watchlist.

Ended ads stay retrievable under the same id. GET /v1/ads/{id}/history returns every version we observed and the status changes, and GET /v1/search?source=history searches our archive, including ads the platforms no longer serve. Ads last shown more than 12 months ago cost twice the normal credits; see pricing.

History is never deleted automatically. The exception is a GDPR request: deletion removes the records, their versions and the archived media, and we keep a tombstone so the ad is not collected again. Takedown requests go through /trust#takedown.

What we know and what we infer

We know the dates the platform published and the times we saw an ad. Between two crawls, we know nothing. If an ad disappears from a library, we cannot always tell whether it was deleted, removed for a violation or aged out of the library's window.

Where a platform has no status, we return unknown and do not guess. Where it has no dates, days_running stays empty. When our first_seen_by_us is the day we started crawling an advertiser, it says something about us, not about the ad.

If you are tracking competitors over months, start the history early: a watchlist (POST /v1/watchlists, see the companies page) re-checks your competitors on a schedule you set (daily by default) and archives what it finds, and the API details are on the developer page. For finding the right accounts first, read how to see competitors ads and finding advertiser ids from a domain; to query the archive from a workflow tool, see ad library data in Clay and n8n.

Questions people ask

Can I see old Facebook ads that are no longer running?
Yes. The Meta Ad Library keeps inactive ads, and you can include them by setting the status filter to all or inactive. Opening an inactive ad by its id works through the direct link facebook.com/ads/library/?id=<id>, while searching the id as a keyword often finds nothing.
How far back do ad libraries go?
It differs by platform. LinkedIn's search only goes back about one year, Pinterest about one year in 30-day windows, and X's repository starts at 26 Aug 2023. Google returned nothing for a January 2024 date filter in our tests.
Why do ad images disappear from ad libraries?
Many libraries serve media through signed links that expire. Meta's image and video URLs carry an expiry parameter, and TikTok's video links expire within hours, so a saved link stops working even when the ad record still exists.
How does AdLib keep ad history?
We store a new version of an ad only when its content changes, keep our own first and last seen times next to the platform's dates, and archive images by content hash. Ended ads stay retrievable under the same id.