# Choosing an inventory system for your FiveM server

> ox_inventory vs qb-inventory vs the default ESX inventory: how each handles weapons, metadata, hooks, migration effort and which to pick for a new server.

Source: https://fam-tools.com/guides/fivem-inventory-systems-compared · FAM Tools · published 2026-09-11 · updated 2026-09-11 · about 9 min

**Short answer.** ox_inventory (officially for ox_core, ESX, Qbox and ND_Core) treats weapons as items with metadata — serials, durability, attachments — and offers stashes, shops, crafting and hooks. qb-inventory is the default for QBCore and uses QBCore’s item and weapon tables. Default ESX keeps items in the database and weapons in a separate loadout. For a new server, Qbox or ESX with ox_inventory is the most feature-complete path; QBCore with qb-inventory has the largest script catalogue.

## Key points

- ox_inventory: weapons are items with metadata.
- Official ox_inventory frameworks: ox_core, ESX, Qbox, ND_Core.
- qb-inventory: QBCore’s default, uses shared items/weapons.
- Default ESX: weapons are a loadout, not items.
- Pick early — migrating inventories is expensive.

The inventory touches every script on a roleplay server: shops, jobs, crafting, police searches, weapons. Switching later is painful, so it is worth choosing deliberately. Here is how the common options compare, with a focus on how they treat weapons.

## At a glance

|  | ox_inventory | qb-inventory | Default ESX |
| --- | --- | --- | --- |
| Frameworks | ox_core, ESX, Qbox, ND_Core | QBCore | ESX |
| Weapons | Items with metadata | Items (`type = 'weapon'`) | Loadout |
| Serial numbers | Built in | Via metadata/scripts | Via scripts |
| Durability | Built in | Via scripts | No |
| Stashes, shops, crafting | Built in | Built in / companion resources | Separate resources |
| Hooks for rules | Yes | Limited | No |

## Weapons in each

- ox_inventory: weapons live in slots, carry ammo, attachments, serials and durability — see [serial numbers](https://fam-tools.com/guides/fivem-weapon-serial-numbers) and [durability](https://fam-tools.com/guides/fivem-weapon-durability).
- qb-inventory: weapons are unique items; details come from `shared/weapons.lua` — see [QBCore shared weapons](https://fam-tools.com/guides/qbcore-shared-weapons).
- Default ESX: weapons are a list on the player with ammo and components — see [ESX items and loadout](https://fam-tools.com/guides/esx-items-and-loadout).

## Which to choose

| Situation | Suggestion |
| --- | --- |
| New server, want the ox ecosystem | Qbox or ESX + ox_inventory |
| Existing QBCore server with many QB scripts | Stay on qb-inventory, or plan a Qbox migration |
| Old ESX server | Consider ox_inventory for weapon metadata and hooks |
| Heavy PvP/redzone | Whatever keeps weapon handling simple and fast |

Framework choice itself: [ESX vs QBCore vs Qbox](https://pityus.net/guides/esx-vs-qbcore-qbox).

## Migrating

Moving inventories means converting player data, rewriting shop/job/crafting integrations and re-testing every script that gives or removes items. Budget days, not hours, and do it on a copy of the database first.

## Questions

### What is the best inventory for FiveM?

For new servers, ox_inventory on Qbox or ESX is the most feature-complete; QBCore servers commonly use qb-inventory.

### Does ox_inventory work with QBCore?

Officially it supports ox_core, ESX, Qbox and ND_Core; QBCore servers use it through Qbox or community forks.

### Are weapons items in ESX?

Not in default ESX — weapons are a loadout. With ox_inventory they become items.

### Is switching inventories hard?

Yes. It touches player data and every script that handles items, so plan and test carefully.

## Related

- https://fam-tools.com/guides/ox-inventory-weapons-data
- https://fam-tools.com/guides/qbcore-shared-items
- https://fam-tools.com/guides/esx-items-and-loadout
- https://fam-tools.com/guides/fivem-weapon-serial-numbers
