Choosing a FiveM Framework
The framework decision is mostly a decision about which scripts you can buy and which developers you can hire. The technical differences matter less than people argue about online; the ecosystem differences decide your next two years.
Start from your scripts, not the framework
Before comparing APIs, open the Tebex stores and Cfx.re release threads for the scripts you already know you want — the phone, the inventory, the MDT, the dispatch system. Note which frameworks each one lists.
If eight of your ten must-have scripts are QBCore-only, the decision is made. Conversion is possible but it is real engineering work per script, and it removes your ability to take vendor updates.
Four questions that actually narrow it down
1. Are you starting fresh or inheriting a server?
Inheriting means you are already on a framework. Read Framework Migration before you consider changing it — migration cost scales with how much custom code the previous team wrote, not with how different the two frameworks are.
2. Does your team write Lua, or TypeScript?
QBCore, ESX and ND Core are Lua-first. Qbox is Lua with strong ox_lib typing.
ox_core ships an npm package and full TypeScript definitions, and expects a build
step (bun). Picking ox_core without a developer who wants that toolchain is a
common and expensive mistake.
3. How much do you want to build yourself?
QBCore and ESX are servers-in-a-box: install the recipe and you have jobs, shops, garages and a HUD. ox_core is a foundation with no gameplay. Qbox sits between the two. The more you plan to write yourself, the further down that list you should look.
4. How large is your server?
All five run fine at typical populations. At high player counts the ox stack
(ox_inventory, ox_target, statebag-based sync) has the strongest performance
reputation, which is an argument for Qbox or ox_core. Measure with
resmon rather than trusting anyone’s claim, including this
page’s.
The ox stack is the real common denominator
Qbox, ox_core and ND Core all build on
ox_lib, ox_inventory and oxmysql. QBCore and ESX both
use oxmysql too, and a large share of their community resources depend on
ox_lib and ox_target.
The practical consequence: learning the ox stack is transferable across four of the five frameworks. Learning one framework’s bespoke inventory API is not.
Decision checklist
Next steps
- Frameworks overview — the comparison tables
- Finding resources — where to buy scripts safely
- Framework migration — if you picked wrong the first time