The following essay was contributed by David Noel.
The Russian invasion of Ukraine shocked the world, making millions of Ukrainians into refugees, devastating the Ukrainian economy, initiating historic sanctions on the Russian Federation, and killing thousands of people. How many have died or will die before the war is over are some of the central questions to understanding the full scope of this ongoing tragedy. In this essay, I propose a very rough framework for calculating Ukrainian civilian casualties (centered on urban populations), as well as possible military casualties, to arrive at both an overall estimate of current deaths and a forecast.
- This analysis was created based on publicly available information. While I work in a somewhat related area, and have an interest in military history, current events, and forecasting, I am not an expert in this field.
- While I will provide an estimate of the overall death toll, my intention is not to focus on a precise number, but rather outline the data and methodologies that I have found helpful in ongoing forecasts. While I try to do a thorough job of laying out my calculations and sources of data, there are of course several points where I had to make assumptions in the calculations that are not feasible to fully lay out in text form.
- This essay originated as a Metaculus comment that was well received by the community. It was written on February 25th with the intent of outlining an extremely rough model of overall war casualties, with an emphasis on urban combat—essentially to determine how plausible it was that we could see 25,000, 50,000, or 100,000 casualties. While some of the underlying data, such as example death rates, has not changed, other areas have been substantially added to or created, to both improve the model and account for the substantial changes in outcomes that have occurred over the past month.
With the early Russian advances toward major population centers, in particular Kyiv, my first instinct in forecasting the number of war deaths was to research significant examples of sieges and urban combat. While humanity has a long, unfortunate history in this regard, the vast majority of it is not useful for this purpose: Most are reliant on older forms of weaponry and defenses; or are modern but feature relatively small, anti-insurgent battles; or had unclear civilian casualties, especially against non-state or quasi-state actors. So for my purposes, I gathered a small sample of battles for which data is available—not as an exhaustive dataset, but as examples of types of urban combat to understand a range of likely outcomes—along with key details regarding the lengths of the battles, the cities’ populations, and the estimated civilian casualty rates.
This allowed me to calculate a daily death rate as a percentage of the civilian population, and with it a range of possible outcomes—from a long, Stalingrad-type siege with a high death rate, but a much lower daily death rate (0.0613%); to a relatively low civilian casualty battle like that of Fallujah, with much of the population evacuated (0.0068%); up to a relatively short, catastrophic assault with a high percentage of the population killed daily like in the final battle of Grozny (0.3023%). The crude but simple average of all five of these battles is 0.1144%—not necessarily a good forecast on its own given the wide disparity, but a useful basis for asking questions about what sort of battles we’re anticipating: Is this more like Fallujah or Grozny? Or something else entirely?
One obvious objection to this approach is that historical data, in addition to being incomplete, may not necessarily distinguish between deaths from combat (as the question series on Russo-Ukrainian 2022 War Deaths does) from other causes, such as lack of food, water, or from disease, which are all common sources of death in war, and especially sieges.
There are several answers to this. The first is pragmatic: I'm limited by the data available. While I've used historical data as a jumping off point in this essay, I've not applied it across the board where it doesn't seem to fit. Second, from the limited data available, the longer the siege the lower the effective daily casualty rate. This seems intuitively true as well: The most vulnerable die relatively early on, while those who remain are more likely to have effective shelter and resources. (As well, higher death rates are necessarily less sustainable over the longer term if the war is to continue. If you lost 0.3% of your population per day, then the siege has to end in less than a year when everyone dies!)
However, my guess is that the proportion of deaths that are non-combat are fairly negligible in the short term, but a significant fraction of the deaths in the long term. By that I mean that no one dies of hunger in the first week, and few in the first month, but as the siege drags on, the ratio of non-combat to combat deaths almost inevitably rises. The implication of this is that to the extent you expect very long (several months to years) of sieges, you should use a lower estimated daily death rate. However, this series is limited to 2022, and the community median for a ceasefire is June 2022. If you believe that is correct, then the maximum length of any sieges will be under 3.5 months, and it’s likely that the proportion of combat deaths to non-combat deaths will remain relatively high.
Since the above relates to civilian deaths in urban environments, there are two additional factors to consider in the forecast: non-urban deaths and combatant deaths.
The overall proportion from urban vs. non-urban deaths in a given war is highly contingent and is based on how much of the population lives in an urban environment, the relative length of combat in urban vs. non-urban environments, the tactics employed and political goals of both the attackers and defenders, and so on. A full accounting of all these factors is beyond the scope of this essay. However, by looking at two relevant factors, I believe we can establish with reasonable certainty that urban deaths will constitute the vast majority (perhaps 75-90%) of the civilian casualties in this war:
- Ukraine’s population is largely urban: 2015 data shows it to be approximately 68.9% urban.
- In a somewhat analogous example, casualties in the First Chechen War appear to be disproportionately urban. While the exact number of civilian deaths in the war is unclear and range from an implausibly low 20,000 up to an unlikely 100,000, there is a commonly cited consensus figure of around 40,000 deaths. Grozny (which was essentially the only major city in Chechnya) suffered terribly, with the most common estimates around 27,000 deaths. At the time, Grozny had roughly 1/3 of the population of Chechnya (around 400,000 (1989 census) in a country of approximately 1.25 million people. Even with the significant levels of uncertainty in all of these figures, it seems highly likely that the death toll in Grozny was proportionately far higher than in the rest of the country.
Based on the above factors, and given Russia’s focus on seizing control of key cities rather than pacifying the countryside as a whole, I think it is reasonable to believe that the vast majority of the Ukrainian civilian casualties will be in urban environments. For my purposes I will assume urban civilian casualties will be 85% of the total civilian casualties.
The number of deaths in the Ukrainian and Russian armed forces is relevant both directly, as these deaths count towards the war total, and indirectly, as it offers a way of very crudely assessing the plausibility of civilian death rates.
This can be done by considering the civilian-combatant casualty ratio. In the First Chechen War this was approximately 10:1 (civilians to combatants), and 4.3:1 in the Second Chechen War, for a combined total of 7.6:1. In the 1982 Lebanon War, Israel’s invasion of Lebanon and attack on Beirut resulted in a ratio of roughly 5:1 to 6:1. Meanwhile, in the NATO intervention in Yugoslavia, the ratio was perhaps 1:1. Since a significant portion of the fighting has taken place in populated areas, my baseline expectation is that a 1:1 ratio is probably the floor, and in all likelihood, it's much higher, perhaps 3:1 or 5:1, if not more.
This only helps, of course, if we have some idea of how many combatants have been and will be killed. An in-depth battle-by-battle analysis and forecast is beyond both the reasonable scope of this essay and my skill set, as it would require a substantive deep dive into doctrine and tactics, organization, training, material and logistics, positioning, political leadership and objectives, etc. Instead, the best I can do is provide a very rough estimate based on the evidence available.
Both Ukraine and Russia have strong incentives to exaggerate their own and their opponent's casualties in opposite directions. The United States has its own incentives, albeit weaker ones, and has consistently offered estimates in between Ukrainian and Russian estimates. Absent more detailed information that we likely will not have until the war is over, I think a reasonable compromise is to simply average these estimates together. This results in an average of 271 deaths per day for the Ukrainian armed forces and 288 for the Russian armed forces—or about 9,700 Ukrainian deaths so far, and 11,200 Russian deaths. In addition, the Russian-aligned Donetsk People's Republic has acknowledge 767 deaths, which works out to a daily average of 23, which I will add to the Russian numbers from now on for simplicity.
Realistically, 200-300 deaths per day is likely not sustainable for either the Ukrainian or Russian armed forces. That would equate to ~45,600 Russian soldiers by July 26th, the current community 75% prediction, which seems unlikely, especially if non-fatal casualties (e.g. those wounded and unable to fight) are added. Either Russia is suffering substantially fewer losses than estimated, they’ll adjust the scale and nature of their operations to significantly minimize casualties, or a ceasefire will be negotiated before then. To prevent further out predictions from becoming completely unrealistic, I’ll apply a 1% per day casualty reduction to both Russian and Ukrainian deaths starting in early April. The resulting rate is still quite high, but is at least a little more realistic.
Evaluating the evidence so far
With this data in mind, let’s turn to the first piece of analysis and prediction: the Russian Siege of Mariupol.
At the start of the war, Mariupol had somewhere between 431,859 (2021 estimate) and 450,000 residents, but only 160,000 remained as of March 28th, with “up to 140,000” leaving before the city was surrounded on March 1st, and “around 150,000” since then. There is a lot of ambiguity in these numbers, but I will use them for now, adjusting the 140,000 decline at a steady rate (5,000 people per day, with 20,000 on March 15th) until March 28th, since in general day-by-day numbers are not available.
There is also great ambiguity in terms of casualties. On March 15th, 2,400 civilians were officially counted dead, with a city government official estimating “that the actual total could be as high as 20,000.” On March 28th, city officials estimated that deaths were “nearly 5,000.”
To sort through these numbers, here are the implied cumulative deaths by track, with data projected on the same slope to April 7th:
- Using the data set average (0.1144% per day). Note: by default this is calculated as a proportion of the pre-battle population, since I have no way of calculating day-by-day population levels for these historical cities. This is useful from a big picture perspective, but will become less useful as time goes on, or in cases like this, where the city’s population has emptied at an incredible pace.
- Using the data set average (0.1144% per day), applied to the population as it shrinks.
- Using the daily average for the third battle of Grozny (0.3023% per day), applied to the population as it shrinks.
- Total deaths if the 5,000 on March 28th is correct (equivalent to a rate of 0.076% per day, if applied to the population as it shrinks).
- Total deaths if the 20,000 on March 15th is correct (equivalent to a rate of 0.492% per day, if applied to the population as it shrinks).
Looking at this data, my assessment (with numbers rounded to the nearest hundred to avoid false precision) is that:
- The estimate on March 15th that the actual total of deaths “could be as high as 20,000” is unlikely to be true, as it would imply an equivalent level of death surpassing that of the worst Battle of Grozny. If continued at that rate, there would be well over 30,000 deaths in Mariupol by now.
- The actual number of deaths likely exceeds 5,000 on March 28th, given accounts of mass graves and unclaimed bodies in the streets. My estimate is that on April 1st the actual civilian death toll was approximately 9,800 (between #1 and #2 on the chart). 25% threshold at 6,800 (average between #2 and #4 in the chart), 75% threshold at 11,300 (#1 in the chart).
- Mariupol is likely sustaining approximately 180 civilian deaths per day (25% threshold 120 per day, 75% threshold 270 per day). (These estimates are rounded to the nearest ten, since rounding to the nearest hundred would be too significant of a change.) I would expect this to continue at a similar rate, as the city slowly depopulates, until the city is captured. So if the city is captured on April 7th, that would be approximately 10,900 civilian deaths.
The war outside mariupol
Mariupol has not just been bombed, but nearly destroyed, with approximately 90% of residential buildings and hospitals damaged along with dozens of schools and other buildings. While other Ukrainian cities have been significantly damaged, Mariupol has fared much worse. While on March 15th Mariupol has 2,400 confirmed deaths, on March 16th Kharkiv had “at least 500”—a substantially lower amount in a city with approximately three times the population, even after accounting for evacuations. While this is likely still a significant undercount, it’s highly unlikely that a death rate even remotely similar to Mariupol’s applies for two reasons. First, the Ukrainian army has been more successful at keeping the Russian army outside the city limits, so we should expect to have a lower rate in general. Second, given the much larger population, it’s extremely unlikely that the confirmed death toll would not be significantly higher given Kharkiv’s larger population, or, likely in the 10,000 - 20,000 range, based on what Mariupol has been able to officially confirm.
This is what I will call the “surround and bombard” model, which is similar to what has also been seen at Chernihiv. At 500 deaths for Kharkiv, taking into account the evacuations, this works out to a civilian death rate of 0.0035% per day, approximately 1/20th of the confirmed rate in Mariupol. Even if we double or triple that figure to account for unreported deaths, it's still a small fraction of the deaths in Mariupol. This has significant implications for the likely overall number of deaths by the end of the war.
The two main factors we have to consider are the duration of the conflict remaining and its intensity. Simply put, how long is the war going to last? And is Mariupol as bad as it gets or merely the first of many? It’s possible that several cities get flattened and we have a ceasefire in a month, or that we have low level fighting for the rest of the year, or anywhere in between. Attempting to work out exactly which towns or cities will be attacked weeks or months in advance, especially for a high-level forecast like this, is simply impossible. However, we can construct a rough framework for calculating deaths by examining the areas likeliest to see heavy fighting (including their urban and rural populations); the forecast duration of the overall conflict; and the death rates we’ve seen in Mariupol and Kharkiv, as well as historically.
For duration, I will utilize the community’s forecast here, with the 25%, median, and 75% thresholds as of March 30th.
Ukraine’s strong defense has made it increasingly unlikely that wide swathes of the country will be substantively contested. For instance, here is the forecast on Russian troops in Lviv, dropping from 80% on February 25th to 10% on March 27th:
Wide swathes of the western Ukraine are increasingly likely to escape the worst of the war. Looking at a map of the Ukrainian oblasts it seems unlikely that Lviv, Vinnytsia, Ivano-Frankivsk, Khmelnytskyi, Zakarpattia, Rivne, Ternopil, Volyn, Kirovohrad, and Chernivtsi will see significant fighting. These areas had a pre-war (2019) population of 13,065,607. Oblasts that are currently seeing fighting are Kharkiv, Kyiv, Zaporizhzhia, Zhytomyr, Mykolaiv, Sumy, Kherson, Chernihiv, and of course Donetsk and Luhansk, for a pre-war population of approximately 13,726,717 (with the populations of the previously occupied Donetsk and Luhansk areas subtracted, as well as Mariupol, which I’ve calculated separately to avoid double counting). Oblasts that may be impacted further depending on the length and course of the war are the city of Kyiv itself (separate from the oblast), Dnipropetrovsk, Odessa, Poltava, and Cherkasy, accounting for another 11,155,755 in pre-war population.
Looking at areas that are currently seeing fighting, if we adjust for the urban-rural population split using 2015 data (the latest I could find), and assume a 20% reduction from the population leaving (twice the national average of 10%), what we’re left with is an urban population of approximately 7,972,434. In the areas that may see fighting, the equivalent population is approximately 7,323,031. And in the areas that are unlikely to see significant fighting, there are approximately 5,984,010—with a 10% population reduction instead of 20%, as some persons internally displaced from other parts of Ukraine are likely to stay there, while others may leave the country.
The question then is what factor we can apply to these populations to come up with a reasonable estimate. So far, the experience of Mariupol is atypical, and even the estimates from March 28th (over 1% of the pre-war total) are far above a realistic upper bound for the affected population as a whole. It’s also doubtful that Russia has the soldiers and munitions to sustain that sort of assault on a broader front simultaneously. A reasonable proxy is probably the documented deaths in Kharkiv—shelling and bombardment, and steady deaths, but not the devastating assault Mariupol has faced. This is a rate of 0.0035% per day. This is likely an undercount in significantly affected areas, but an overcount in areas that have been barely touched. In other areas of Ukraine, there is limited fighting, shelling, bombing, and so on, but not with nearly the same death toll. Since we are really at the limits of the available data, I will simply estimate 25% of this rate for Dnipropetrovsk, Odessa, Poltava, and Cherkasy, as nearby areas that have seen some fighting, and 10% of this rate for the unaffected areas of Lviv, Vinnytsia, Ivano-Frankivsk, Khmelnytskyi, Zakarpattia, Rivne, Ternopil, Volyn, Kirovohrad, and Chernivtsi. While this is fairly arbitrary, I think it’s actually fairly conservative: As an example, this effective rate would work out to less than ten deaths per day in the city (not oblast) of Kyiv.
Taken altogether, the above calculations work out to an average of 415 civilian deaths per day outside of Mariupol, 353 urban and 62 non-urban.
Looking forward, it’s worth starting with what seems to have happened in the recent past: that is, what is likely to be several hundred deaths per day each of civilians, as well as several hundred Ukrainian and Russian combatants. It’s easy to see this number decline if the Russians withdraw from key areas, or increase significantly if a major city like Kharkiv is encircled and taken like Mariupol. So while I don’t want to focus on a single, particular number, it’s useful as a starting point. Below are the median estimates, with the 25% and 75% estimates in parentheses.
Using the methodology above, my median estimate are that Ukraine has suffered approximately 23,400 (13,400 - 33,400) civilian deaths and combined Ukraine and Russia have suffered 21,500 (11,500 - 31,500) military deaths as of April 1st, for a total of 44,900 (24,600 - 64,600). Based on the data used to calculate this figure, I predict that the combined death toll is very likely to surpass 50,00 by mid-April, and likely to 100,000 deaths sometime in June, if the war continues that long at or above its current level of fighting.
This estimate has a fairly wide range of uncertainty, and is certainly vulnerable to criticism that many of the choices I’ve made are fairly arbitrary. On the low end, this estimate is a significant multiple of the number of confirmed military casualties by each country and civilian casualties confirmed by the UN (total under 4,000, albeit with caveats).
Conversely, it's fairly reasonable if you accept approximately a 1:1 civilian-combatant casualty ratio and realistic combatant death rates. If you're willing to go higher with a ratio of 5:1 (not unreasonable, given the numbers from the Chechnya), with the military deaths confirmed by the Ukrainian (100 per day through March 9th) and Russian governments (47 per day through March 25th) extrapolated out to March 31th, then that would work out to 25,700 civilian deaths, and a total of 30,800, well inside the range I’ve given, albeit with a significantly different breakdown. This is the orange block surrounded by a black line in the graph below.
And of course, if you accept higher estimates of either the military deaths or the civilian-combatant casualty ratio, then an even higher figure would be justified. And if you expect to see multiple cities experience Mariupol-like bombardments, especially large cities like Kharkiv, we could expect much higher civilian death rates. So as much as I hope my estimate is a far too high, I believe it to be reasonable and perhaps even conservative.
These numbers are used in support of the forecasts below.
Predictions on the total number of war dead
This question is the one where I disagree with the community's forecast most significantly.
Predictions on military deaths
These questions opened recently and are still equalizing as predictions get made. My estimates do not vary significantly from the community's so far, aside from the first question. However, I do think they introduce some tension with the earlier questions regarding overall deaths in the war.
The estimates for 25k Ukrainian military deaths (49%) and 25k Russian military deaths (70%) are hard to square with a 75% prediction that more than 50k people total will be killed in the war, including civilians.
It's even harder to square with the 26% prediction that more than 100k people will be killed. The weak evidence that we have indicates relatively proportional combatant deaths. Combined with a baseline assumption of 1:1 civilian-combatant ratio, I believe a prediction for 25k Ukrainian military deaths should approach the number for 100k deaths overall. They are somewhat close in my predictions (51% to 65% as of April 1st), with some gap given the uncertainty in casualty numbers and the exact ratios involved, but massively apart in the community's (26% to 49%, almost double!). It will be interesting to see if these forecasts converge moving forward and as more evidence becomes available.