
Topic: Data@Embark - How to Track and Analyze Every Bullet Fired in a Game Speaker: Mathias Andersson - Embark Studios Field: Data, Programming Recommended for: Anyone interested from an analytical or technical perspective in what kind of data is collected in games and how it is done
Tags: #NDC26 #Data #ARCRaiders
[🚨 Session Topic] Embark Studios has built a data platform capable of capturing every single bullet fired within its games. This session provides a detailed explanation of how our data platform works and how the collected data is utilized in Embark's dashboards and various data applications.
On the second day of NDC 2026, Embark Studios data engineer Mathias Andersson introduced the company's data platform, stating, "We track every bullet fired in our games." Andersson is a veteran who previously served as a technical director at King, the company famous for 'Candy Crush Saga.'
The scale of player tracking at Embark Studios, as revealed by Andersson, is overwhelming. Embark records not only the firing and hits of bullets in its games, 'THE FINALS' and 'ARC Raiders,' but also the positions of every player. Given the nature of games featuring weapons like miniguns that can unleash a massive volume of fire in an instant, the amount of data to track is immense.

According to Andersson, Embark tracks over 1k different types of events. At its peak, 'ARC Raiders' generated over 100 billion events per day, amounting to 30 terabytes of data daily. Even more surprising is the speed: all this data reaches the storage within two seconds, meaning that two seconds after a bullet is fired, one can immediately check whether it hit or missed.
Andersson noted that the primary purpose of tracking this vast amount of data is security, such as cheat detection. Data is used to identify players exhibiting abnormal movement. It is also used to adjust game balance by analyzing weapon accuracy and damage.
An interesting application is in matchmaking. 'ARC Raiders' utilizes a matchmaking system well-known among users as 'Karma (or aggression)-based matching.' According to Andersson, the vast data mentioned earlier helps determine user aggression—specifically, who fired first in an engagement.


Furthermore, the proprietary application used by Embark takes the form of very simple logs, but it also allows users to view match results across multiple rounds at a glance via a 'heatmap.' The red-highlighted areas help identify where players frequently position themselves over several matches. During a hackathon, they even created a rotating globe that shows 'where in the world people are playing Embark games at this very moment.' Andersson noted, "It was fun to see that Korea was shining particularly brightly."
Another keyword he emphasized that day was 'data democratization.' Instead of having the data team handle all analysis, the goal is to empower those in the field—such as map designers and developers—to work with data directly. To this end, they have built their own tools, including dashboards accessible to everyone and a 'map replay' feature that allows users to watch a match back to track player movement and death locations. The idea is to put data directly into the hands of the people making the games, rather than leaving it solely to analysts.
Andersson also shared lessons learned from building their data infrastructure from scratch. The core takeaway is that "you don't need to use every trendy tool in the industry." He advised choosing a few technologies with solid foundations and, if they don't fit, building your own, adding that "it's okay to reinvent the wheel."
He added that in the era of 'vibe coding,' where AI allows for rapid code generation, it is often better to reduce the number of tools and manually bridge any gaps yourself. He also pointed out that "everyone needs different tools," noting that some might prefer a dashboard, others might want data within the game engine, and a CFO might just want a single email every morning. Finally, he shared a reflection: "Code is better than config, and config is better than UI."


Sort by:
Comments :0
