July 30, 9:30 pm ET
Click here to see ISW's interactive map of the Russian invasion of Ukraine. This map is updated daily alongside the static maps present in this report.
Russian forces are likely prioritizing offensive operations toward Bakhmut and around Donetsk City at the expense of efforts to take Siversk and Slovyansk. Russian commanders are likely seeking to exploit recent gains in the Novoluhanske area to pressure Bakhmut from the east. Their efforts around Donetsk City likely aim to push Ukrainian forces out of artillery range of the city. They may also be intending to gain as much ground in Donetsk Oblast as possible before planned referenda in September. Russian offensive operations are very unlikely to take Bakhmut, which is large and well-defended, or to make dramatic gains west of Donetsk City even if they manage to take the towns of Avdiivka and Pisky that have held out against their pressure since the original Russian invasion in 2014. Fighting in these areas will likely intensify, however, and Ukrainian President Volodymyr Zelensky is calling on residents to evacuate.[1]
Neither Russia nor Ukraine produced new evidence regarding the cause or responsibility for the deaths of Ukrainian prisoners of war (POWs) at the Olenivka prison in occupied Donetsk Oblast. Russian officials raised the death toll of the event to 50 and released a list of deceased POWs.[2] Ukrainian officials stated that they are unable to verify the list at this time and called for an international investigation.[3] Maxar has provided post-strike imagery of the damage. ISW is unable to confirm the nature or cause of the incident, although it remains more likely that Russian forces were responsible.
Overview of damaged buildings in Olenivka prisoner of war facility on July 30. Source: Maxar Technologies
Key Takeaways
- Russian forces conducted ground assaults around Bakhmut and the environs of Donetsk City as well as southwest of Izyum. One assault east of Bakhmut made limited gains.
- Russian forces did not conduct ground assaults near Siversk again, suggesting that they are deprioritizing operations in that area.
- Satellite imagery showed Russian reinforcements concentrated near the Ukrainian border on the ground line of communication (GLOC) leading toward Izyum.
- Ukrainian forces disrupted a Russian ground assault in Kherson Oblast with preemptive artillery strikes.
- Ukrainian officials claim that damage to the railway bridge across the Dnipro near Kherson renders Russian forces unable to resupply their positions on the west bank of the river by rail.
We do not report in detail on Russian war crimes because those activities are well-covered in Western media and do not directly affect the military operations we are assessing and forecasting. We will continue to evaluate and report on the effects of these criminal activities on the Ukrainian military and population and specifically on combat in Ukrainian urban areas. We utterly condemn these Russian violations of the laws of armed conflict, Geneva Conventions, and humanity even though we do not describe them in these reports.
- Main Effort—Eastern Ukraine (comprised of one subordinate and two supporting efforts);
- Subordinate Main Effort—Encirclement of Ukrainian Troops in the Cauldron between Izyum and Donetsk and Luhansk Oblasts
- Supporting Effort 1—Kharkiv City
- Supporting Effort 2—Southern Axis
- Mobilization and Force Generation Efforts
- Activities in Russian-occupied Areas
Main Effort—Eastern Ukraine
Subordinate Main Effort—Southern Kharkiv, Donetsk, Luhansk Oblasts (Russian objective: Encircle Ukrainian forces in Eastern Ukraine and capture the entirety of Donetsk and Luhansk oblasts, the claimed territory of Russia’s proxies in Donbas)
Russian forces resumed offensive operations southwest of Izyum and began accumulating military equipment in Belgorod Oblast, just east of the Russian ground lines of communication (GLOCs) to Izyum. The Ukrainian General Staff reported that Russian forces unsuccessfully launched assaults on Brazhivka and Dmytrivka, approximately 16 and 18km southwest of Izyum respectively, on July 30.[4] Geolocated footage also showed Ukrainian forces striking an advancing Russian tank in Brazhivka with an anti-tank guided missile on an unspecified date.[5] Geolocated satellite imagery showed a Russian military buildup between June 19 and July 28 in Urazovo, Belgorod Oblast, 12km east of the international border.[6] Russian forces may be increasing military equipment in the area to support westward advances from Izyum, as the buildup is only 55km northeast of Russian GLOCs in Kupyansk that connect to both Izyum and settlements south of Kharkiv City. Russian forces have recently launched several localized attacks northwest of the current Izyum-Slovyansk line, and ground assaults southwest of the line alongside military buildup may support a westward offensive operation.[7]
Russian forces did not launch ground assaults northwest of Slovyansk or conduct offensive operations around Siverk on July 30, likely prioritizing frontal assaults around Bakhmut instead. Russian forces continued to shell Krasnopillya, Dolyna, Adamivka, and Mazanivka northwest of Slovyansk, and damaged the bus station building in Slovyansk.[8] Russian forces also fired artillery at Kramatorsk, Siversk, and settlements around Siversk.[9] The Ukrainian Joint Forces Operation (JFO) reported that Ukrainian forces liberated an unnamed settlement in the Donetsk Oblast direction (the Ukrainian operational direction that refers to Luhansk and Donetsk Oblast.)[10]
Russian forces made limited gains southeast of Bakhmut and launched a series of unsuccessful assaults south and northeast of the city on July 30. The Ukrainian General Staff reported that Russian forces secured positions on the outskirts of Semihirya (approximately 15km southeast of Bakhmut) after launching an attack from three directions.[11] Russian forces reportedly attempted unsuccessfully to advance west to Travneve from Dolomytne, both settlements approximately 10km northeast of Horlivka.[12] Ukrainian forces also reportedly stopped Russian advances towards Vershyna and Pokrovske, southeast and northeast of Bakhmut, respectively.[13] The Ukrainian General Staff noted that Russian forces are attempting to set conditions for offensive operations in the directions of Bakhmut, Avdiivka, and west of Donetsk City.[14]
Russian forces launched unsuccessful ground attacks northeast and southwest of Avdiivka, and southwest of Donetsk City on July 30. Ukrainian forces reportedly repelled Russian assaults on Krasnohorivka, Avdiivka, and Pisky, likely in an effort to envelop Ukrainian fortifications in Avdiivka from the northeast and southwest.[15] Russian forces also conducted unsuccessful offensive operations in Mariinka and Pavlivka, approximately 22km and 50km southwest of Donetsk City, respectively.[16]
Supporting Effort #1—Kharkiv City (Russian objective: Defend ground lines of communication (GLOCs) to Izyum and prevent Ukrainian forces from reaching the Russian border)
Russian forces did not conduct offensive operations around Kharkiv City on July 30 but continued to shell settlements northwest, northeast, and southeast of the city.[17] Kharkiv Oblast Administration Head Oleg Synegubov reported that Russian forces launched five S-300 missiles at two Kharkiv City districts.[18]
Supporting Effort #2—Southern Axis (Russian objective: Defend Kherson and Zaporizhia Oblasts against Ukrainian counterattacks)
Ukrainian forces reportedly preempted a Russian ground assault in northwestern Kherson Oblast on July 30. The Ukrainian General Staff reported that Ukrainian artillery fire stopped Russian forces from launching an assault from occupied Brunskyne on Bilohirka, both located on the western bank of the Inhulets River in northwestern Kherson Oblast.[19] Russian forces also launched airstrikes near Novohryhorivka and Andriivka, both near the Kherson-Mykolaiv Oblast border.[20] Russian forces continued to shell Mykolaiv and Dnipropetrovsk Oblasts with tube and rocket artillery on July 30. Dnipropetrovsk Oblast authorities reported that Russian forces fired 40 Grad Multiple Launch Rocket Systems (MLRS) rockets at Nikopol, on the western Dnipro River bank.[21] Mykolaiv Oblast officials also reported that Russian forces struck Mykolaiv City with Smerch MLRS.[22]
Russian forces continued efforts to restore logistics and establish defensive positions south of the line of contact amidst continuous Ukrainian strikes on Russian ground lines of communication (GLOCs) and ammunition depots.[23] Social media footage showed Russian concrete fortifications along the Tyahynka-Nova-Khakovka road, likely part of an effort to create defensive positions along the R47 highway to Kherson City and defend on the western Dnipro River bank.[24] Ukrainian officials and satellite imagery confirmed additional damage to a key railroad bridge, just 8km east of the damaged Antonivsky Road Bridge near Kherson City.[25] Kherson Oblast Administration Advisor Serhiy Khlan stated that the damages to the railroad bridge fully precludes Russian military equipment transfers via rail to northern Kherson Oblast.[26] Khlan also noted that eye witnesses saw another strike reportedly on a Russian ammunition depot in Nova Kakhovka on July 30.[27] The Ukrainian Southern Operational Command confirmed that Ukrainian forces destroyed the command post of the 34th Separate Motorized Rifle Brigade in Bruskynske on July 29.[28] Ukrainian forces also struck a Russian military truck and vehicles parked outside a building in Enerhodar, which Russian occupation officials claimed were part of a humanitarian convoy.[29]
Mobilization and Force Generation Efforts (Russian objective: Expand combat power without conducting general mobilization)
Nothing significant to report as of July 30.
Activity in Russian-occupied Areas (Russian objective: consolidate administrative control of occupied areas; set conditions for potential annexation into the Russian Federation or some other future political arrangement of Moscow’s choosing)
Russian occupation authorities carried out the scheduled “We Are Together With Russia” forum in Kherson State University on July 30, continuing to set conditions for a falsified referendum in occupied areas of Kherson Oblast.[30] Pro-Russian Telegram channel “Readovka” described the event as a forum aimed to allow participants to “the future fate” of Kherson Oblast and claimed that about a thousand participants gathered to discuss social and economic policies of the region.[31] The delegates voted for a declaration called “Russian Kherson“ regarding the joint development of Kherson Oblast with Russia.[32] Igor Kastyukevich , Russian State Duma Deputy and coordinator of the United Russia Party humanitarian mission to Kherson Oblast, was the only Russian identified as participating in the forum alongside Ukrainian collaborators.[33] ISW previously assessed that that low turnout among Russian officials could support other reporting suggesting that the Kremlin authorities fled Kherson City in fear of Ukrainian counteroffensives.[34] Russian-appointed Kherson Oblast Military-Civilian Administration Head Volodymyr Saldo also announced the creation of the Kherson Oblast Public Chamber within the ”We Are Together With Russia,” which the Kremlin will likely use to create the facade of public support for Kherson Oblast’s integration with Russia.[35]
Ukrainian partisans continued to target Russian railroad transport in occupied settlements on July 30. Luhansk Oblast Administration Head Serhiy Haidai reported that Ukrainian partisans destroyed the railway control box in Svatove, situated approximately 55km north of Severodonetsk and along the Russian ground lines of communication (GLOCs) in Luhansk Oblast.[36] Russian-appointed Zaporizhia Oblast Occupation Administration Yevheny Balitsky uploaded footage documenting damage to a railroad segment near Komysh-Zorya station, just 22km due west of the Zaporizhia-Donetsk Oblast border.[37] Balitsky claimed that Ukrainian HIMARS struck the railroad on July 29, but the small-scale damage appears more consistent with Ukrainian partisan activity aiming to disrupt Russian logistics routes in southern Ukraine. Ukrainian Mariupol officials and sources in exile reported that Ukrainian partisans set a field on fire in Russian-occupied Bezimenne, about 20km east of Mariupol, in an effort to set Russian fortifications on fire and prevent Russian occupation authorities from looting Ukrainian grain.[38]
[1] https://www.cnn.com/2022/07/30/world/zelensky-donetsk-mandatory-evacuation/index.html; https://t.me/V_Zelenskiy_official/2727
[2] https://t.me/mod_russia/18064; https://t.me/mod_russia/18060
[3] https://t.me/azovangels/77; https://www.facebook.com/DefenceIntelligenceofUkraine/posts/365549319089828
[4] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517; https://www.facebook.com/GeneralStaff.ua/posts/374264784886606
[5] https://twitter.com/neonhandrail/status/1553429217936695297
[6] https://twitter.com/BenDoBrown/status/1553397757259513864
[7] https://understandingwar.org/backgrounder/russian-offensive-campaign-assessment-july-29
[8] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517; https://t.me/pavlokyrylenko_donoda/4381; https://t.me/kramatorsk_rada/4858; https://t.me/slv_vca/3004; https://www.facebook.com/GeneralStaff.ua/posts/374264784886606
[9] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517; https://www.facebook.com/GeneralStaff.ua/posts/374264784886606; https://t.me/pavlokyrylenko_donoda/4381
[10] https://www.facebook.com/watch/?v=1078613669425625
[11] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517
[12] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517
[13] https://www.facebook.com/GeneralStaff.ua/posts/374264784886606
[14] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517
[15] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517; https://www.facebook.com/GeneralStaff.ua/posts/374264784886606
[16] https://www.facebook.com/GeneralStaff.ua/posts/374264784886606; https://www.facebook.com/GeneralStaff.ua/posts/374599008186517
[17] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517; https://www.facebook.com/GeneralStaff.ua/posts/374264784886606; https://t.me/synegubov/3818; https://t.me/der_rada/2152
[18] https://t.me/synegubov/3819; https://t.me/synegubov/3818
[19] https://www.facebook.com/GeneralStaff.ua/posts/374599008186517
[20] https://www.facebook.com/GeneralStaff.ua/posts/374264784886606
[21] https://www.facebook.com/watch/?v=598661525191049; https://www.facebook.com/okPivden/posts/2114924608678781; https://t.me/dnipropetrovskaODA/1415; https://t.me/dnipropetrovskaODA/1402; https://t.me/mykola_lukashuk/848; https://t.me/mykola_lukashuk/845; https://t.me/vilkul/1646 ;https://t.me/vilkul/1645; https://t.me/mykola_lukashuk/848; https://t.me/mykola_lukashuk/848
[22] https://www.facebook.com/watch/?v=598661525191049; https://t.me/mykolaivskaODA/1950; https://t.me/senkevichonline/1855; https://t.me/senkevichonline/1866
[23] https://www.facebook.com/watch/?v=598661525191049
[24] .https://twitter.com/Militarylandnet/status/1553360897019625472; https://twitter.com/neonhandrail/status/1553445976756498432
[25] https://twitter.com/The_Lookout_N/status/1553359585318141953?s=20&t=pMa7Spsv7i1MK8HWEqltiQ; https://twitter.com/DefMon3/status/1553354414534041602?s=20&t=pMa7Spsv7i1MK8HWEqltiQ; https://twitter.com/petromenko/status/1553347877946236929?s=20&t=pMa7Spsv7i1MK8HWEqltiQ; https://t.me/hueviyherson/23114; https://twitter.com/RALee85/status/1553364636170338304?s=20&t=1qR3VX1f9cuX2i3UucFQhw; https://twitter.com/bayraktar_1love/status/1553347879414145025?s=20&t=SC6an1nakyaIocDsx30Klg; https://t.me/hueviyherson/23114; https://t.me/hueviyherson/23114; https://twitter.com/Military_oO/status/1553361187106086912?s=20&t=8XWbvw7mBAiaaLjB8moD5g; https://twitter.com/Military_oO/status/1553348814991417345?; https://twitter.com/666_mancer/status/1553355162391027718 s=20&t=8XWbvw7mBAiaaLjB8moD5g ; https://t.me/insiderUKR/37782
[26] https://www.facebook.com/sergey.khlan/posts/5386692244785473
[27] https://www.facebook.com/sergey.khlan/posts/5386230538164977; https://www.youtube.com/watch?v=sp2bgr_y-Dc; https://twitter.com/TpyxaNews/status/1553135324284477443?s=20&t=TJPR87v_pCpwLSNGmMQ_vg; https://twitter.com/TpyxaNews/status/1553135733908668416?s=20&t=TJPR87v_pCpwLSNGmMQ_vg; https://t.me/hueviyherson/23099; https://twitter.com/GirkinGirkin/status/1553177742593720327?s=20&t=4--BIJbiy8R3X7b80yeb9A
[28] https://www.facebook.com/watch/?v=2521889871285378
[29] https://t.me/orlovdmytroEn/746; https://t.me/orlovdmytroEn/747; https://t.me/Bratchuk_Sergey/16415; https://twitter.com/GoraGiza/status/1553147326092509186?s=20&t=4--BIJbiy8R3X7b80yeb9A; https://t.me/kommunist/7882; https://t.me/BalitskyVGA/120; https://twitter.com/Militarylandnet/status/1553310402892685312
[30] https://t.me/readovkanews/39502
[31] https://t.me/readovkanews/39502
[32] https://life dot ru/p/1513054
[33] https://t.me/readovkanews/39502
[34] https://understandingwar.org/backgrounder/russian-offensive-campaign-assessment-july-29
[35] https://t.me/readovkanews/39503
[36] https://t.me/luhanskaVTSA/4665
[37] https://t.me/BalitskyVGA/116
[38] https://t.me/mariupolrada/10396; https://t.me/andriyshTime/2077; https://t.me/andriyshTime/2069; https://t.me/andriyshTime/2068; https://t.me/andriyshTime/2067; https://t.me/andriyshTime/2065; https://t.me/mariupolnow/16603