Журналістика даних

Two curves that reveal the situation on the frontline

Looking at two curves, one above the other, you can quickly assess the situation at the front: how quickly Russian forces are advancing or retreating and what losses they are suffering in the process. The steeper the curve, the faster the situation is changing. The graph is updated weekly.

Читати українською

The graph is interactive. Hover over it to see the detailed figures. When you hover over the graph, a button also appears in the upper-right corner that lets you download a static image of this graphic.

How Russian casualties compare with territorial gains on the front

On the upper curve, look at the slope: it shows whether Russian forces are advancing, holding their positions, or retreating. On the lower curve, look at the height of the line: it shows the price Russia is paying.

CORS error: Incorrect 'Access-Control-Allow-Origin' header is present on the requested resource · CORS error: Incorrect 'Access-Control-Allow-Origin' header is present on the requested resource

How to read the graph

The graph has two separate curves. The upper one shows the rate of Russian advances, while the lower one shows Russian casualties. What do they mean?

Upper curve flat, lower curve rising

This is the ideal graph under the current conditions of Russia’s numerical superiority.

This combination shows that Russia’s usual way of fighting on the front has led its forces into a dead end of self-destruction. For several years, Russia’s strategy has relied on trading large numbers of Russian lives for captured Ukrainian territory. The logic was that Russia has plenty of manpower and would sooner or later take all our land. But this situation upends those calculations: Russian losses are rising, while no new territory is being taken.

Upper curve falling, lower curve rising

This combination would indicate a rapid Ukrainian offensive and heavy losses among Russian units.

Upper curve rising, lower curve falling

This combination would indicate a rapid Russian offensive and a weak Ukrainian response.

The sharper the curves rise or fall, the faster the situation is changing.

Data: daily updates from the Ukrainian General Staff and DeepState.

We have been regularly publishing a graph showing enemy losses and advances for the past several years. After one of our publications, we received a lot of criticism — and even more hate. So we want to explain why we chose this particular type of graph.

We have been criticized for comparing two graphs that use different types of data: the upper one shows cumulative figures, while the lower one shows weekly data. We believe this comparison is valid if we are not looking at the absolute numbers on the upper curve, but at the SLOPE of the line.

In other words, we look at the rate at which territory is being captured — the slope of the upper curve — and compare it with losses per week. The lower curve shows a rate, that is, the amount of something over a given period of time. In our case, it is the number of Russian casualties per week.

Why don’t we show the rate on the upper graph as well? Such figures can fluctuate considerably. If we showed only these fluctuations on both curves, they would become difficult to compare: the eye gets caught up in random spikes, making it harder to see the overall trend.

Instead, our approach is:

  • at the top, we look at how quickly the territorial situation is changing, based on the slope of the line over a given period of time;
  • at the bottom, we look at what this is costing the enemy — Russian casualties per week.

This combination makes it possible to quickly see what matters, without getting lost in minor fluctuations.

There is another very important point: you can immediately see the different phases of the fighting across the whole war.

This form of the graph lets you draw quick conclusions:

  • October 2023 – August 2024: significant Russian losses, limited territorial losses — the situation is okay.
  • October 2024 – January 2025: very heavy Russian losses, but also faster territorial losses — the situation is difficult, but under control.
  • After that, enemy losses decline, while from May to August 2025, territory was lost quickly — the situation is bad.
  • September – October 2025: Russian losses increase, and their advances slow down, suggesting stabilization.
  • November 2025 – January 2026: the situation deteriorates significantly again.
  • February 2026: the situation levels out.
  • March – May 2026: the situation shows a trend toward improvement.
  • June – September 2026: a trend toward Ukrainian victory, as the enemy has stalled and its losses are increasing.

We considered various graph formats, including one with cumulative Russian losses on one curve and cumulative territory lost on the other. That graph illustrates the trend less effectively because it requires comparing two slopes rather than one. Another option was to show smoothed rates of territorial loss versus enemy personnel losses on the upper and lower graphs. However, we ultimately settled on the version you see here.

dataviz_eng front frontline