Navigate
Original research
Everyone in FiveM has an opinion about which framework “won”. Almost nobody has counted. We can, because we poll every public server on the Cfx.re list every five minutes and read the tags its operator set — so here is the count, by servers and by players, which turn out to disagree with each other rather badly.
The short version: QBCore runs more established servers than vRP (320 against 293) and carries 4.0× fewer players on them (7,582 against 30,143). A framework’s share of servers tells you what people install. Its share of players tells you what people play. Those are different statistics, they do not agree, and the “most popular FiveM framework” articles all quote the first one while implying the second.
3,296 live servers that have held a recorded peak of 25+ concurrent players
The oldest of the mainstream roleplay frameworks (es_extended). Huge script ecosystem, and the default target of most paid resources.
Servers that declare no framework tag at all. This is NOT the same as “standalone”: most of these servers simply never set the tag, and a third of the live directory is in here.
The 2020-era challenger. Cleaner codebase than classic ESX and the framework most new English-language servers were built on.
The framework almost nobody in the English-speaking scene talks about — and the one carrying the largest servers on the network, overwhelmingly in Brazil.
A community fork of QBCore, rebuilt on the ox_* libraries. The newest of the four, and visibly still in its adoption phase.
Servers whose tags declare more than one framework. We do not guess which one is really running — they get their own bucket.
This is the cut that means something. It excludes the tens of thousands of never-configured one-click deployments that make up most of the raw directory, and asks only about servers that have demonstrably had a crowd on them. The bar you want is the lower one — share of players. It is the only one that reflects where people actually are, and it is nothing like the share of servers directly above it.
An average vRP server carries 103 concurrent players. An average Qbox server carries 20. That is not a rounding difference, it is a different category of product: one framework is running communities, the other is mostly running projects.
All 32,848 live servers, including the empty ones
The oldest of the mainstream roleplay frameworks (es_extended). Huge script ecosystem, and the default target of most paid resources.
Servers that declare no framework tag at all. This is NOT the same as “standalone”: most of these servers simply never set the tag, and a third of the live directory is in here.
The 2020-era challenger. Cleaner codebase than classic ESX and the framework most new English-language servers were built on.
A community fork of QBCore, rebuilt on the ox_* libraries. The newest of the four, and visibly still in its adoption phase.
The framework almost nobody in the English-speaking scene talks about — and the one carrying the largest servers on the network, overwhelmingly in Brazil.
Servers whose tags declare more than one framework. We do not guess which one is really running — they get their own bucket.
Servers declaring ox_core or ND Core. A rounding error on the public directory today.
The same question asked of every live server, empty or not — and it is a different answer, which is exactly why the distinction has to be stated every time. This cut is dominated by deployment defaults: hosting panels and one-click installers ship with a framework preselected, so a large share of these “servers” are a framework tag attached to a box nobody has ever logged into. Treat it as a measure of what gets installed, and the cut above as a measure of what gets played.
314 servers declare more than one framework at once. We do not guess which one is really running — they are counted in their own bucket, visible above, rather than being silently assigned to whichever would make a nicer chart.
Where the established servers running each framework actually are
Framework choice in FiveM is not a technical decision made in isolation — it is inherited from whichever community you learned to build in. The frameworks sort cleanly by language and region, which is also why the English-speaking scene’s consensus about “the popular framework” describes the English-speaking scene rather than FiveM.
Live player counts, from the servers with the highest recorded peaks
The exact rule, published — so you can check our numbers instead of trusting them
A server is assigned to a framework if its Cfx tag list contains one of the tags below, matched exactly — never as a substring, which would fold “non-esx” into ESX. A server matching tags from two families is counted as Multiple declared, not assigned to one of them. A server matching none is counted as No framework declared, not dropped. Tags are lower-cased by the Cfx directory.
esxesx legacyesxlegacyesx-legacyes_extendedqbcoreqb-coreqbqbusqb coreqboxqbxqbx-coreqbx_corevrpvrpexvrp2vrpex2ox_coreox corend_corendcoreThis measures declarations, not installations. Nothing in FiveM verifies what a server is running, so a server running QBCore that tags itself esx will be counted as ESX by us and by anyone else reading the same directory. We think this is still by far the best available measurement — it is a census of the whole public network rather than a survey of whoever answered — but it is a census of what operators say.
The caveats are part of the data. Here is every way a naive reading of this page would be wrong.
Nothing in FiveM verifies what a server is running. The framework split below is built from the tags server owners type into their own server.cfg, so it measures what operators SAY they run. Thousands of servers declare nothing at all — we show that bucket at full size rather than dropping it or quietly redistributing it across the frameworks, which would inflate every share you see.
The Cfx list is dominated by one-click deployments that were switched on and never configured. Any average taken across all live servers is therefore mostly a measurement of how many empty boxes are running. Where it changes the story, we publish a second cut restricted to servers that have demonstrably held a real population (a recorded peak of 25+ concurrent players), and we always say which cut you are looking at.
It is the default locale string an unconfigured fxserver ships with, and it is one of the largest single values in the whole directory. Presenting it as a region would put Antarctica in the top three countries in FiveM. It is folded into a “no region declared” bucket, together with servers that set no locale and servers whose locale is not a real country code.
We can tell you when our crawler first observed a server. We cannot tell you when that server launched — those are different facts, and we never present the first as if it were the second. Nothing on this page describes server age, lifespan or churn.
Concurrent players come from the server's own response to the Cfx directory. A server that misreports its population to look busier will misreport it to us too. This is the same number the in-game FiveM server browser shows you, which is exactly why it is the number worth tracking — but it is a report, not an audit.
These are the FiveM statistics people ask for most often. We could generate plausible-looking figures for all three today. We do not, because our data cannot support them yet — and a number that looks right but is not is worse than no number.
Until recently the crawler only stored a row for a server when it had at least one player on it, so a missing observation is ambiguous: it means either “offline” or “online and empty”. Distinguishing those two is the entire job of an uptime figure, so we cannot compute one honestly yet. We are now recording zero-player observations, which makes uptime computable in the future — not retroactively.
The permanent daily rollup is days old, not months. There is no previous month to compare against, so there is no growth rate to report. Every trend line you see here is labelled with the exact window it covers, and none of them is extrapolated past it.
This needs both a reliable signal for a server dying (see uptime) and 90 days of it. We have neither. When we do, it will appear here with the window stated.
The sync, ranking and moderation rules behind every figure are documented on the methodology page.
Free to use, with attribution and a link back. No permission needed.
Suggested citation
ViceHub (2026). FiveM framework market share — ESX, QBCore, Qbox and vRP. Retrieved from https://vicehub.info/stats/frameworks
Every figure here is recomputed from the database on each load, so the page is always current and always checkable. If a number looks wrong, it is wrong in our data — tell us. The ranking, moderation and sync rules behind it are documented in full on the methodology page.
See when those players are actually online — the network moves by a factor of two across the day and every region peaks at a different hour. Or read the full state of the network, or go and browse scripts for your framework.
By number of servers, ESX. By number of players actually on those servers the picture changes considerably, because the average population per server differs by an order of magnitude between frameworks. Both cuts are on this page, because publishing only the first one is how the scene ended up with a folk answer that the data does not support.
No. ESX leads on both server count and player count in the live directory. QBCore is the second-most-declared framework by servers, but its share of the actual player population is markedly smaller than its share of servers.
vRP is an older framework that the English-speaking FiveM scene rarely discusses, and it is overwhelmingly used in Brazil. It has a small fraction of the servers — and a share of the total player population several times larger than that. The numbers on this page show the gap.
We do not — nobody does, from the outside. We read the tags the server operator sets in their own configuration. This measures declarations, not installations, and the page is explicit about that. Servers that declare nothing are shown as their own bucket, not redistributed.