Ukraine's drone campaign has struck 34 refineries, up to 2,469 km inside Russia
Ukraine's General Staff claims 42.7% of Russia's refining capacity is out of action; independent estimates run 20–40%. This dataset of 34 struck refineries maps strike depth against damage severity, tracks cumulative capacity loss against those estimates, and flags which regional fuel markets have crossed critical supply thresholds.
Refineries struck since March 2024
Confirmed strike events across tracked sites
Combined capacity of struck refineries
Strike depth vs. damage severity — weak correlation
Key findings
Since March 2024, Ukrainian long-range drones have struck at least 34 refineries and gas-processing plants across seven Russian macro-regions — from Novoshakhtinsk, 181 km from the front line, to Omsk, 2,469 km deep in Siberia.
The campaign's geography tells a story that distance alone doesn't explain. Reach has expanded steadily, but outcome depends more on strike persistence and facility vulnerability than on proximity to the front.
Distance is a weak predictor of damage. The correlation between strike depth and severity is only r = −0.06 — deep strikes on Omsk (2,469 km), Tyumen (2,050 km), and Permnefteorgsintez (1,526 km) still achieved "Severe" to full "Shutdown" outcomes on some of Russia's largest facilities.
Repeated strikes compound damage. Facilities hit 6+ times — Volgograd, Ryazan, Slavyansk-ECO — accumulated some of the highest cumulative capacity losses in the dataset, regardless of distance.
A bottom-up tracker of this dataset's 23 refineries with usable capacity-loss estimates implies over half of tracked capacity has been affected — well above most third-party estimates, since it doesn't account for later repairs and restarts.
Central Russia and the Volga basin — the two regions with the most struck refineries — are also the two where Reuters and Euromaidan Press have reported the most acute local shortages.
of Russia's designed refining capacity, per Ukraine's General Staff — the highest official estimate to date.
"More than 20% offline" — independent analysts put functional disruption at closer to a third.
— International Energy Agency, cited in Al Jazeera, Jul 2026
Every struck refinery, mapped
Each colored marker is one struck refinery, sized by pre-strike capacity. Use the map toggle to show five operating refineries where no public strike was found by the research cutoff. These map-only facilities are excluded from every strike count and capacity-loss calculation.
Strike depth vs. damage severity
Each point is one refinery. The x-axis is the great-circle distance from the facility to the nearest point on the active contact line — a strike-depth proxy, not the actual drone flight path. Bubble size scales with pre-strike refining capacity. Hover any point for details.
Pearson correlation, distance vs. severity rank
Weak and not statistically meaningful given the sample size — proximity to the front line does not reliably predict how badly a facility is damaged.
Deepest confirmed strike — Omsk refinery, Siberia
Russia's single largest refinery (442,000 bpd) was struck for the first time in July 2026, more than 2,400 km from the nearest contact-line sector.
Targeted refineries, ranked by capacity
Pre-strike nameplate capacity for the 32 facilities with published figures (Oryol and Astrakhan GPP lack reliable numbers), colored by reported damage severity. Nine of the ten highest-capacity refineries on this list have been hit more than once.
Capacity offline crossed the "critical" threshold by mid-2026
The dark line is a bottom-up tracker: cumulative capacity offline among this dataset's 23 refineries with usable capacity-loss estimates, assuming losses persist at their last-reported fraction. Markers are independently reported national estimates from Reuters, S&P Global, the IEA, and Ukraine's General Staff.
This dataset's bottom-up tracker, as of Jul 2026
Runs above most third-party estimates because it assumes no repairs — a deliberate upper-bound read, not a claim of higher accuracy than independent reporting.
Regional fuel markets: cumulative exposure
Each panel tracks cumulative offline capacity as a share of this dataset's struck refineries within that macro-region — a proxy for how exposed each regional fuel market is to the tracked strikes, not the region's full refining base. The dotted line marks 50% of tracked regional capacity offline, roughly where outlets began reporting local rationing.
How this dataset was built
Scope
The dataset covers 34 Russian refineries and gas-processing plants reported struck by Ukrainian long-range drones between March 2024 and July 2026, compiled from reporting by the Caspian Policy Center, Ukraine's Center for Countering Disinformation, Reuters, the Moscow Times, Euromaidan Press, and other outlets cited per-row in the data table below.
Distance proxy
"Strike depth" is the great-circle (haversine) distance from each refinery's coordinates to the nearest of eight reference points along the active Ukraine–Russia contact line as of mid-2026 (Sumy border sector through the Kherson/Dnipro sector). This is a straight-line proxy — actual drone routing is typically longer and rarely public.
Severity & estimated loss
Severity is a four-level scale coded from reporting language: Light-Moderate (rank 1.5), Moderate (2), Severe (3), and Shutdown (4). Estimated barrels-per-day lost multiplies each refinery's nameplate capacity by a loss fraction inferred from the same reporting — a full shutdown scores 1.00; partial unit damage scores lower.
National cumulative tracker
The bottom-up tracker sums estimated bpd lost across the 23 refineries with usable capacity-loss estimates, as a step function ordered by each event's reported date, divided by an assumed ~6.5M bpd national nameplate capacity (327 Mt/yr, per RBC-Ukraine/Moscow Times reporting). It assumes capacity stays offline at its last reported loss fraction — a deliberate lower-bound-on-repairs, upper-bound-on-cumulative-loss assumption. Independent benchmark markers come directly from the cited outlets and use their own, often undisclosed, methodologies.
Why this runs higher than other estimates
This tracker is monotonic — once a refinery's estimated loss fraction is recorded, it stays counted at that level indefinitely, even after reported repairs or partial restarts. Snapshot estimates like the IEA's “more than 20%” and Kpler/Reuters' 33–40% net out capacity that has since come back online — Kpler, for instance, reported Volgograd, Syzran, Saratov, and Ryazan completing repairs through June–July, pulling its offline estimate down toward roughly 300k bpd by July. Ukraine's General Staff figure of 42.7% is also a snapshot, dated 4 July, and hasn't been publicly revised despite three new refineries (NS-Oil, Tyumen, TAIF-NK) and further re-strikes on Afipsky, Saratov, TANECO, Salavat, Yaroslavl, Ryazan, and Permnefteorgsintez recorded here since. All three estimates also apply different, largely undisclosed denominators for “total capacity,” so the absolute levels aren't directly comparable — only the shared upward trajectory is.
Limitations
- The bottom-up tracker doesn't model repairs or restarts, so it likely overstates capacity currently offline even as it may understate historical peak disruption at facilities without granular reporting.
- Two facilities (Oryol, Astrakhan GPP) have no reliable public bpd figure and are excluded from all capacity-weighted charts, though included in the strike-depth scatter and the full data table.
- Regional panels use each region's tracked-refinery capacity as the denominator, not the region's total refining base — a proxy for exposure among struck facilities, not a market-share figure.
- Severity coding is qualitative, derived from open-source reporting language rather than verified engineering assessments.