Math model of AFU losses

Starting from 25th of May project helps ordinary people to find their relatives serving Armed Forces of Ukraine (AFU) and for some reason stopped getting back. We collected a database of more than 125,000 records, accepted more than 3,000 requests from relatives, and helped to find information on more than 900 soldiers (the numbers are growing daily) – all in the past few months.

Note: We're widely using AFU as an umbrella term for all people one way or another fighting on the side of the Ukraine government. This includes ZSU (Zbroini Syly Ukrainy, the regular army), NGU (National Guard of Ukraine), territorial defence units, SVR (Foreign Intelligence Service). Atop of that nationalist units exist there, for example, Azov regiment (banned in Russia, it intersects with the A3057 military unit mostly but not fully), Kraken battalion, Zakarpatskaya Sich, volunteer battalions (e.g. vol. bat. "Sonechko"), various mercenary organizations, and organizations of foreigners, all of them do not always belong or are included in official military hierarchy,

We are looking for all people from all units regardless. That is precisely why we mean and use AFU in its broader meaning.

With the help of our database we decided to try to estimate the losses and the total numbers of AFU personnel using statistical methods. Precise numbers couldn't be found for many reasons which could significantly skew the statistics. For instance:

  • part of the data is received as large lists. A few times we have stumbled upon official papers of captured or dead. Another time we scraped 120,000 non-unique records from (a project that publishes a lot of data on the topic, but only available for Russian IPs) and its almost-a-mirror
  • part of the categories of people could intersect in a tricky way. For instance, in our database the same person could go as both wounded and dead because initially he was wounded, then captured and then killed by Ukrainian shelling or a missile strike while in detention camp.

Despite it all, we carefully go through the records when searching at a request by relatives. In such a case we check for record uniqueness and merge non-unique records. So the duplicates could affect our estimation of the total AFU numbers, but not the numbers of killed and captured in action.


We would like to note that we haven't performed estimation for certain kinds of broad categories for the lack of data, specifically for the wounded evacuated into the territories controlled by AFU and for deserters. That is the reason why we done estimations only for the number of Ukrainians killed or captured in action.

We have also applied the model to narrow well-defined categories.

We assume the distribution of people looking for their relatives via, and the distribution of data obtained from open sources are independent. The main chunk of information is collected from the lists that are posted in various Telegram channels who usually collect any information they stumble upon. A small part of the data is received through MSM, however that is mostly about officers and nationalists. That is in fact why we choose to count officers in a different manner. For details on that proceed below to the Numerical Results section.

For each category (killed, captured in action) we estimate the population as:

T = R / (A / Q)


  • T — total number of AFU soldiers in the category,
  • R — number of records in our database about the people in this category,
  • Q — total number of search requests left by relatives,
  • A — the number of successfully fulfilled search requests, where the person in question was found to be in the specific category.

In other words, we presuppose that the probability to find a person in our database is equal to the conditional probability to find a person at a request made by relatives.

Atop of said two categories, we choose to estimate the total number of AFU personnel - active, killed, and captured combined - using the very same method. For that we assume every person in our database is in fact serving in AFU. Based on this estimation and estimations for killed and captured soldiers we derive the estimation of the active AFU personnel by a plain subtraction. We are aware that our database contains a certain fraction of duplicate records, hence this would be an upper estimation of active AFU personnel. As we clear up the database from duplicates, the estimated value would naturally go down.

Numerical results

We have determined that the model described is not applicable to certain categories. The stark example is the number of officers. In our database out of 3,500 manually checked records about killed servicemen, 1,200 are the officers. However there're only a few requests to search for them. This clearly shows absolutely different probability distribution for officers and for the rest. Moreover the bulk of the officer records originated from media articles while for the rest come from various telegram accounts and other websites and contain much less details. Hence we counted officers as a separate category and haven't applied the (A / Q) coefficient to their estimated numbers.

On 21st September 2022, we got an opportunity to check our estimations against official numbers. On that day Sergei Shoigu, Minister of Defense of Russian Federation in his speech announced the official numbers of 61,000 killed AFU soldiers at that moment. Our model predicted 67,000 on the same day. We believe this could be a hint to other special categories aside from officers that have got an unusually low probability of being searched for by relatives. Such categories could be the core of Ukrainian military after the British training programs. It might also be nationalist groups like Azov, Kraken, or Zakarpatskaya Sich enjoying much higher attention in mass media. We believe these people could in statistical sense be somewhat in between officers and ordinary mobilized folk. However due to lack of well-defined criteria we haven't corrected for these categories. If reader deems that necessary, our estimations of killed and captured personnel could be reduced by 10%.

Below we present the charts updated on a daily basis with the estimations of numbers of killed and captured personnel of AFU, respectively. You can see the numbers for the particular day by hovering your mouse on the corresponding dot.

Attention! The charts are showing the evolution of our estimations, which include both the changes in real world situation and the evolution of our understanding of the said situation. That's why one should not wonder for instance for sudden changes in numbers - most likely we found and processed another list of names on that very date.

There are two other estimations - total (active + killed + wounded) and active numbers of AFU.

We believe the latter two are top estimates which would be corrected downwards for a few reasons:

  1. our database has a fair share of duplicate records. Right now we haven't accounted for that, however it could significantly lower the total estimation (but not the numbers for killed and captured as they are all checked manually),
  2. out of common sense it is much less likely that we would see both records and requests for search on ordinary units such as territorial defense guarding rather remote parts of Ukraine such as Lviv. They are both not of interest for various hackers nor do they face much losses due to being far from the frontline.


Real AFU losses also include wounded, deserters, and the ones that got actually missed in action. It may be that the actual irrecoverable losses of AFU are twice as high as numbers presented above.

Please also note this is a delayed smoothed estimation. First of all, it depends on relatives reaching for us. This could happen both within a few days and within 5 months from actual events, like it was when the missile stroke the quarters of 137 marine battalion in Mykolaiv on 18th of March 2022. As was noted above, some jumps in our estimations like on 5th and 24th of October 2022 are directly connected with us stumbling upon some large lists of the dead.

We have chosen not to give estimations for any other categories for the lack of reliable data.

Если Вы заметили неточную или устаревшую информацию - сообщите нам пожалуйста!