Method · updated 2 October 2026

When a library is too big to read whole

Most of the ad libraries we read fit in one pass. Some do not. Past roughly a thousand live ads you stop measuring a competitor's library and start sampling it — and the two words describe different kinds of knowledge. This page is about which claims survive the switch, because we have published pages that lean on both and the distinction is easy to lose.

The short version: a sample can tell you what is in a library. It cannot tell you how big the library is, and it cannot tell you what share of it is repeats.

The read that shows the problem

We pulled a beauty marketplace's library and decoded 1,258 distinct creatives from 1,000 ads. That 1,000 is not a finding about the brand. It is our own ceiling — the default cap on a single pull — and the pull hit it.

That deck also carried no live-library total for any brand in it. So for this advertiser we have a large, precise creative count and no measurable library size at all: it is larger than 1,000 by an unknown amount.

Ads pulledCreatives decodedPer adLive total
Beauty marketplace1,000 — our cap1,2581.26Not measured
Rival A2232090.94Not measured
Rival B250750.30Not measured

Source: public Meta Ad Library, read 2 October 2026. “Our cap” is the default maximum ads per pull in our own pipeline, not a property of the advertiser.

Note what is still usable here. The creatives-per-ad ratio survives sampling, because it is a property of the ads you actually read rather than of the whole library. Rival B returning 75 distinct creatives from 250 ads — 0.30 per ad — is a real observation about those 250 ads: most of them were carrying the same work.

Two claims a sample cannot carry

One: a library size. A pull that stops at a cap tells you the library is at least that big. It does not tell you how much bigger, and the distance is not estimable from the sample. “1,000 ads pulled” and “1,000 ads running” are different sentences and only one of them is true here.

Two: a deduplication rate. This is the one we are strictest about. A deduplication rate says what share of all a library's media files are byte-identical repeats of each other. Hash a sample and you learn how much duplication sits inside that sample — a different number, and biased low, because two copies of the same file are less likely to both land in a partial pull than to both exist in the library.

So our 89.5% repeat rate is quotable precisely because that library's size was exact at 300 live ads and the 352 media files hashed were everything attached to the 288 ads we read — numerator and denominator describing the same set. The same calculation on a 402-creative sample of a 2,247-ad library would produce a number, and the number would not mean what it appears to mean.

Census, sample, capped

Every figure we publish falls into one of three states, and we label it on the page rather than in a footnote. The first state is the one most often overstated: an exact size means our pull limit was never reached, not that every ad was downloaded. Ads expire between the count and the pull, so a library can have an exact size of 553 and still only yield 410 ads to read.

StateWhat happenedLibrary sizeDedup rateAttribute shares
ExactLibrary never exceeded our pull limitExactValid, over the ads actually readValid if large enough
SampledDeliberate partial pull of a large libraryExact, from the Ad Library's own countNot validIndicative only
CappedPull hit our ceiling, no live total availableUnknown, above the capNot validIndicative only

The live total and the creative count come from different places — the Ad Library reports the first, we compute the second — which is why a figure can be a census on size and a sample on content at the same time.

How often a pull stops at a ceiling

Across 99 advertiser pulls in our corpus, 8 stopped at a cap rather than at the end of the library. They split into two kinds, and the distinction matters because one is our own limit and the other is a limit on rivals.

CeilingPullsWhat it means
1,000 ads1Our default cap on a single brand pull. The library is larger than 1,000 by an unknown amount.
150 creatives7Our cap on a rival read. The live total is still exact; the creative count is a slice of it.

Source: our own 35 attributed competitor reads, re-audited 2 October 2026. The seven 150-creative stops were all rivals: two in vitamins and nutrition, two in feminine care, two in intimates and one in QSR.

Seven pulls landing on exactly 150 is the signature worth recognising. A library does not naturally end on a round number. When a count sits precisely on a cap, it is reporting the tool rather than the advertiser — and a figure that looks suspiciously tidy across several unrelated brands is usually a configuration value in disguise.

Worked examples from our own corpus

Why this is published rather than assumed

Because we got it wrong. A figure of 2,247 live ads reached one of these pages attributed to the wrong brand — it was a rival's library, picked up by a sweep that recorded values without walking each advertiser individually. It was caught and corrected, and it is the reason our gallery admits only libraries whose size is exact, and reports separately how many of each were read.

The pattern behind that error is worth naming: the risk is not in the measurement, it is in the sentence written about it. The hash was right, the pull was right, and the prose attached the number to the wrong company. Labelling every figure census, sample or capped is how we make that kind of mistake visible rather than invisible.