From the report

KEY FINDINGS

The investigation’s main findings, followed by a breakdown of spending, the material collected and how long it stayed online on each platform. Spending figures include Ad Clarity measurements and cost projections adjusted for gaps in the ad archives.

  1. 01

    Between October 2023 and October 2026 the operation recorded at least 533 million exposures of anti-Muslim, anti-migrant, racist and anti-Qatar advertising in 30 countries, mostly in Europe.

  2. 02

    Meta puts the first phase alone at around $1.2 million. That is the highest advertising spend Meta has disclosed for any operation targeting EU member states: 69% of the total across the 13 such networks with a stated spend, 6.8 times the next largest and 11 times what Meta stated for Doppelgänger. Phases two and three appear nowhere in Meta’s record (Section 9.6). At the commercial tracker’s rate, with YouTube views at $0.02 each, that advertising prices at $5.08 million, and at up to $8.22 million when projected for what the ad archives missed. Exposures are deliveries in mixed units (impressions, reach and video views), and one person can account for several (Sections 1.1, 9.4, 14.6).

  3. 03

    The operation ran for 37 months in three phases and survived enforcement by Meta . Meta removed the phase-one network in about mid-May 2024; advertising resumed under new identities in November 2024 and returned at scale in October 2025 (Sections 1.2, 8.4), highlighting the relative ease of bypassing platform moderation.

  4. 04

    After the takedown the operation returned to Meta but had even more success with YouTube and TikTok. 189 YouTube videos on 15 channels drew 132 million views, more than the 94.7 million reach of all 1,473 Facebook advertisements, and 359 TikTok advertisements reached 72.2 million. While TikTok tend to remove offending ads (although not the advertiser responsible), six of the 15 YouTube channels were terminated or emptied only in October 2026, and three were replaced under the same names within days (Sections 1.1, 10.1).

  5. 05

    In Europe the campaign uses the structure of the “Great Replacement” conspiracy theory, with Qatar in the role antisemitic versions give to George Soros: a hidden power directing Muslim immigration to “Islamise” Europe. In Lebanon it ran anti-Hezbollah and anti-Iran material aimed at Shia audiences (Sections 4.1, 4.2).

  6. 06

    Almost none of the advertising was filed as political or social-issue content, so Meta’s transparency rules for that category did not apply. For phase one, Meta’s own figure is more than a thousand times the spend visible for the same pages in its Ad Library. Google and TikTok publish no spend figures (Sections 8.3, 10.1).

  7. 07

    France received the most placements, 991 of 2,748. The largest audiences were in the UK, with 154 million recorded exposures, and the United States, with 100 million. Phase two was aimed mainly at Hungary, and phase three at France, Germany, Italy, the UK and Lebanon (Sections 2.1, 2.2, 2.3). These figures are known exposures, the actual balance received by countries is likely to be different from the known figures.

  8. 08

    The advertising ran alongside elections. Phase-one buying in France ran through the months before the June 2024 European Parliament election, and UK buying stopped on 17 May 2024, days before the general election was called. Phase-three buying in Germany ran through the Saxony-Anhalt state election of 6 September 2026 (Section 2.3). The campaign remains active in countries approaching major elections, including France and Italy in 2027. Its sustained promotion of anti-Muslim and anti-migrant narratives raises concerns about attempts to shape the political environment ahead of these votes, beyond the formal election campaign period. The campaign targeted the UK in the months leading up to the July/August 2024 anti-Muslim riots that occurred after the Southport murders.

  9. 09

    The operation also ran on Twitter/X, Telegram, Wikipedia and Change.org, and offline: billboards in Times Square and Lebanon, a video screened at CPAC 2024, and a staged protest by two former US pageant winners outside a Valentino store in Atlanta. A sockpuppet network of at least 24 accounts edited Wikipedia articles on Qatar, and a petition in the name of a fake human rights organisation gathered more than 7,500 signatures (Sections 5, 7.1).

  10. 10

    Advertising was placed through accounts and companies recorded in Vietnam, Brazil and Belgium, and through German-named TikTok advertisers, none with a disclosed connection to the countries targeted. Payers and page identities changed repeatedly: the median identity advertised for 3 days. The two intermediaries who responded, LT Media in Vietnam and Agência Moll in Brazil, both said they sold the advertising assets to a buyer they could not or would not identify (Sections 6, 8.1, 8.2, 10.3).

  11. 11

    The evidence indicates with moderate to high confidence that the campaign originated in Israel. Edit metadata in the Telegram channel’s videos puts their production on a Sunday-to-Thursday working week at UTC+3, on machines with Hebrew drive and folder names; one Wikipedia editing session exposed an Israeli fixed-line IP address among German proxy exits; and campaign material passed twice through Johnnie Moore and his firm JDA Worldwide. The client who commissioned the operation is not established (Section 7.3).

  12. 12

    The advertising drew polarised responses. Of 406 comments coded on UK-targeted Facebook advertisements in 2024, 61% supported Islamophobic views. Of 2,560 top-level YouTube comments, 28% supported the message and 42% opposed it, and 15% attributed the advertising to Israel (Section 12).

  13. 13

    The operation repurposed material circulated by prominent far-right and anti-Muslim accounts. Editing metadata identifies the source clips used in 18 Telegram videos: twelve drew from RadioGenoa, while other source accounts included Tommy Robinson, Éric Zemmour and Europe Invasion. The operation retained or adapted captions and added its own branding and allegations that Qatar was orchestrating Europe’s “Islamisation” (Section 5.5).

  14. 14

    The campaign combined AI-generated imagery and songs, video-game and music-festival parodies, and repurposed footage of migration and protests. Creatives referencing Ceuta and French student protests presented these events as evidence of a Qatar-directed project to “Islamise” Europe, while Christmas-song parodies depicted Muslims as displacing European cultural traditions (Section 4.1).

  15. 15

    The operation’s European-targeted TikTok advertising promoting regime change in Iran was running by 24 February 2026, four days before US–Israeli strikes began. This strand comprised at least 118 advertisements with 12.6 million recorded reach, including messages opposing negotiations with Tehran and depicting the government’s overthrow.

From the report’s key findings. Read the full report for the evidence and sources behind each finding.

01

Top-line stats

Combined tracker-measured and platform-reported metrics across all three phases of the operation.

Recorded exposure — floor*
533M
Projected exposure*
830.9M
Estimated total cost
$5–11M
Projected ad spend*
$5.08–8.22M
Tracker-measured spend (Ad Clarity)
$1.59M
Facebook reach
94.7M
YouTube views
132.2M
TikTok reach
72.2M
Facebook ads
1,473
YouTube videos
189
TikTok ads
359
TikTok account videos
105
Countries targeted
30
Payer and beneficiary names
88
Months of operation
37
Platforms used
7
Facebook ad · mean
2.3 days
until it came down
TikTok ad · mean
4 days
until it came down
YouTube video · mean
221+ days
and counting, none removed
Campaign · mean
48 days
first piece to last
Ads per campaign · mean
26
across 78 campaigns
02

Total operation cost

Adding production, infrastructure, and management overhead to the projected ad spend. The total tracks the ad-spend range: the low end pairs the $5.08M floor with the low overhead estimates, the high end pairs $8.22M with the high ones.

$5–11M estimated total

Projected ad spend (all platforms) — floor to corrected $5.08–8.22M
Content production (video, graphics, translations, AI tools) $1M–$2M
Infrastructure & personnel (shell companies, operatives, hosting) $500K–$1M
Offline activations (Times Square, CPAC, billboards, protests) $500K–$1M
Platform & management fees (ad accounts, proxies, payment processing) $500K–$1M
Cross-check: Meta's own August 2024 report on the takedown — not its Ad Library, but its published account of the operation — put Phase 1 at more than $1.2M on Meta placements alone. Ad Clarity's $1,594,324 spans every Phase 1 placement — Meta, X, programmatic display and the campaign websites — and so subsumes Meta's figure while exceeding it by about a third, which is the expected shape if Facebook was the largest single line but not the whole buy. The two independent sources agree, and Phase 1 is therefore solid. Meta's Ad Library, by contrast, showed a spend for only 43 of those pages' 1,018 archived ads, $726–$896 at the bottom and top of the ranges it displays, nearly all in Vietnamese dong, and none for the rest. That is a partial capture of what the archive exposed, not a total — and it is the archive, the understating one, that Phases 2 and 3 rest on entirely. The $5.08M floor assumes that problem stopped after Phase 1. Nothing in the evidence suggests it did.
03

Spend by phase

Per-phase budget allocation showing the operation's evolution from programmatic display to social-first video.

Phase 1

Oct 2023 — Jul 2024 (10 months)
Facebook ads1,018
Facebook reach40.7M
Ad Clarity spend (Phase 1)$1.59M
Ad Clarity impressions260M
Countries (tracker)21
$1.63M
Estimated ad spend
floor · $1.92M corrected for archive loss

Phase 2

Jun — Dec 2024 (7 months)
Facebook ads97
Facebook reach4.5M
Page identities24
StrategyPivot & rebrand
Key marketsHungary, Belgium
Ad Clarity dataMinimal
$36K
Estimated ad spend
floor · $108K corrected for archive loss

Phase 3

Oct 2025 — Oct 2026 (13 months)
Facebook ads358
Facebook pages15
Facebook reach49.5M
YouTube videos189
YouTube channels15
YouTube views132.2M
TikTok ads359
TikTok reach72.2M
TikTok advertisers5
$3.42M
Estimated ad spend
floor · $6.20M corrected for archive loss
04

Platform breakdown

Platform-reported reach across the five channels used by the operation. Ad Clarity is not a platform — it is the third-party tracking tool that recorded $1.59M of Phase 1 spend across these platforms.

Facebook
94.7M
YouTube
132.2M
TikTok ads
72.2M
TikTok account videos
5.6M
Telegram
3 channels
Ad Clarity tracked 262M impressions across these platforms and recorded $1,594,324 of ad spend, $6,015 of it on one phase-2 page. This is a measurement source, not a separate platform.
05

Scale of the archive

One square below is a single row in the ad archives — one Facebook ad, one YouTube Short, one TikTok ad — so the count on screen is the count in the data. Marks are sized by reach and grouped by the identity that ran them.

Total units
2,126
Campaign identities
86
Platform-reported reach
305M
Facebook ads
1,473
YouTube videos
189
TikTok ads
464
Table view — all campaign identities
IdentityPlatformPhase UnitsReach
Source: Ultimate Qatar Plot workbook — Meta Ad Library, YouTube, TikTok Ad Library. One mark per archive row; totals-row artefacts excluded. Mark area is proportional to platform-reported reach above a 5px floor, so rows below roughly 150K read as “small” rather than to scale; hollow marks are rows with no reach recorded. Switch to Uniform to read the chart as a straight count. By month uses the ad start date, upload date or first-shown date: 2,099 rows carry one, 27 do not and group together at the end — almost all of them Phase 1 and 2 Facebook rows, where the sheet records an active period rather than a start date. Read the monthly view as the shape of the dated portion, not of the whole. Chronological orders the marks inside each group by that same date, oldest first, and puts undated rows at the end of the group. Phase 1 Oct 2023 — Jul 2024, Phase 2 Jun — Dec 2024, Phase 3 Oct 2025 — Oct 2026. Reach here is the platform-reported sum across these three archives. It is not the 533M deduplicated impression figure on the stats page, which substitutes Ad Clarity's measured impressions for Phase 1 and adds X / programmatic. Regenerate with python data/build_scale.py.

How long each identity kept launching, measured the same way on every platform: the days between a campaign's first dated piece and its last. The windows are comparable across platforms. What is not comparable is how long the media then stayed visible — the average YouTube video is still up 221 days on, about 97 times the average Facebook ad's run, because none of them has been taken down.

PlatformCampaignsMean daysLongest
Facebook6134184
YouTube1538161
TikTok7161395

Campaigns with no dated rows are excluded, so these counts are smaller than the identity totals above. Visible-life figures measured as at 23 October 2026, from three different archive fields: Facebook recorded active time, TikTok first-shown to last-shown, YouTube upload date to today.

06

The archive by month

Recorded exposure over the operational span, stacked by platform.

0M 20M 40M 60M 80M 260M tracker-measured, no date on the row Jan 24 Jul 24 Jan 25 Jul 25 Jan 26 Jul 26 Facebook YouTube TikTok recorded, not datable

Recorded exposure per month, stacked by platform. 2,099 of 2,126 archived rows carry a date and 303,346,770 in reach sits on them. The hatched band is the tracker’s 259,998,231 Phase 1 impressions, which the exposure model substitutes for the archive’s own reach on the pages it covers; those are measured at page level and carry no date, so they are drawn flat across the phase rather than given a monthly shape they do not have.

07

Method note: how projected ad spend is derived

Scaling Ad Clarity’s tracker measurements to estimate cross-platform ad expenditure, and correcting for the phases no tracker covers.

Why every archive figure here is a floor

The archive against Meta’s own disclosure

The Meta Ad Library holds 1,018 phase-1 Facebook advertisements carrying 40,686,860 in recorded reach. Priced at the blended CPM above, that reach cost between $371,723 and $247,816, the range depending on how many impressions each unique viewer received.

Meta states it was paid more than $1.2M for the same phase, which is 3.2 to 4.8 times that. If the archived ads are representative of the rest, the operation ran roughly 3,286 to 4,929 advertisements on Meta in phase 1, of which 2,268 to 3,911 never reached the public archive. On that reading the Ad Library holds between 21% and 31% of what was bought.

Three things hold the estimate open rather than closing it, and all three point the same way. Meta’s figure is a floor, stated as “more than”. It covers Meta’s platforms rather than Facebook alone. And the CPM is the tracker’s blended phase-1 rate, not a Meta-specific one. Each makes the archive’s share smaller, not larger.

This is why the recorded totals on this page are described as minimums and the projection is given alongside them. The projection corrects for reach the archives never reported; this calculation says the archives are also missing whole advertisements.

Methodology

Step 1 — Derive blended CPM from Ad Clarity

Ad Clarity tracked 261,758,827 impressions and $1,594,324 of spend across its 17 page labels, yielding a blended CPM of $6.09 ($1,594,324 / 261,759 impressions-in-thousands).

Step 2 — Deduplicate Phase 1

Ad Clarity already tracks 17 of the 26 Phase 1 Facebook pages, so their 33.6M in platform-reported reach is not counted again. The 9 pages Ad Clarity missed — Le vestiaire du PSG, One Peace Global, Europe First, Dirty Game, Harrods Secrets, Qonspiracy and three Arabic-language pages — add 7.1M to the tracker’s 260.0M Phase 1 impressions. Phase 1 therefore totals 267.1M. The same rule removes Make the West Great Again (340K) from Phase 2, the only later page Ad Clarity covers.

Step 3 — Apply the CPM (the floor)

Phases 2 and 3 have no Ad Clarity coverage, so platform-reported Facebook reach is used directly. YouTube and TikTok are treated at a 1:1 view-to-impression ratio (conservative, as views typically undercount impressions). The $6.09 CPM applied to that base gives $5.08M.

Step 4 — Correct for what the archives lost (the upper bound)

Step 3 counts Phase 1 through Ad Clarity but Phases 2 and 3 through the ad libraries alone, and the two do not see the same thing. On the 16 tracked pages where both exist (15 in Phase 1, one in Phase 2), Ad Clarity recorded 261,758,827 impressions against 33,917,831 of library reach — a factor of 7.72×. Ad libraries only retain what was still archived when they were scraped, so a campaign measured that way is a floor, not a count.

Projecting that ratio onto the library-only portions — the 9 untracked Phase 1 pages, all of Phase 2, all of Phase 3 — while leaving platform-reported YouTube and TikTok untouched raises the base to 830.9M impressions and the ad spend to $8.22M. Phase 3 accounts for most of the difference: 49.5M of library reach becomes 288.2M. Reach that is really an impressions band copied from the ad (16.4M across Phases 2 and 3) is carried unscaled.

What the 7.72× does and does not tell you

It folds together two effects that this data cannot separate: ads deleted from the libraries before they were scraped, and the gap between reach (accounts) and impressions (views of an ad). Only 66 rows in the archive declare both an impression range and a reach figure, and they are too few and too scattered to split the two (median 1.29×, highest 2.25×). So 7.72× is an upper bound on the correction rather than a measured under-capture rate.

The direction, though, is not in doubt. The $6.09 CPM is a cost per thousand impressions, and Steps 1–3 apply it to a Phase 2 and 3 base denominated in reach. Those units do not match, and every repeat view of an ad cost money that the floor figure does not count. $5.08M is a floor by construction; the true figure sits between it and $8.22M.

The Meta disclosure says the same thing, in dollars

The 7.72× compares two different metrics. Meta's own numbers do not — and the sharpest evidence on this page is that Meta contradicts itself. Its August 2024 report on the takedown states the operation spent more than $1.2M on Meta placements in Phase 1. Meta's own Ad Library, scraped for those same pages over that same period, showed a spend for 43 of the 1,018 archived ads: $726–$896 at the bottom and top of the ranges it displays, and none for the rest. That figure is what the archive exposed of the spending, a partial capture rather than a total, so the two are not a like-for-like pair; what the disclosure shows is how little of the spending the archive made visible. Across all three phases the archive holds a spend for 268 of 1,473 ads, $98K–$135K in all, most of it Phase 3, where the operation billed in dollars and euros. Extrapolating the visible rates to every archived ad, per ad or per thousand accounts reached, puts Phase 1 at $17K–$34K, at most 3% of Meta's figure: the archive's own rates cannot account for the spending even when applied to everything it holds. The remainder is ads it never saw and delivery its reach figures do not count. All three phases together extrapolate to $164K–$276K.

The reason is structural rather than accidental: the Ad Library only publishes a spend figure for ads categorised as political or social-issue advertising. Almost none of this operation's ads were filed that way, so for most of them the library reports no spend at all. That under-reporting does not stop after Phase 1 — but the disclosure that exposed it does. Phase 1 is the only phase with two independent measures; Phases 2 and 3 rest entirely on the source we can show understates by orders of magnitude.

Verified ad spend (Ad Clarity)
$1.59M
FB spend visible in the Ad Library, all phases (partial capture)
$98K–$135K
Source
Basis
Impressions (floor / corrected)
Est. spend
Phase 1
Ad Clarity + 9 untracked pages
267.1M / 314.9M
$1,627K / $1,918K
FB Phase 2
FB reach, 1 page deduped
5.9M / 17.7M
$36K / $108K
FB Phase 3
FB reach
49.5M / 288.2M
$301K / $1,756K
YouTube
Views (1:1)
132.2M / 132.2M
$2,645K / $3,967K
TikTok ads
Reach (1:1)
72.2M / 72.2M
$440K / $440K
TikTok account videos
Views (1:1)
5.6M / 5.6M
$34K / $34K
TOTAL
—
532.6M / 830.9M
$5.08M / $8.22M