Meta's EU reach by country, age and gender: what it is and how to read it

Published 13 Nov 2026. Data read Meta's EU reach read 2026-11-12 and 2026-11-13; breakdown check from Poseidon's nightly audit of 2026-11-13; tools' pages read 2026-11-12 and 2026-11-13. Source: Meta's Ad Library (EU transparency data), read by Poseidon, unless the text names another source.

For every ad shown in the EU, Meta's Ad Library publishes how many people in the EU saw it, and splits that audience by country, age and gender. The split is Meta's own data, not an estimate, but it doesn't add up exactly to the total, so the safe way to read a country or an age band is as a share of the split, never as a number of people.

What Meta shows on each ad

Open an ad in the Meta Ad Library, then "See ad details", then the European Union transparency section:

FieldWhat it is
EU reachPeople in the EU who saw the ad at least once since it started
By countryThe same audience, row by row per EU country
By age and genderRows per age band (18–24 to 65+) and gender (women, men, unknown)
TargetingThe age range, gender and places the advertiser chose

It's shown for ads delivered in the EU only, and it's the figure as of today: the Ad Library keeps no history.

Why the split doesn't add up to the total

Poseidon checked this on 6,664 readings of Meta's data (nightly audit, 13 November 2026). Adding up an ad's age and gender rows gives a figure that differs from Meta's EU total:

Rows added up, divided by Meta's EU totalMeasured
Lowest0.93
Median1.006
Highest1.10
Readings where the rows add up to more than the total4,038 of 6,664

The rows are close to the total but not equal to it, and Meta doesn't publish why. In 2,493 readings, a single country's rows alone added up to more than the EU total. So Poseidon gives a country, an age band or a gender only as a share of Meta's split, and the only number of people it shows is Meta's EU total.

What the split looks like on winning ads

Across 6,547 winning e-commerce ads read on 12 and 13 November 2026, women made up 69.5% of Meta's split and the largest age band was 35 to 44 (25.9%). Each ad's main country, the one holding the largest part of its split, spreads like this:

Main countryWinning ads
Germany1,233
France1,184
Italy880
Poland824
Spain768
the Netherlands559
22 other country codes1,099

By niche, see who Meta shows winning ads to, by age and gender.

Which tools read it for you

From each tool's own pages, read on 12 and 13 November 2026:

ToolEU reach per ad (Meta's total)Country splitAge and gender splitHistory keptAPI or MCP
Meta Ad LibraryYesYesYesNoMeta's own API
PoseidonYesAs sharesAs sharesRead dailyBoth
Ads BenchYes, "official data, not estimates"YesYesNot foundNot found
AdLib APIYesYes (reach by country)Ages shown; gender not found"Recorded over time"Both
AdScanYes, UK, EU and BrazilYesYes"Last 7 / 30 days" filtersAPI docs listed
Apify Facebook Ads scraperYes, on requestYesYesNo, one read per callAPI

"Not found" means it wasn't on the tool's public pages when read, not that it can't. Corrections: contact@askposeidon.app.

How this was measured

FAQ

Is this data an estimate?

No. It's Meta's own count, published under the EU Digital Services Act. What isn't published is spend and impressions. See can you estimate spend from reach?

Why doesn't the split add up to the total?

Meta doesn't say. Poseidon measured it: in 4,038 of 6,664 readings the rows added up to more than the total, by 10.4% at most. That's why a country is best read as a share.

Is it the targeting or the real audience?

The real audience: who Meta actually delivered the ad to. The targeting is listed separately, and the two often differ.

Ask Poseidon who your competitors' ads really reach. askposeidon.app

Get these answers for your own niche

Get an API key with 100 free credits and ask Poseidon yourself.

One free key per email, with 100 credits. Your email is kept only as a scrambled hash. How we handle your data