
Battlefield 6 has millions of monthly players and I have the data to prove it
Too Long; Didn't Read:
- Estimated average playtime in the last 2 weeks by steam players: 7.83 hours (please read further for context to this number as it is not a measured value)
- Estimated total amount of players who've played in the last 2 weeks based on total hours played on steam via SteamDB, with non-steam PC population and estimated console populations weighed in: 3.7-4.5 million (please read further for context here as well as this is a "guesstimation" based on rough data)
- Important disclaimers can be found at the bottom of this post.
Not Too Long; Will Happily Read:
Ok, this is a pretty bold statement, I'll admit. Bear with me whilst I explain.
Over one week, I gathered data on 632 unique Steam users that I've played against between Monday April 27th and Sunday May 3rd. During a match, I would hide behind a bush for about 2 minutes, and painstakingly go through the scoreboard and open every Steam user's profile in the Steam overlay web browser. I would then, after the match was over, sit in the main menu and record the user's URL in a spreadsheet. Now, most Steam users have this data private to some degree, but a large enough minority thankfully doesn't. So, after 7 days, I had gathered 632 unknowing test subjects, from a total of 91 matches.
Many of you might rightfully now be thinking:
Why on earth would you put yourself through the pain of doing this? Why is this so important to you?
Because I am so tired of the obsession with the SteamDB peak player counts that some users here on Reddit have. I want to show everyone that peak player counts can blind you to how many are actually playing on a regular basis. Yes, peak player counts is relevant when discussing matchmaking, and hopefully the returning proper server browser is going to fix that issue, especially for those of you in low population regions such as Oceania.
Also I like doing science :P
What does the peak player counts have to do with this?
Everything! We'll get there.
You are a massive nerd.
Thank you! I wear that title with pride, it's not my first rodeo with gathering and presenting data on this game.
How can you determine the number of monthly players based on only Steam data?
I'm not using only Steam data, but this is where the speculative parts come in. I use data from old archived Battlefield Stats websites through archive.org and non-skill based data from tracker.gg to make "guesstimations". But we'll get there later.
How sure are you of the accuracy of your data?
Quite sure about the measured data. I have my disclaimers at the bottom of this post.
You said you had the data to prove it, where can I access this data to look at it myself?
Here's a link to an anonymised version of the spreadsheet.
Now that that is out of the way, let's go through the process!
What data is important to calculate the monthly user count?
- SteamDB current player count data. Easy to get.
- Average play time per user. Tedious to get.
- The % of Steam players compared to the total amount of PC and console players. Difficult to get an accurate value.
Let's begin with the easy part.
I copied over the SteamDB current player data into a spreadsheet. By this I mean I wrote, by hand, every measured player count, for every 10 minute interval that SteamDB displays, for an entire week. This is done to calculate the total number of hours that players have spent in the game together over that week.
Basically, to calculate the number of hours spent by all players, with data for every 10 minutes you would add up all player counts together for the entire week, and then divide by 6 (since there were 6 measurements per hour). This gave me a total of ca 5.3 million hours in one week, or around 10.6 million for 2 weeks, since we'll be using data that spans 2 weeks.
Alright, time for the tedious part.
Average playtime per user was calculated by taking the number of hours that players have spent in the last 2 weeks, and taking the average of that number. I then used this number to estimate how many Steam players have played the game in the last 2 weeks.
Now, the initial average I got when I went through all 632 entries after the week was over was about 18.21 hours. Now, that is not a representative number for the whole active playerbase, because those who play for longer times are more likely to be caught in my experiment. This is called the Inspection Paradox, or Length Time Bias. Basically, if you have a room that fits 2 people, and 1 person that spends 60 minutes in that room, and 60 people that spend 1 minute in that room each. At any point in time during a one hour period, if I take one measurement, I'm going to see 1 person with 60 minutes, and another with 1 minute. Their average becomes 30.5 minutes, whilst the true average is about 1.97 minutes. Simply because those other 59 people were not caught in my snapshot. Thus, 18.21 is a good average for the average player in any given lobby, but not for the playerbase as a whole.
And before anyone asks if 632 users are significant enough to get a decent average over time, the cumulative average values stabilised between the first 100-200 users. And when I did a revisit of the values 4 days later, the same pattern occurred (this process was time consuming, so after seeing in my charts that the observed average was going to be pretty much the same the second time around I stopped after about 140 entries in).
One way to see how sound my data is, is to calculate the Coefficient of Variation. You take the Standard Deviation and divide it with the Observed Mean. The Standard Deviation is fairly high, at 15.11, compared to the Observed Mean, at 18.21 (The data I have ranges from 0.3 hours to 98.4 hours, which is a large span). This yields a CV of 0.8298 (82.98%), which is extremely high.
Now, TBH, I tried looking some of this math up online, but it was too much reading of terms I had long forgotten about for me and my one poor braincell to handle (it's been almost a decade since I took statistics in university... and I uh, didn't pass that class... I was tired of school ok). Luckily, I had someone that was... well, somewhat... reliable that did explain what methods I should use to calculate average values. Google's Gemini. I know, I know, AI bad and unreliable (believe me, I know). But it did give me some good pointers in it's "pro" and "thinking" mode as to what formulas I should use, and I will be transparent with the methods.
The first method I was suggested was to divide the Observed Mean with 1 plus the Coefficient of Variance squared, like this: Mean/(1+CV^2). This formula gave a value of 10.78 hours (no, I didn't let the AI do the math, I did it in my spreadsheet). The AI called this "heuristic mean" because it said it represents a "practical shortcut". It said the formula is the Renewal Theory Correction for size-based sampling, and since the data I have is messy, it goes from "law" to "heuristic". I'm going to be honest, me and my one braincell were lost in the woods at this point, so I asked for a motivation I could understand and this is what Gemini gave me:
>This formula comes from Renewal Theory and the Inspection Paradox. It is the formal way to calculate the relationship between a "true" average (μ) and an "observed" average that has been length-biased E[X_obs].
>
>1. The Bias Rule: In length-biased sampling, the probability of catching a player is proportional to their playtime (x). This means E[X_obs] = E[X^2] / E[X].
>2. The Variance Link: We know that E[X^2] is equal to the Variance (σ^2) plus the Mean squared (μ^2), and E[X] is equal to the Mean (μ)
>3. The Substitution: E[X_obs] = (σ^2 + μ^2) / μ = (σ^2 / μ) + μ
>4. The Coefficient of Variation (CV): Since CV = σ / μ, we can say σ = μ * CV. If we plug that in: E[X_obs] = (μ * CV)^2 / μ + μ = μ * CV^2 + μ
>5. The Final Result: Factoring out the μ gives us E[X_obs] = μ * (1 + CV^2). Rearranging it to solve for the true mean gives us the formula we used: μ = E[X_obs] / (1 + CV^2)
So, the AI says that this value, 10.78, is good at describing the "Standard Active Player". But this calculation should realistically be made with expected values already in mind, and not with measured values... sooooo on towards method 2!
The second method however is different, and derives from "Inverse Probability Weighing". The AI used the Horvitz-Thompson Estimator which it says is built on this rule: A player's "weight" in the average should be the inverse of their chance of being caught. This goes back to the 2 people in the room example. The 60 minutes person has 60 times the chance of being caught than anyone of the 1 minuters. And because of that, the H-T formula suggests that each player should be weight by 1 / Time. This, applied to the 2 people in the room example, suggests that the 60 minuter should be 1/60, and the 1 minuter should be 1 (1/1=1). These values are then summed, 1 / 60 + 1 = 1.016666... Finally, we divide the number of entries in the measurement, 2, with the sum, which becomes 2 / 1.016666... ~ 1.97. The exact same value as the true average for that example.
Now, the true real world data is probably not entirely as clean cut as this example, but since it holds up well in the example, I tried to use it on the data I had gathered, and the end result became about 7.83 hours as the "harmonic mean".
Thus, by dividing the total play time, 10.6 million hours, with the harmonic average, 7.83 hours per player, we get an estimated 1.35 million Steam users in the last 2 weeks.
Now the difficult part.
How many players across all platforms are there actually?
Let's start with the easier part, calculating the number of players using the EA App or Epic Games Store. I did this by recording myself when I was gathering the Steam users' data, and for every PC user that I clicked on, around 74% were Steam players. Roughly 3 out of 4 PC players play on Steam.
Thus, the estimation becomes approximately 1.83 million PC players in the last 2 weeks (provided that other PC players also play an average of 7.83 hours per 2 weeks).
The by far hardest part in this estimation becomes the console player count.
I went to archive.org to record the peak player data seen in snapshots of the old BF4Stats.com and BF1Stats.com websites. These websites showed player counts from all platforms, which can serve as a decent guide for our final estimation.
From BF4Stats.com I observed that from late 2014 (when I first found good data) to late 2016 (when BF1 released), the PC peak player counts mostly fluctuated between 20% and 30% of the total peak player counts (the average sitting at around 25%).
From BF1Stats.com I observed that in early 2017 (when good data first arrived), the PC peak player count sat around 16%, but rose to BF4 levels as the years went on.
The data ends in late 2019, where the PC peak player counts for both games sat around 30-35%.
However, the PC market has surged compared to the console market in the last few years, and Gemini suggested that the PC market share is likely to be much higher than it was 8 years ago. Yes, I know, again, take this with a grain of salt, but this is its motivation:
>The shift in the platform landscape for AAA shooters has reached a tipping point, moving from a console-centric model to a near-even split. As of 2025, industry reports show PC now holds the largest share of the FPS market at 38.2% of total revenue, officially edging out consoles at 34.4%. This reinforces the milestone set by Activision Blizzard in 2023, where PC revenue surpassed console for the first time in the company's history. In the current cross-play era, where over 70% of gamers operate across multiple platforms, PC has evolved from a niche enthusiast market into a primary pillar that often accounts for 40–50% of the active player base in high-engagement live services. For modern franchises, the PC community no longer represents a secondary "port" audience but rather the densest concentration of high-skill players and the most resilient segment of the long-term player economy. > >Source that the AI referenced.
In addition, If I for example go to tracker.gg and check how many players have played between 300 and 3000 matches in BF6, I get a PC share of 55.80%, but if I check between 1000 and 3000 matches, I get 49.78%. Thus another question becomes relevant. Are PC users more likely to use tracker.gg than console players? Probably. So a safer bet would be to estimate the PC population to be between 40-50% of the playerbase.
So with 40-50% of the playerbase potentially being PC players, this would put our total active player count somewhere around 3.7 - 4.5 million players in the last 2 weeks, with the monthly estimation very likely being higher.
Finally, here are my disclaimers, seeing as you have just seen the final "guesstimation", it's only fair to be reminded that there are limitations to gathering data by brute force, partially blind.
- 76.8% of users were recorded in Conquest (40.2%) and Escalation (36.6%). Breakthrough makes up 11.6%, rush 3.8% and all other modes the rest. I never played Strikethrough or REDSEC during this time. I queued up a little bit for the smaller modes, but I rarely had fun for prolonged periods playing them (mostly my party members didn't). For the most part, I queued into Conquest, Escalation, Rush and Breakthrough on all available maps (but rarely got to play anything but Conquest and Escalation). This likely skews the data.
- Seeing as this is based on European player data, any different player behaviour with hours put into the games in other regions of the world will skew the data.
- I am only human. It is unlikely I haven't made a single mistake when copying over data between websites (in fact, I've spotted some minor and unimportant ones that doesn't affect the estimations myself). This took a long time to assemble, and some late nights.
- The AI used to explain the formulas I used might be wrong entirely about the usage of those formulas, and if they are, please tell me.
Finally. Thank you for reading through the ramblings of a crazy lady, me.