Russia's war on Ukraine. 21.07.25
Operational situation
On the Northern Slobozhansky direction, Ukrainian Defense Forces advanced east of Kindrativka, counterattacked near Kindrativka and Yunakivka, advanced northeast of Kindrativka, towards the Zolotarivskyi Reserve, and in the area of Yablunivka and Sadky.
Russian troops captured Yablunivka, attempted to advance west of Yunakivka, west of Yablunivka, attacked near Kindrativka, Varachyne, and regrouped additional forces and assets here, attempting to resume an active offensive in the border area of Sumy Oblast. The 76th Air Assault Division was reinforced by additional assault units from the 51st and 137th Airborne Regiments of the 106th Airborne Division.
At the same time, the enemy command has to fight to hold its positions in the Kostyantynivka – Volodymyrivka – Novomykolayivka – Oleksiivka area in the eastern part of its penetration, where advanced units of Ukrainian Defense Forces actively counterattack the enemy and over the past 2 weeks liberated Andriivka, Kindrativka, penetrated the enemy's combat formations east of Oleksiivka, and broke through to Novomykolayivka.
In the Novomykolayivka – Yablunivka sector, the enemy, having replenished the assault units of the 11th and 83rd Separate Air Assault Brigades and reinforced them with assault groups of the 1443rd Motorized Rifle Regiment, continued attacks in the Yablunivka – Varachyne direction, attempting to cross the Snagost River and get behind the units of Ukrainian Defense Forces counterattacking in the northern direction.
Fierce battles continue in the Tetkino area, where the 56th Air Assault Regiment of the 7th Air Assault Division and a battalion of the 217th Airborne Regiment of the 98th Airborne Division are trying to force Defense Forces units to withdraw from the eastern outskirts of the village by advancing their forward units in the Zoria – Bezsalivka direction. The enemy advanced up to 1 km along both banks of the Volfa River to the northern outskirts of Bezsalivka, where it is attempting to consolidate.
On the Southern Slobozhansky direction, Russian troops fought in the Tykhe area, attacked in the direction of Lyptsi, near Vovchansk, Starytsya, Stroyivka, Kindrashivka, Radkivka, Holubivka, and attempted to advance west of Topoli, in the direction of Kutkivka, Boholivka.
The 128th Separate Motorized Rifle Brigade of the 44th Army Corps attacks within Vovchansk and in the direction of Vovchanski Khutory. Assault groups of the 41st Motorized Rifle Regiment of the 72nd Motorized Rifle Division of the 44th Army Corps advanced towards Vovchanski Khutory. The enemy continues attempts to penetrate the border area of Kharkiv Oblast in the Boholivka direction.
Ukrainian Defense Forces counterattacked near Vovchansk.
On the Kupyansk direction, Russian troops attacked near Zahryzove and Hrekivka.
On the Lyman direction, Russian troops advanced northwest of Lypove, attacked in the direction of Shandryholove, near Novyi Myr, Karpivka, Ridkodub, Kolodyazi, Torske, and in Serebriansk Forest.
The command of the 20th Combined Arms Army and the 20th Motorized Rifle Division of the 1st Tank Army are attempting to break through the defense of "Khortytsia" Operational Strategic Group (OSG) from the bridgehead on the Chorniy Zherebets River to the Oskil River in the directions of Nove – Lozove and Novomykhailivka – Pisky Radkivski), Lyman, Drobysheve.
Troops of the 25th Combined Arms Army are trying to roll up the defense of "Khortytsia" OSG in Serebriansk Forest with attacks along the river in the general north-to-south direction. The 37th Motorized Rifle Regiment of the 67th Motorized Rifle Division of the 25th Combined Arms Army, having broken through into the northern part of Torske, found themselves partially isolated from the rest of the regiment's units and have very complex logistics.
On the Siversk direction, Russian troops attacked near Serebrianka, Bilohorivka, Hryhorivka, and Vyiimka.
The 123rd Separate Motorized Rifle Brigade of the 3rd Combined Arms Army, together with units of the 6th Separate Motorized Rifle Brigade, attacked in the directions of Spirne – Ivano-Dariivka and Berestove – Vyiimka, advanced 2 km north of Ivano-Dariivka along the Sukha Plotva River, and up to 1 km in the direction of Verkhnyokamianske – Siversk.
On the Kramatorsk direction, the 77th Motorized Rifle Regiment of the 7th Military Base of the 49th Combined Arms Army continues battles for Bila Hora. Russian troops attempted to advance west and northwest of Kalynivka, attacked near Chasiv Yar, Stupochky, and Predtechyne.
Ukrainian Defense Forces counterattacked near Predtechyne.
On the Toretsk direction, Ukrainian Defense Forces advanced in the center of Oleksandro-Kalynove, counterattacked near Yablunivka.
Assault groups of the 57th Motorized Rifle Regiment of the 20th Motorized Rifle Division of the 8th Combined Arms Army consolidated on the western outskirts of Yablunivka. The enemy advanced west of Popiv Yar, west of Oleksandro-Kalynove, attacked near Toretsk, Dyliivka, Rusyn Yar, Poltavka, Katerynivka, Nelipivka, Shcherbynivka.
The 20th and 150th Motorized Rifle Divisions of the 8th Combined Arms Army are engaged in fierce battles for Oleksandro-Kalynove but have had no success in the last few days. In the directions of Popiv Yar – Poltavka and Novoolenivka – Rusyn Yar, assault units of the 242nd and 255th Motorized Rifle Regiments of the 20th Motorized Rifle Division of the 8th Combined Arms Army are slowly advancing, having progressed 250-300 meters southwest of Stepanivka.
The 51st Combined Arms Army attacks in the direction of Toretsk – Shcherbynivka and attempts to advance in the direction of Dyliivka – Bila Hora. Advanced units of the 4th Separate Motorized Rifle Brigade, reinforced by two motorized rifle regiments, advanced up to 1 km towards Oleksandro-Shultyne along the railway. In the Shcherbynivka area, the enemy encountered a strong defense node of "Khortytsia" OSG, as it has been unable to advance beyond Korolenka Street in Toretsk for several weeks.
On the Pokrovsk direction, Russian troops attempt to advance to Rodynske, attacked in the direction of Pokrovsk, near Fedorivka, Novotoretske, Krasnyi Lyman, Novoekonomichne, Mykolaivka, Myroliubivka, Myrnohrad, Sukhyi Yar, Lysivka, Zvirove, Udachne, and in the direction of Molodetske. The 30th Separate Motorized Rifle Brigade of the 2nd Combined Arms Army, supported by assault units of the 1435th Motorized Rifle Regiment, attacked in the Pishchane – Zvirove direction, advanced up to 1.5 km, and attempts to consolidate on the southern outskirts of the latter. Southwest of Pokrovsk, troops of the 41st Combined Arms Army attempt to reach the Muravka – Novomykolayivka line, attacking with forces of the 35th Separate Motorized Rifle Brigade from the east, along both banks of the Solona River, and from the south, from Kotlyarivka. The enemy advanced up to 1.5 km. The enemy attempts to reach the Molodetske – Udachne line, attacking these settlements from the south with forces of the 15th Separate Motorized Rifle Brigade of the 2nd Combined Arms Army. Over the last 3-4 days, it reached the western outskirts of Udachne and cut the Pokrovsk – Mezheva road west of Udachne, advancing up to 3 km from the south.
On the Novopavlivka direction, the 36th Separate Motorized Rifle Brigade of the 29th Combined Arms Army advanced on the eastern outskirts of Zelenyi Hai. Russian troops attempted to advance northeast, north, and west of Yalta, south of Zelenyi Hai, attacked in the direction of Novopavlivka, Filiya, Maliivka, Komyshuvakha, Temyrivka, near Novoserhiyivka, Muravka, Orikhove, Oleksiivka, Dachne, Zaporizhzhia, Myrne, Tolstoi, Voskresenka, Andriivka-Klevtsove, Oleksandrohrad, Shevchenkove, Vilne Pole, Zelene Pole, and Novopil.
On the Huliaypole direction, Russian troops attacked near Malynivka.
On the Orikhiv direction, Ukrainian Defense Forces regained positions on the northwestern outskirts of Kamyanske.
Russian troops attacked near Novodanylivka, Stepove, Kamyanske, and Plavni.
General conclusion:
The enemy's military command deploys the 40th, 155th, 810th Separate Marines Brigades, the 177th Separate Marines Regiment, the 76th Air Assault Division, the 106th Airborne Division, and the 11th and 83rd Separate Air Assault Brigades in areas where advancement must be secured, as these formations possess better combat capabilities compared to other troops. The presence of this grouping in the Northern Slobozhansky direction indicates the enemy command's attempt to tie down the Ukrainian Defense Forces' grouping and stretch their reserves. The command of the enemy's "Kursk" Operational Grouping delivers the main blow from the Yablunivka – Yunakivka line in the general direction of Khrapivshchyna, in the direction of Loknia – Sadky farm, attempting to fully occupy Yunakivka and the eastern part of the large forested area located east and southeast of Yunakivka.
Troops of the 8th and 51st Combined Arms Armies try to break through from the south to the near approaches of Kostyantynivka, attempting to bypass the Kleban Byk reservoir from the west and east, respectively.
The situation northeast of Pokrovsk and north of Myrnohrad continues to escalate. The command of the enemy's "Tsentr (Center)" Operational Grouping introduced additional forces and assets in the direction of Fedorivka – Suvorove, Razyne – Rodynske, specifically the 1st and 9th Separate Motorized Rifle Brigades of the 51st Combined Arms Army, which try to bypass Myrnohrad and Pokrovsk from the north and northeast and advanced by 1.2 - 2.5 km, respectively.
The command of the enemy's "Tsentr (Center)" Operational Grouping on the Pokrovsk direction attempts to complete the formation of initial conditions for the assault on this defense area of the "Khortytsia" OSG at an accelerated pace. The 41st and 2nd Combined Arms Armies groupings, reinforced by a significant portion of the 51st Combined Arms Army's troops and a number of others, direct their main efforts on the flanks of this defense area.
On the Novopavlivka direction, Russian troops intensified attacks in recent days.
Change in the line of contact (LoC):
There were 154 combat engagements on various fronts.
On the Northern Slobozhansky and Kursk directions, 23 combat engagements occurred. The enemy launched 9 airstrikes.
On the Southern Slobozhansky direction, the enemy assaulted the positions of Ukrainian Defense Forces units 7 times in the areas of Vovchansk, Krasne Pershe, Kutkivka, Stroyivka, and Starytsya.
On the Kupyansk direction, 4 attacks by the occupiers occurred. Ukrainian Defense Forces repelled enemy assault actions near Kindrashivka, Zelenyi Hai, and in the direction of Kupyansk.
On the Lyman direction, the enemy attacked 20 times, attempting to advance in the areas of Karpivka, Kolodyazi, Novyi Myr, Ridkodub, Shandryholove, Torske, and in the direction of Serebrianka.
On the Siversk direction, the enemy attacked 6 times in the areas of Vyiimka, Verkhnyokamianske, Fedorivka, and Hryhorivka.
On the Kramatorsk direction, 2 combat engagements were recorded in the areas of Predtechyne and Bila Hora.
On the Toretsk direction, the enemy carried out 9 attacks in the areas of Dyliivka, Shcherbynivka, Rusyn Yar, Toretsk, and in the direction of Katerynivka.
On the Pokrovsk direction, 46 assault and offensive actions by the aggressor were stopped in the areas of Poltavka, Udachne, Novoekonomichne, Lysivka, Zvirove, Volodymyrivka, Novotoretske, Dachne, Novopavlivka, Orikhove, Oleksiivka, and in the direction of Pokrovsk, Myrnohrad, and Filiya.
On the Novopavlivka direction, the enemy attacked 17 times in the areas of Yalta, Myrne, Tolstoi, Voskresenka, Maliivka, Zelene Pole, Temyrivka, Piddubne, and Novopil.
On the Huliaypole direction, the enemy conducted unsuccessful assault actions towards Malynivka once.
On the Prydniprovske direction, one combat engagement occurred; the enemy attempted to advance in the direction of Prydniprovske.
Supporting operation:
Ukrainian Defense Forces launched UAV strikes and destroyed the Kamienolomni railway junction in Rostov Oblast. .
Changes in the enemy disposition:
The 25th BARS Detachment strikes Ukrainian positions near Kozacha Lopan and Huriev Kozachok.
The 4th Separate Motorized Rifle Brigade of the 3rd Combined Arms Army and the 72nd Separate Motorized Rifle Brigade of the 3rd Army Corps operate near Bila Hora.
The 90th Tank Division of the 41st Combined Arms Army attacks in the direction of Novopavlivka, the 37th Separate Motorized Rifle Brigade of the 36th Combined Arms Army operates near Piddubne, Myrne, and Oleksandrohrad.
Possible operation situation developments:
According to the estimates of the Main Intelligence Directorate of the Ukrainian Defense Ministry, the enemy will not be able to achieve the Kremlin's goal of capturing the entire Donetsk Oblast by the end of 2025. The new operational task of the enemy grouping in the theater of military operations is to advance to Dnipropetrovsk Oblast and create a buffer zone 10 km deep. Full occupation of Donetsk, Luhansk, Kherson, and Zaporizhzhia Oblasts is possible no earlier than February 2028, provided current rates of advancement are maintained.
On the Northern Slobozhansky direction, the enemy’s “Sever (North)” Operational Grouping is trying to reach the Mala Korchakivka – Nova Sich – Maryinka – Sadky line.
The command of the enemy's "Sever (North)" Operational Grouping in cooperation with the right flank of “Zapad (West)” Operational Grouping in the Southern Slobozhansky direction, will attempt to expand its bridgehead northeast of Velykyi Burluk and capture Hatnie before attacking the city. For this purpose, the troops will have to force water obstacles, including the Velykyi Burluk River on the Shevchenkove – Mykhailivka – Velykyi Burluk line. Villages located along the river will become a significant obstacle for Russian troops. The Vovchansk – Velykyi Burluk – Dvorichna line can become a powerful defensive line within Russia's buffer zone in northern Kharkiv Oblast if the enemy can combine its efforts from three directions in the medium and long term. The enemy cannot launch an offensive in the direction of Kupyansk due to complex logistical measures that must be carried out to accumulate troops on the western bank of the Oskil River.
On the Lyman direction, the forces of the Russian “Zapad (West)” Operational Grouping will attempt to reach the line of Karlivka – Shandryholove – Drobysheve, while simultaneously advancing near Torske in an effort to enter Lyman from the east. The “Starobilsk” Operational-Tactical Group (OTG) will be forced to withdraw from the area of Kopani – Novoyehorivka – Druzhelyubivka – Cherneshchyna, in response to the enemy’s advance along the southern bank of the Siverskyi Donets River in the direction of Bilohorivka – Serebrianka, within the operational zone of the neighboring 3rd Combined Arms Army of the “Yug (South)” Operational Grouping. If on the Lyman direction the enemy succeeds in achieving operational surprise and advances to tactical depth, the situation in the Kolodyazi–Hryhorivka section will deteriorate significantly for the “Kharkiv” OTG.
On the Siversk direction, the command of the enemy's "Yug (South)" Operational Grouping will attempt to eliminate the Siversk salient held by "Khortytsia" OSG and break through towards the Sloviansk – Kramatorsk agglomeration. The 3rd Combined Arms Army will try to break through to the northern bank of the Siverskyi Donets River between Yampil and Hryhorivka, and from the southeast – toward Siversk. In the near future, the enemy will try to capture Pereyizne and attack Zvanivka along the eastern bank of the Bakhmutka River, attempting to break through to Siversk from the south.
On the Kramatorsk direction, the command of the enemy’s “Yug (South)” Operational Grouping and the 3rd Army may shift the direction of their main strike to the north of Chasiv Yar and launch an offensive on both sides of the Bakhmut–Sloviansk road, along the directions of Orikhovo-Vasylivka–Minkivka and Blahodatne–Pryvillya. This would allow them to break through to the immediate approaches to Sloviansk directly from the southeast and create a real threat of a deep envelopment of the right flank of the “Starobilsk” Operational Tactical Group (OTG).
The enemy's “Tsentr (Center)” Operational Grouping will try to envelope Pokrovsk and bypass the “fortress belt” in Donetsk Oblast from the west in the coming months. The enemy command may attempt to exploit the penetration in the Pokrovsk–Toretsk sector to bypass the defenses of the “Khortytsia” Operational and Strategic Grouping (OSG) in Kostyantynivka from the southwest and west. The reconnaissance-in-force and frontal attacks conducted by the enemy from the south and southeast towards Pokrovsk indicate a specific plan that involves troop actions to tie down the forces of Operational Strategic Group "Khortytsia" and its reserves on the inner flanks of the city's defense.
An envelopment of Pokrovsk from the northeast requires the enemy to significantly advance in the direction of Rodynske, capture it, and establish a powerful defense area there. This will enable attacks on Pokrovsk or advancement to Novooleksandrivka with the aim of cutting off the M30 Pokrovsk – Pavlohrad highway and forcing the “Khortytsia” OSG to withdraw from Pokrovsk under threat of encirclement. Other options for enemy actions include advancing north of Udachne or Kotlyne with the goal of cutting off the M30 highway if they manage to break through Ukrainian defenses, or attempting to wedge between Dobropillya and Kostyantynivka to bypass the "fortress belt" from the west. Russian troops will attempt to cut off Ukrainian logistics along the T0515 Pokrovsk – Dobropillya highway attacking west of Razyne for this purpose.
Russian troops have created conditions for an advance in the direction of Huliaypole, Velykomykhaylivka, and Havrylivka. The “Vostok (East)” Operational Grouping is capable of conducting an offense operation westward through Dnipropetrovsk and Zaporizhzhia Oblasts, using the H15 Kurakhove – Zaporizhzhia highway. Enemy troops will have to force the Khaychur, Solona, Verkhnya Tersa, and Vovcha rivers, cross the T0408 Preobrazhennia – Novomykolayivka and T0401 Pokrovsk – Huliaypole highways, and capture several cities the size of Chasiv Yar, which could become a significant problem for the aggressor. A rapid advance of approximately 150 km from positions in Novokhatske to Zaporizhzhia is extremely unlikely, considering the current pace of the enemy's offensive.
Russian operational losses from 23.02.22 to 21.07.25
Personnel - almost 1,043 160 (+1,170);
Tanks – 11,037 (+2);
Armored combat vehicles ‒ 23,028 (+7);
Artillery systems – 30,637 (+54);
Multiple rocket launchers (MLRS) – 1,444 (+1);
Anti-aircraft warfare systems – 1,199 (+1);
Vehicles and fuel tanks – 55,859 (+132);
Aircraft - 421 (0);
Helicopters – 340 (0);
UAV operational and tactical level – 47,181 (+199);
Intercepted cruise and other missiles – 3,515 (0);
Boats/ships – 29 (0).
Humanitarian + general:
From the evening of July 20, Russia launched 24 missiles (5 Kinzhal, 4 Kalibr, 1 Iskander-K, 14 Kh-101) and 426 Unmanned Aerial Vehicles, including Shahed attack drones and decoy drones, at Ukraine. Ukrainian Defense Forces destroyed all missiles and 200 attack drones; another 203 decoy drones were suppressed or lost from radar. In total, 224 targets were shot down or suppressed. Twenty-three drone hits were recorded in three locations, and debris fell in 12. As of 9:30 AM, the attack was ongoing; a new wave of Shaheds was moving from the northeastern direction. Two people died and 15 were wounded during Russia's night attack on Ukraine, according to Zelenskyy.
On the night of July 21, fires broke out in four districts of Kyiv as a result of Russian attack; more than fifteen direct hits on various objects were recorded. In the Darnytskyi district, the roof of a multi-story building, a non-residential building, and a supermarket were on fire; in Shevchenkivskyi, fires engulfed a residential building and balconies; in Dniprovskyi, a fire broke out in market stalls, and debris fell onto the territory of a kindergarten; in Solomianskyi, a non-residential building caught fire. The entrance to Lukianivska metro station, where Kyiv residents were sheltering from the shelling, was also damaged. One person died and eight others were wounded, including a 15-year-old girl.
As a result of Russia's massive combined attack on the Ivano-Frankivsk community, civilian infrastructure sustained significant damage. Russian troops used Kinzhal and Kalibr missiles and Shahed-type attack drones, marking the largest attack on Ivano-Frankivsk since the start of the full-scale invasion. There were no fatalities; three adults and a child were injured.
As a result of Russia's night attack in Khmelnytskyi Oblast, 43 private residential buildings in Kamianets-Podilskyi district were partially damaged. There were no fatalities or wounded, and the extent of the damage is being clarified.
On the night of July 21, Russian occupying forces massively attacked Kharkiv with Shahed-type attack Unmanned Aerial Vehicles.
As a result of the night shelling of Kherson by a drone, a 63-year-old female resident was wounded. In the morning, Russian forces struck residential areas in the center of Kherson—an enemy shell hit an apartment on the fifth floor, wounding one person. As a result of Russian shelling at 5:00 PM on Monday, June 21, one person was wounded.
Starting the evening of July 20, Russian troops attacked Dnipropetrovsk Oblast, striking Nikopol, as well as the Marhanets and Chervonohryhorivka communities with FPV drones and artillery. The shelling damaged infrastructure, a gas station, and an enterprise; a fire broke out, destroying two vehicles and damaging three others. Separately, the enemy struck the Mezheve community of Synelnykove district with a drone, where infrastructure also sustained damage. There were no casualties. Air defense forces shot down seven Russian Unmanned Aerial Vehicles over the oblast.
On July 21, throughout the day, Russian troops shelled Nikopol and Synelnykove districts of Dnipropetrovsk Oblast with artillery, Grad systems, and FPV drones. As a result of strikes on Nikopol, Myrove, Marhanets, and Pokrovsk communities, two women aged 65 and 57 were wounded. Nine private houses, four outbuildings, a vehicle, power grids, and a gas pipeline were damaged. Fires broke out as a result of the shelling.
In the settlement of Stepnohirsk, Zaporizhzhia Oblast, Russian troops attacked a civilian car with several FPV drones, completely burning the vehicle. The driver managed to escape and was unharmed.
In Donetsk Oblast, Russian occupiers shelled the city of Kostiantynivka with tube artillery. Critical infrastructure sustained damage, leaving 15,000 customers without electricity.


