Ukraine's drones put 2 to 4.3 million barrels a day of Russia's refining offline. Diesel cracks are at records.

Ukrainian drones took the Moscow Oil Refinery at Kapotnya offline on September 20, the final day of Russia's State Duma election campaign, and the market is still digesting how many other plants are sitting idle. The cumulative toll is wide because strike calls and capacity estimates differ by source, but every number in the debate points the same direction: Russia's refinery runs are down hard, its diesel and gasoline exports are being choked by policy on top of damage, and European distillate prices are paying for it at the pump.
The timeline: what has been hit, and who says so
The campaign is not new, but the September wave brought it to Moscow's doorstep. On September 20, a drone strike hit the Gazprom Neft Moscow Oil Refinery at Kapotnya, about 16 miles from the Kremlin. President Zelensky said Kyiv struck "one of Russia's key oil industry facilities," while Moscow Mayor Sergei Sobyanin confirmed damage in the capital's orbit, said a large drone wave of 450 craft headed toward Moscow, and Russia claimed it downed 660 drones. Reuters, via Meduza, reported that the refinery halted crude processing and that repairs could take weeks; Gazprom Neft did not comment.
Reuters sources, via The Moscow Times, also reported that Rosneft's Syzran refinery in the Samara region paused processing on September 15, with its main CDU-6 crude distillation unit, about 71% of that plant's capacity, damaged and possibly a month or more from repair. Ukraine's General Staff listed Syzran among targets struck between September 14 and 20. Russia's Energy Ministry has not published a plant-by-plant outage tally.
| Date | Target | Type | Ukraine says | Russia says | Confirmed by | Est. capacity effect |
|---|---|---|---|---|---|---|
| 2026-09-20 | Gazprom Neft Moscow Oil Refinery, Kapotnya (Moscow) | refinery | President Zelensky said Kyiv hit "one of Russia's key oil industry facilities and the aggressor's logistics facility"; Ukrainian sources cited primary (AVT-6-type) and isomerization units hit and a large fire. (Zelensky / Ukrainian reports (via Srpske Novine, Energy News Beat)) | Moscow Mayor Sobyanin confirmed damage in the capital's orbit and a large drone wave (450 drones toward the capital per Sobyanin; Russia claimed it downed 660 craft); Moscow Region Gov. Vorobyov confirmed two dead in the region; Gazprom Neft did not comment. (Sergei Sobyanin / Andrei Vorobyov (via BBC/Srpske, Energy News Beat)) | Srpske Novine / BBC report + Reuters June confirmation of plant outage | 220 to 245 kb/d (Energy News Beat (plant nameplate ~220,000-245,000 b/d), 2026-09-20) |
| 2026-09-15 | Syzran refinery (Rosneft, Samara region) | refinery | Ukraine's General Staff listed the Syzran refinery among targets struck between 14 and 20 September in its post-campaign report; it said more than 45% of Russia's refining capacity is offline as of 21 September and cited a Euro-5 fuel shortage. (General Staff of Ukraine (via Caliber.Az, 2026-09-21)) | No official Russian statement located; Reuters (via Moscow Times), citing three industry sources, said the plant paused processing on 15 September and that the main CDU-6 crude-distillation unit, accounting for 71% of capacity, was damaged and could take at least a month to repair. (Reuters via The Moscow Times, 2026-09-16) | Reuters (via The Moscow Times), 2026-09-16 | n/a |
| 2026-08-30 | Kirishi refinery | refinery | SOF/SBU/Unmanned Systems struck Kirishi, halting crude processing (>half of capacity out). (Ukraine Joint Deep Strike (via drone-warfare)) | Crude processing halted at the plant, ~7% of Russian refining. (industry sources (drone-warfare)) | drone-warfare (crude processing halted, >half capacity) | 300 to 420 kb/d (drone-warfare (20 Mt/y, ~7% of refining), 2026-08-30) |
| 2026-08-25 | Lukoil NORSI refinery (Kstovo) | refinery | SOF/Unmanned Systems struck NORSI overnight 25-26 Aug; General Staff confirmed strike and fire; plant ~17 Mt/y, ~11% of Russian petrol. (Ukraine General Staff (via Ukrainska Pravda)) | Fire at the refinery confirmed; adjacent logistics facility also hit. (Nizhny Novgorod governor / officials) | Ukrainska Pravda (GS confirmation + fire) | 160 to 350 kb/d (Ukrainska Pravda (17 Mt/y, ~11% of petrol), 2026-08-25) |
| 2026-07-14 | Salavat refinery (Bashkortostan) | refinery | SOF struck the AVT-6 primary distillation unit (~1,500 km range). (Ukraine SOF (via drone-warfare)) | No Russian capacity statement located; refinery in Bashkortostan. (no Russian capacity statement located) | satellite imagery (AVT-4 + Rosneft-Opt depot hit) per drone-warfare | 100 to 300 kb/d (drone-warfare, 2026-07-14) |
| 2026-07-06 | Omsk refinery (Gazprom Neft, largest in Russia) | refinery | Struck Omsk, Russia's largest refinery (22 Mt/y), hitting the ELOU-AVT-11 crude unit. (Ukraine (FP-1 drones, via drone-warfare)) | Omsk stopped selling gasoline/diesel on the exchange on 7 July; status not fully disclosed by officials. (SPIMEX listing / industry (drone-warfare)) | drone-warfare (exchange delisting + unit hit) | 200 to 450 kb/d (drone-warfare (22 Mt/y, AVT-11), 2026-07-06) |
| 2026-05-20 | Lukoil NORSI refinery (Kstovo) | refinery | General Staff confirmed strike on Lukoil NORSI, damaging AVT-6 (CDU-6) crude distillation unit. (Ukraine General Staff (via Euromaidan Press)) | Governor Gleb Nikitin confirmed a fire at the industrial site; Lukoil did not respond. (Nizhny Novgorod governor (Reuters)) | Reuters (CDU-6/AVT-6 damaged, primary processing shut) | 160 to 330 kb/d (Reuters (CDU-6 ~53% of NORSI capacity), 2026-05-20) |
| 2026-05-05 | Kirishi refinery (Leningrad) | refinery | Struck Kirishi, Russia's 2nd-largest refinery (20 Mt/y), shutting crude processing. (Ukraine (via drone-warfare)) | Facility shut down production; output diverted to domestic market. (Russian Energy Ministry / industry) | drone-warfare (20 Mt/y rated) | 300 to 420 kb/d (drone-warfare (20 Mt/y), 2026-05-05) |
| 2025-11-18 | Ryazan refinery (Rosneft) | refinery | Struck, suspending crude processing. (Ukraine (via Reuters)) | Rosneft plant suspended crude processing after the strike, sources said. (industry sources (Reuters)) | Reuters (sources: crude processing suspended) | 100 to 400 kb/d (Reuters / drone-warfare, 2025-11-18) |
| 2025-11-06 | Volgograd refinery (Lukoil) | refinery | Struck the refinery; General Staff confirmed explosions and fire. (Ukraine General Staff (via RBC-Ukraine)) | Governor Bocharov confirmed a fire in Volgograd's Krasnoarmeysk district (refinery site); CDU-5 (66.7 kb/d) and hydrocracker damaged per sources. (Volgograd governor + sources (Reuters)) | Reuters (CDU-5 + hydrocracker, plant halted) | 67 to 280 kb/d (Reuters (CDU-5 66.7 kb/d; 13.7 Mt/y plant), 2025-11-06) |
| 2025-08-28 | Kuibyshev refinery (Rosneft, Samara) | refinery | Struck, damaging both primary refining units and secondary units days after restart. (Ukraine (via Wikipedia)) | Rosneft plant hit; damage to both primary units acknowledged by industry sources. (industry sources (Wikipedia)) | Wikipedia (primary + secondary unit damage) | 100 to 200 kb/d (drone-warfare, 2025-08-28) |
| 2025-08-07 | Afipsky refinery (Krasnodar) | refinery | Overnight drone strike set a fire at the gas-condensate processing unit. (Ukraine (via Wikipedia)) | Regional crisis center said drone debris ignited a gas condensate unit; fire out by 08:21 local. (Krasnodar crisis center) | Wikipedia citing regional officials | 40 to 130 kb/d (drone-warfare, 2025-08-07) |
| 2024-04-28 | Tuapse refinery (Rosneft, Black Sea) | refinery | Drone attack caused a major fire, halting operations. (Ukraine military (via RFE/RL)) | Attack on the Black Sea oil terminal reported; fire extinguished. (Russian emergency services) | RFE/RL (Russian officials) | 100 to 240 kb/d (drone-warfare/Reuters, 2024-04-28) |
| 2024-03-13 | Ryazan refinery (Rosneft) | refinery | Struck Ryazan refinery, setting it ablaze and damaging units equal to ~70% of intake capacity. (Ukraine (via drone-warfare)) | Governor confirmed a drone strike caused a fire; no capacity figures given. (Ryazan governor) | Reuters via drone-warfare | 200 to 400 kb/d (drone-warfare/Reuters, 2024-03-13) |
| 2024-03-12 | Lukoil NORSI refinery (Kstovo) | refinery | Struck NORSI, damaging the main CDU-1 crude distillation unit and halting at least half its processing. (Ukraine General Staff / drone-warfare) | Aerial attack reported over the region; refinery operational status disputed. (Russian MoD / Lukoil) | drone-warfare (Reuters tally) | 0 to 170 kb/d (drone-warfare/Reuters, 2024-03-12) |
| 2024-01-21 | NOVATEK Ust-Luga condensate terminal | export terminal | Struck Ust-Luga gas condensate terminal; SBU-linked source said a major fire. (Ukraine security service (via Wikipedia)) | Two storage facilities and a pumping station damaged; fire at the terminal. (Russian authorities / Leningrad Oblast) | Wikipedia (attributed to Russian officials) | n/a |
The tracker below is the standing MarketIntelLabs record. It carries only strikes confirmed by a second, independent source, with the capacity effect shown as a range from the named tracker, and it lists what each side said beside what was confirmed. That discipline matters, because the two governments publish different versions of almost every event, and an unconfirmed drone hit is a claim, not a fact, however widely it is repeated.
How much refining is actually offline
The honest answer is a range, because the two sides count differently. Ukraine's General Staff said on September 21 that more than 45% of Russia's refining capacity is offline, a figure Russian officials have challenged without offering their own aggregate. The International Energy Agency's September Oil Market Report put June Russian refinery runs at roughly 3.8 million barrels a day, about 30% below the year-earlier level. MarketIntelLabs' strike tracker, which only counts strikes confirmed by a second source, puts the cumulative capacity effect at 2.0 to 4.3 million barrels a day as of September 21, counting repeated strikes on the same plant.
Kremlin-aligned media have pushed back on the Ukrainian aggregate, noting that nameplate capacity is not the same as operating capacity and that several damaged units, including parts of the Moscow refinery, were already running below normal utilisation. Neither side publishes a plant-by-plant weekly tally, which is why third-party trackers with explicit confirmation bars are the closest thing to a common reference frame.
The spread between 2.0 and 4.3 million barrels a day is not sloppiness. It reflects the difference between nameplate capacity touched and actual lost throughput, plus the fact that some units restart faster than feared. Reuters-style sources note Syzran's CDU-6 could return sooner than the "weeks" frame, and every restart releases product back onto the market.
Russia's answer: export bans, not just air defence
Moscow has layered controls on top of the damage. The full gasoline and fuel export ban announced in resolutions 952, 953 and 954 runs from August 1, 2026 through January 31, 2027, per government.ru. Producer diesel, marine fuel and gasoil exports are banned to September 30, 2026, per government.ru document 59723. The effect shows in the flows: Russian seaborne diesel and gasoil loadings are near 150,000 barrels a day, down roughly 81% against the five-year average, per Vortexa data carried in the MarketIntelLabs research brief.
The logic is scarcity management ahead of winter demand and the refill season. The same playbook ran in 2023-24, when a diesel squeeze capped Russian exports for about two months; the 2026 variant is longer and lands on a more damaged base.
What the squeeze did to cracks
The tightness is in the barrel, not the headline crude. The US ULSD crack spread against Brent settled near $104 a barrel on September 18, record territory and the first time it has cleared the $100 mark, per CME and ICE settles in the MarketIntelLabs research brief. European diesel's premium over Brent has widened from about $21 before the campaign to roughly $100. Gasoline refining margins topped $50 a barrel in mid-September, and the NYMEX 3-2-1 crack reached an all-time high near $72.
Notice what this is not: a crude story. Brent settled near $103.87 a barrel on September 18 and WTI near $100.30, per Reuters, levels that are firm but not extraordinary against the year's range. The stress is downstream of crude, in the product barrel, which is exactly what an attacker aiming at refinery units, rather than wellheads and pipelines, is designed to produce. That is why the crack, the difference between the product price and the crude cost, is the number that matters, and why it sits at a record while the headline oil price does not.
European consumers are on the front line. The Guardian reported diesel up 38% year on year, petrol up 24%, and jet fuel more than double, with the European Commission blaming refined-product tightness and ECB economists expecting diesel margins to peak in October. US distillate stocks sit about 14% below their five-year seasonal average, so the Atlantic basin has no comfortable cushion if winter demand surprises. The one offsetting sign comes from storage: gasoil stocks at the Amsterdam-Rotterdam-Antwerp hub climbed to about 1.68 million tonnes on September 18, a fifth straight weekly build, on higher US imports.
At the register, the gap between crude and product becomes a line item. With the crack near $104 and European diesel up 38% year on year, the price a household pays is set less by the barrel than by who can still run a distillation unit. That is the practical difference between watching Brent on a screen and filling a tank.
What to watch
The next IEA Oil Market Report, due October 14, re-measures Russian refinery runs and is the cleanest read on whether the offline range is narrowing. Watch whether European diesel demand bends under a 38% price rise, whether Moscow lifts the producer diesel export ban early on September 30, and whether EC economists are right that diesel margins peak in October. The European funding backdrop matters here too: EU gas storage sits at 68% heading into the November 1 refill deadline, and a $27 billion Ukrainian budget shortfall for 2026, alongside the fight over €210 billion in frozen Russian assets, keeps winter fragile on both the energy and the fiscal front.
The gas and fiscal backdrop shares the same feed. Dutch TTF front-month gas settled near 76 euros per megawatt hour on September 21, per TradingEconomics, a level that keeps the power-generation linkage to distillates tight. The ECB is tightening policy into a slowing economy, Reuters reported on September 17, which cuts both ways for diesel: it raises the cost of carrying inventory even as the product itself tightens.
Three risks cut against the tight-product thesis, and none is a forecast. Capacity can come back faster than the "weeks" headlines suggest, restarting units release latent product. Demand destruction at current prices usually bites hardest in the fourth quarter. And an export ban is a policy choice that can be reversed, as the September 30 producer-diesel date shows; Moscow could lift restrictions early if its own product demand is soft and its storage is full. That is why the honest range is 2.0 to 4.3 million barrels a day, not a single headline number.
Related reading
Deep dive: Ukraine's refinery campaign is pricing in products, not crude (premium). Russian seaborne diesel loadings are down 81%, the record crack is widening. More oil and refining coverage in our crude oil hub.
This content is for informational purposes only and does not constitute financial advice. Past performance is not indicative of future results. Consult a qualified financial advisor before making investment decisions.
Get daily intelligence delivered
Create a free account for the Daily Brief every weekday and The Week Ahead every Sunday. No card required.