Aid Worker Security Analysis


Humanitarian aid workers face dangers every day, whether in regions affected by war or areas hit by natural disasters. Despite the risks, they bravely work to help those who need it most, providing food, medical care, and shelter. More than that, they bring emotional comfort and hope to countless people suffering from disasters.

A female aid worker with the American Red Cross plays with a child in Haiti. Talia Frenkel / American Red Cross)

However, their own safety often does not receive enough attention. Nowadays, violent attacks have become a severe threat, significantly impacting those involved in humanitarian efforts. According to the Aid Worker Security Database, kidnappings, shootings, explosions, and violent harassment happen frequently, particularly in regions with ongoing war and terrorist activities. Aid workers risk their lives and may suffer injuries or even death while carrying out their duties.

This dangerous situation not only endangers aid workers but also threatens the effectiveness of global humanitarian operations. When aid workers are unsafe, their ability to provide essential assistance is compromised. This intensifies the difficulty faced by people already struggling with poverty and disaster. Therefore, instead of just appreciating the outcomes of humanitarian aid, we must ensure the safety of those delivering it. It is essential to call on all relevant parties to take action and provide stronger protection measures for aid workers.

Members of the Palestine Red Crescent Society and other emergency services carry bodies of fellow rescuers killed a week earlier by Israeli forces, during a funeral procession at Nasser Hospital in Khan Younis, Gaza, on March 31, 2025. Eyad Baba / AFP

In this research, we analyze data from AWSD to examine security incidents from multiple perspectives. By analyzing event details, involved organizations, and victim profiles, we aim to identify global trends in security incidents, changing patterns of violence, and specific risk factors affecting various aid organizations and individuals. These findings will help policymakers and humanitarian organizations improve safety measures and better protect aid workers in future missions.

Dynamic Changes in Victim Statistics

The victim statistics of security incidents directly reflect the risks and losses experienced by aid workers. Since different incident types (killed, wounded, kidnapped) and nationalities (Nationals vs. Internationals) affect aid workers in various ways, a layered analysis of this data is essential.

To visualize this, we used an animated stacked bar plot to display the number of victims by nationality for each incident type. This plot clearly shows the varying proportions and trends among different groups, highlighting the dynamic changes in victim statistics over time.

Code
agg_df <- df %>%
  group_by(Year) %>%
  summarise(
    Nationals.killed     = sum(Nationals.killed),
    Internationals.killed  = sum(Internationals.killed),
    Nationals.wounded      = sum(Nationals.wounded),
    Internationals.wounded = sum(Internationals.wounded),
    Nationals.kidnapped    = sum(Nationals.kidnapped),
    Internationals.kidnapped = sum(Internationals.kidnapped)
  ) %>%
  ungroup()

agg_long <- agg_df %>%
  pivot_longer(
    cols = -Year,
    names_to = "variable",
    values_to = "count"
  )

agg_long <- agg_long %>%
  separate(variable, into = c("Nationality", "Type")) %>%
  mutate(Type = tools::toTitleCase(Type))

p3 <- plot_ly(
  data = agg_long,
  x = ~Type,
  y = ~count, 
  color = ~Nationality, 
  type = 'bar',
  frame = ~Year,
  customdata = ~Nationality,
  hovertemplate = "Category: %{customdata}<br>Incident Type: %{x}<br>Num of victims: %{y}"
) %>%
  layout(
    barmode = 'stack',
    title = "Victim Breakdown by Nationality and Incident Type",
    xaxis = list(title = "Incident Type"),
    yaxis = list(title = "Number of Victims")
  )

theme_plotly(p3, "Victim Breakdown by Nationality and Incident Type")


You can play the animation and hover over the plot for detailed information on each year.

The stacked bar plot uses color to represent nationality, with blue segments indicating national victims and green segments indicating internat`ional victims. From the plot, it is evident that national aid workers face significantly higher risks across all three incident types (killed, wounded, kidnapped). This may indicate that domestic aid workers are more likely to be present in these regions, leading to a higher number of victims compared to international aid workers.

Between 1997 and 2004, the highest numbers were observed in the “killed” category. From 2005 to 2018, all three incident types experienced a substantial and relatively balanced increase in numbers. In 2019, there was a sharp increase in the number of wounded victims, reaching 215. And this high level was maintained at 233 in 2020. After a slight decline, the number of killed aid workers rose again in 2023 and 2024, reaching historic highs of 272 and 369, respectively.

This pattern may be related to the means of attack. Large-scale gun battles and aerial bombings can directly result in high numbers of fatalities and injuries, whereas kidnappings tend to be more targeted and costly. Consequently, the number of kidnapped victims generally does not exceed 150 per year. As warfare weaponry advances, there has been a significant increase in injuries and fatalities in recent years.

Seasonal Dynamics of Attack Methods

In this section, we further investigated the frequency differences among various means of attack and uncovered any specific temporal patterns. By examining the distribution of different attack methods (such as shootings, aerial bombardment, kidnappings, etc.) on a monthly basis, we can identify which methods are more dominant in certain months and analyze potential seasonal factors that influence these incidents.

We created a monthly trend plot that breaks down the number of security incidents by the means of attack, providing specific temporal insights to aid in prevention and emergency response planning.

Code
total_df <- df %>%
  filter(!is.na(date)) %>%
  group_by(date) %>%
  summarise(total_attacks = n())

attack_means <- df %>%
  filter(!is.na(date)) %>%
  group_by(date, Means.of.attack) %>%
  summarise(count = n()) %>%
  ungroup()

p4 <- plot_ly() %>% add_trace(
  data = total_df,
  x = ~date,
  y = ~total_attacks,
  type = 'scatter',
  mode = 'lines',
  name = 'Total Attacks',
  hovertemplate = "Date: %{x}<br>Means: Total Attacks<br>Num of incidents: %{y}"
)

# Add a line trace for each Means.of.attack category
unique_means <- unique(attack_means$Means.of.attack)
for(m in unique_means) {
  df_mean <- attack_means %>% filter(Means.of.attack == m)
  p4 <- p4 %>% add_trace(
    data = df_mean,
    x = ~date,
    y = ~count,
    type = 'scatter',
    mode = 'lines',
    name = m,
    customdata = m,
    hovertemplate = "Date: %{x}<br>Means: %{customdata}<br>Num of incidents: %{y}"
  )
}

# Layout settings for the plot
p4 <- p4 %>% layout(
  title = "Monthly Number of Incidents by Means of Attack",
  xaxis = list(title = "Date"),
  yaxis = list(title = "Number of Incidents")
)

# Display the plot
theme_plotly(p4, "Monthly Number of Incidents by Means of Attack")


The number of total security incidents shows strong seasonality, which we will analyze further below. By interactively deselecting the total attack line in the legend, we observed different patterns among the various means of attack. Shooting is by far the most dominant method, clearly exceeding the counts for other attack types. Kidnappings, aerial bombardments, and bodily assaults are also the primary methods, while other methods occur rarely, typically in single-digit counts.

Because monthly incident counts can vary greatly from year to year, analyzing data for individual years might not reveal the overall seasonal trends. To address this, we calculated the average number of attacks per month across multiple years. This approach smooths out random annual fluctuations and provides a clearer picture of the average security risk level for each month. Comparing the monthly averages for different attack methods helps identify whether certain months or attack types consistently exhibit higher risk levels.

Accordingly, we created a monthly average line plot that displays both the total number of attacks and the primary attack methods, which include shooting, kidnapping, aerial bombardment, and bodily assault.

Code
avg_total <- total_df %>% 
  mutate(month = month(date)) %>% 
  group_by(month) %>% 
  summarise(avg_total = mean(total_attacks)) %>% 
  ungroup()

# 5. Calculate average attacks for each Means.of.attack for each month
avg_means <- attack_means %>% 
  filter(Means.of.attack %in% c('Shooting', 'Kidnapping', 'Bodily assault','Aerial bombardment')) %>%
  mutate(month = month(date)) %>% 
  group_by(month, Means.of.attack) %>% 
  summarise(avg_count = mean(count)) %>% 
  ungroup()

max_y <- max(c(avg_total$avg_total, avg_means$avg_count), na.rm = TRUE)

p5 <- plot_ly() %>%
  # Add the total average trace
  add_trace(data = avg_total,
            x = ~month, 
            y = ~avg_total,
            type = "scatter", 
            mode = "lines+markers",
            name = "Total",
            hovertemplate = "Month: %{x}<br>Means: Total Attakcs<br>Average num of incidents: %{y:.2f}"
)

# For each Means.of.attack category, add a trace
unique_means <- unique(avg_means$`Means.of.attack`)
for(m in unique_means) {
  p5 <- p5 %>% add_trace(data = avg_means %>% filter(`Means.of.attack` == m),
                         x = ~month, 
                         y = ~avg_count,
                         type = "scatter", 
                         mode = "lines+markers",
                         name = m,
                         customdata = m,
                         hovertemplate = "Month: %{x}<br>Means: %{customdata}<br>Average num of incidents: %{y:.2f}")
}

# Set the layout for the chart
p5 <- p5 %>% layout(title = "Average Monthly Attack Counts",
                    xaxis = list(
                      title = "Month",
                      tickmode = "array",
                      tickvals = 1:12,
                      ticktext = month.abb
                    ),
                    yaxis = list(
                      title = "Average Attack Count", 
                      range = c(0, max_y)))
theme_plotly(p5, "Average Monthly Attack Counts")


For total attacks, the highest average monthly counts were observed in June and October, with both months reaching 15 incidents on average. This pattern may be related to temperature, climate changes, and intensified seasonal conflicts. For example, June often experiences higher temperatures, leading to more frequent outdoor activities and humanitarian aid operations, while October may coincide with periods of political or military transition, triggering a surge in security incidents.

Consistent with previous analysis, shooting is generally the most frequent method of attack, averaging around 4 incidents per month, which indicates that shootings are the most common attack method in conflict zones. In contrast, other attack methods rarely exceed an average of 4 incidents per month.

Although the monthly differences appear minor, usually just one or two incidents, these variations may still be significant when considering the cumulative impact over time, the concentration of specific attack types in certain regions, or their broader implications for security and response planning.

For aerial bombardment, the average monthly count fluctuates significantly. Both March and November exceed 4 incidents on average. This may be attributed to favorable weather and optimal aerial combat conditions during those months, which facilitate large-scale air strikes or bombing operations. Conversely, May and August show the lowest averages, possibly due to high temperatures, heavy rains, or other adverse weather conditions that limit aerial operations, resulting in fewer airstrike events.

Bodily assault occurs at an average of approximately 3.5 incidents per month, but the numbers rise to over 4 in February and June. This could reflect that during the transition from winter to early summer, factors such as changing climate, increased population mobility, and weaker local security measures lead to more frequent face-to-face violent conflicts.

For kidnapping, the incident counts also display significant fluctuations, with peaks occurring in July and October. This may be related to relatively relaxed security measures during summer vacation periods. In contrast, December records the lowest counts, potentially because winter conditions limit operational activities or because enhanced security measures are implemented during the holiday season.

These seasonal variations reflect changes in the frequency and security risk levels of humanitarian aid operations throughout the year, providing important insights for better understanding regional risks and for formulating effective emergency response strategies.

Conclusion

Through a multi-faceted analysis of global security incident data, we can draw several key conclusions.

Overall, from 1997 to 2024, the number of security incidents has shown a significant upward trend accompanied by notable fluctuations. This reflects both the escalating instability in conflict regions and the advancements in weapon technologies.

Geographically, security incidents are primarily concentrated in Africa and the Middle East, which is closely linked to the long-term political and military turmoil in those regions.

There are marked differences in the risks faced by different humanitarian organizations. INGOs have consistently been exposed to the highest levels of risk, while the UN has experienced abnormally high victim counts in specific years due to intense conflict in certain regions.

Security incidents exhibit a clear seasonal pattern, with total incident counts peaking in June and October. This is possibly due to higher temperatures or shifts in political and military conditions. Moreover, different methods of attack display their own unique seasonal trends. For instance, shooting incidents remain relatively stable, while aerial bombardments, violent assaults, and kidnappings peak in particular months.

Recommendation

First, policymakers and relevant organizations should strengthen early warning and monitoring systems for high-risk periods and regions. In critical months such as June and October, proactive deployment of security measures, such as increasing on-site protection personnel and enhancing emergency response plans, is essential to minimize the threat to aid workers when incidents occur. In regions like Africa and the Middle East, governments and the international community should work closely together to improve local security conditions and enhance the protection of both civilians and humanitarian aid workers. Additionally, adapting and optimizing security intervention strategies in response to regional conflicts and shifts in political conditions is crucial.

Second, for humanitarian organizations such as INGOs that have been consistently exposed to high risks, establishing a dynamic risk assessment mechanism is highly recommended. Regularly reviewing and updating safety strategies based on specific data from different years can help these organizations tailor their internal security measures. For example, organizations should consider specialized training for personnel deployed in high-risk areas, strengthen inter-organizational information sharing, and enforce stricter security protocols during periods of heightened risk.

Third, given the seasonal variations in different attack methods, tailored response strategies should be developed for shootings, aerial bombardments, violent assaults, and kidnappings. Particularly when incidents like aerial bombardments and kidnappings peak in specific months, relevant authorities should consider adjusting operational and protective measures. This could include enhancing meteorological monitoring and emergency response during months prone to air strikes, and bolstering operational security during periods when kidnapping risks are high, ensuring that humanitarian operations are less vulnerable to sudden violent disruptions.

Finally, continuous data monitoring and analysis is essential for optimizing security measures. It is recommended that all relevant organizations consistently collect and analyze security incident data, utilizing advanced data analysis and visualization tools to update risk early warning systems in real time. This will provide robust data support for developing more scientific and effective security protection strategies.

Those who bring light to others should never be left to struggle alone in the dark. Each of us must shoulder the responsibility of providing support to those who spread hope through their lives. Only by doing so can we, as a global community united in mutual aid and rescue, construct warm barriers to dispel the cold and darkness, and together, lead a brighter and more harmonious tomorrow!



References

1.
Morokuma, N. & Chiu, C. H. Trends and characteristics of security incidents involving aid workers in health care settings: A 20-year review. Prehospital and disaster medicine 34, 265–273 (2019).
2.
Hoelscher, K., Miklian, J. & Nygård, H. M. Understanding attacks on humanitarian aid workers. Conflict trends 6, (2015).
3.
Patel, P., Gibson-Fall, F., Sullivan, R. & Irwin, R. Documenting attacks on health workers and facilities in armed conflicts. Bulletin of the World Health Organization 95, 79 (2016).