Skip to Content
FrameworksFramework Comparison
Report an error
Open in ChatGPTOpen in Claude

FiveM Framework Comparison

Choose a FiveM framework around your required scripts, your developers and the server you actually want to run. QBCore  and ESX Legacy  are candidates for resource-led roleplay servers; Qbox adds its own features and a documented QBCore compatibility bridge. ox_core, ND Core and vRP offer different development models. A standalone server is also an option when you do not need a shared roleplay economy.

This guide compares those six frameworks and the standalone approach, not every private fork or server pack. A framework supplies shared gameplay services and APIs; it is not FXServer itself or the txAdmin management panel. See Cfx.re’s framework introduction  for the platform-level distinction.

Research reviewed: September 22, 2026. Technical descriptions below link to project documentation, source repositories and installation guides. The recommendations are editorial judgments, not benchmark results. No market-share percentages, guaranteed player counts or unsourced speed rankings are used.

Framework comparison at a glance

The technical details behind this summary are linked in the following sections. “Good fit” means a useful starting point for evaluation, not a universal winner.

OptionCore and development modelGood fitMain tradeoff to check
QBCore qb-core; Lua core with separate QB resourcesA server whose required resources explicitly support QBCoreA QB label does not identify the inventory, phone or resource version a script expects
ESX Legacyes_extended; Lua core and ESX addonsAn existing ESX server or a new project built around ESX-compatible resourcesOlder ESX scripts and third-party inventory integrations need version-specific checks
Qbox / QBXqbx_core; Lua, export-based API and a QB bridgeA QB-oriented server that wants Qbox’s integrated character, job and queue featuresThe bridge has limits; inventory and database migration are separate work
ox_coreox_core; Lua integration and a JavaScript/TypeScript packageA developer-led server assembling its own gameplay systemsPlan the gameplay integrations and, when building from source, the build toolchain
ND CoreND_Core; Lua API, ND addons and optional compatibility adaptersA server that prefers ND’s character, vehicle and group modelValidate the exact QB/ESX adapter coverage and addon dependencies
vRP 2vrp; Lua with an object-oriented extension modelA team maintaining vRP or deliberately building vRP 2 extensionsvRP versions and community forks are not interchangeable
StandaloneFXServer resources without a shared RP coreRacing, freeroam, minigames or a custom game modeShared characters, money, jobs and persistence must be added where needed

Project facts

Framework websites and GitHub repositories

FrameworkWebsite and documentationCore repositoryFiveM Docs guide
QBCore qbcore.net — community guides qbcore-fivem/qb-core QBCore overview
ESX LegacyESX website  · Documentationesx-framework/esx_core ESX overview
QboxQbox website  · Documentation Qbox-project/qbx_core Qbox overview
ox_coreOverextended website  · ox_core documentation overextended/ox_core ox_core overview
ND CoreND website and documentation ND-Framework/ND_Core ND Core overview
vRPvRP website and documentation vRP-framework/vRP vRP and legacy frameworks

The QBCore website link intentionally points to qbcore.net, an independent community documentation site, not the upstream maintainer. The separate GitHub link points to the framework source. Older qbcore-framework/qb-core links currently redirect to qbcore-fivem/qb-core; use the resolved repository when checking source or reporting a core bug.

How to check maintenance

Follow each repository’s releases, commits and issue discussions before choosing a version. Record the release tag or commit you test, including dependencies and your deployment recipe. An accessible repository, a recent push or a large star count alone is not evidence of production readiness.

In particular, distinguish ESX Legacy, the project documented in the current ESX installation guide, from an old ESX server pack. For vRP, check the major version and the fork owner. For ox resources, check the exact repository and its current documentation rather than assuming every project with an ox_ prefix has the same maintainer or support status.

Stack facts

A core dependency, an optional integration and a recipe’s installed resource are different things. Do not treat an inventory mentioned here as a promise that every inventory script is compatible.

FrameworkPersistence and toolingInventory relationshipInstallation source
QBCore The upstream recipe installs oxmysql and imports its SQL schemaqb-inventory is a separate QB resource; inspect the recipe and any replacement’s adapterQBCore txAdmin recipe 
ESX LegacyThe installation guide uses MariaDBMatch the installed ESX release, inventory resource and addon APIsESX installation
Qboxoxmysql, ox_lib; documented minimum MariaDB 10.9.0ox_inventory is listed as a core dependencyQbox installation  · Core dependencies 
ox_coreoxmysql, ox_lib; documented MariaDB 11.4+; release download or source buildox_inventory is recommended but optional in the core installation docsox_core installation and integration 
ND Coreoxmysql, ox_lib; MariaDB in the setup guideox_inventory and ox_target are optional dependenciesND setup 
vRP 2A separate database-driver resource and configuration in cfg/base.luaIncludes an inventory system and an extension modelvRP deployment  · Core features 

Database minimums are requirements reported by those projects, not recommendations to install an old database release. Follow the current installation guide for the version you deploy. A recipe gets resources installed; it does not test your custom economy, access controls or restore procedure for you.

Who each one is for

QBCore

Start by evaluating QBCore when your must-have jobs, phone, inventory and other resources target the QB ecosystem. Its upstream project separates the core , inventory  and deployment recipe . That separation matters: installing qb-core alone is not the same as deploying a complete resource collection.

Strength: you can choose a set of QB resources around the same core API. Watch for: a resource may also depend on a particular inventory, banking implementation or modified core. Ask for those requirements before buying it.

For example, test an item purchase all the way through payment, inventory storage, reconnect and use of that item. A script starting without errors is a weaker test.

Continue with QBCore installation and QBCore community documentation .

ESX Legacy

Evaluate ESX when your existing server, developers or essential resources already use its APIs. The ESX resource guide distinguishes es_extended from addon systems such as jobs, societies, shops and garages. Our installation guide provides a txAdmin path; “Legacy” in the project name is not, by itself, a reason to treat that project as an obsolete server pack.

Strength: an ESX-focused resource collection can share the framework’s player, job and account model. Watch for: “supports ESX” is incomplete unless the vendor also specifies the version and integration requirements.

For an inherited ESX server, first compare the cost of updating its current resources with the cost of rewriting integrations and migrating persistent data. Changing frameworks should solve a specific problem, not just change the label.

Continue with ESX installation.

Qbox

Qbox originated as a QBCore fork but has its own export-based API. Its core README  lists built-in multicharacter, multiple jobs/gangs, queueing and persistent player vehicles, alongside dependencies on oxmysql, ox_lib and ox_inventory.

Strength: these integrated features and its QB compatibility layer make Qbox worth testing for a QB-oriented project. Watch for: compatibility is not a blanket migration guarantee.

The Qbox FAQ  says its bridge supports the documented ways of using QBCore. Direct database access, unsupported core-file imports and incorrect API usage are named exceptions. Test inventory, character selection, banking, garages and job management separately.

The conversion guide  also covers SQL changes, job/gang grades and inventory conversion. Keeping a script working through a bridge does not mean the server’s saved data needs no migration.

Continue with Qbox installation.

ox_core

Consider ox_core when your developers want to assemble gameplay around its persistence and framework services rather than assume a ready-made RP server. The source repository  describes player and vehicle management and links its recipe and JavaScript package.

Strength: the integration documentation  offers both a Lua import and a JavaScript package with TypeScript support. Watch for: installing a release and compiling the source are different workflows. The documented source build uses Git, Node.js and Bun; using ox_core does not require writing all your resources in TypeScript.

Check which character UI, jobs, phone and inventory integrations your intended installation supplies, and which your team must select or build. Do not assume that using ox_inventory on another framework makes that server an ox_core server.

Continue with ox_core installation.

ND Core

ND’s introduction  describes its character, vehicle, ped and death systems and links its own addon family. Its setup guide  exposes groups for jobs and gangs, and configurable compatibility modes for older ND, ESX and QB resources.

Strength: ND provides its own model and integration paths rather than simply requiring every resource to be written from scratch. Watch for: advertised compatibility is a starting point for testing, not proof that an arbitrary paid phone, inventory or heavily customized resource will work unchanged.

Build a staging installation with the specific addons and adapters you intend to use. Verify both gameplay and saved data after a restart. Avoid enabling an adapter you do not need just because it exists.

Continue with ND Core installation.

vRP 2 and community forks

The upstream vRP README  identifies its code as vRP 2, with an object-oriented design, extension system, groups, inventory and a database-driver interface. Its deployment documentation  explains the separate driver and configuration steps.

Strength: vRP is a reasonable evaluation target for developers maintaining a vRP codebase or choosing its extension model. Watch for: an addon made for an older vRP version or a community fork is not automatically an upstream vRP 2 addon. Keep the exact source repository with your resource inventory.

Before a new launch, confirm that your team can maintain the chosen branch and its extensions. Before a migration, identify the actual fork instead of planning from the name “vRP” alone.

Continue with legacy-framework guidance.

QBCore vs ESX vs Qbox: making the decision

For a concrete comparison, imagine your launch needs a phone, police job, inventory, garage and character selector. Record the exact versions you plan to install, not just framework badges on product pages.

Your situationSuggested first step
Essential resources are explicitly QBCore-compatibleTest QBCore; evaluate Qbox separately against its bridge limitations
Your current ESX server works and your developers know itAssess an ESX update before budgeting for a cross-framework rewrite
You need Qbox’s built-in character and job featuresTest a Qbox recipe plus every replacement that overlaps those features
Most gameplay will be custom-developedPrototype one complete player workflow in ox_core, ND or your preferred core
You operate a vRP forkAudit its version, driver and extensions before following upstream instructions
You need a race or freeroam mode without a persistent RP economyPrototype standalone resources before adding a full RP core

These are decision rules, not popularity rankings. Use the framework selection checklist to document your final choice.

Script compatibility is more than a framework name

Check the core API, inventory API, account and identifier model, database schema, and dependent resources independently. The Qbox exceptions and ND compatibility settings linked above illustrate why adapters must be evaluated at the resource level.

For example, this is only a dependency declaration in a QBCore resource:

-- fxmanifest.lua: dependency excerpt, not a complete resource manifest. dependency 'qb-core'

Replacing that name with es_extended does not convert player lookups, item operations or money handling to ESX. FiveM’s manifest documentation  defines dependency as a loading requirement, not an API translator. A documented compatibility bridge is a separate mechanism.

For a move between frameworks, back up first and test the full path from character creation to inventory use, purchases, vehicles and reconnects. Keep a rollback copy of both resources and database. Follow the framework migration guide rather than pointing a new core at production data and hoping the schemas match.

Performance: compare your server, not a slogan

This comparison does not establish a fastest framework or a player-capacity limit. To make your own comparison useful, hold hardware, server artifacts, resource versions and test workload constant. Record client-side costs and server-side costs separately.

On a staging server, use the server console during representative gameplay:

profiler record 500 profiler status

After the capture finishes, inspect it with profiler view. The Cfx.re profiler guide  explains how to locate expensive resource threads and code paths. Repeat the capture during joins, inventory operations and vehicle activity instead of relying on an idle measurement. See also resmon.

Frequently asked questions

Which FiveM framework is best for beginners?

Start with the framework your required resources support and for which you have a clear installation guide and someone able to troubleshoot it. QBCore, ESX and Qbox all have the recipe-based installation paths linked above. A recipe reduces setup work; it does not remove the need to test the installed resource collection.

Does Qbox run every QBCore script unchanged?

No blanket guarantee is justified. Qbox documents a bridge for supported QB API usage and explicit exceptions in its FAQ . A resource’s inventory or database assumptions still need review.

Is ox_core required to use ox_inventory or ox_lib?

No. Qbox lists those resources as dependencies, while ND documents ox_lib as required and ox_inventory as optional. Shared libraries and inventory integrations do not determine which core framework a server runs.

Can I run ESX and QBCore together?

For an ordinary RP server, choose one authoritative core rather than starting two competing economy and character systems. Evaluate documented adapters when a resource expects another API. Treat a genuine dual-core design as a custom engineering project, not a normal installation option.

Does this comparison include vMenu, RedM or private server packs?

No. The scope is shared FiveM RP cores plus a standalone alternative. Admin menus, RedM frameworks and private resource bundles are different categories. A bundle’s name alone does not tell you which underlying core or versions it contains.

Sources and next steps

Research sources are linked beside the claims: the framework repositories and websites in Project facts, the installation guides in Stack facts, and the Qbox compatibility, ND configuration, vRP version and Cfx.re platform documentation in the relevant sections. Recheck those sources when you change a framework or dependency version.