Var FiveM
ScriptsBundlesSubscriptionsDocs
VAR
Var FiveM
ScriptsBundlesSubscriptionsDocs
Theme CustomizerAboutContact
Shop Now
GUIDE

~/guides/fivem-clothing-list

FiveM Clothing List

-- reference · updated august 2026 · var fivem team
-- 12 component ids 0-11 · 5 prop id slots · drawable + texture + palette

This FiveM clothing list is the complete reference for dressing a ped in code: the 12 SetPedComponentVariation component IDs (0 to 11) that cover face, mask, hair, torso, legs, shoes and tops, the prop IDs for hats, glasses, watches and bracelets, and how drawable, texture and palette IDs pick the exact item and colour. Every value here comes from the official FiveM natives, with copy-paste Lua and a method for reading the drawables on any ped model.

-- index

  1. 01How ped clothing works
  2. 02Component IDs 0-11
  3. 03Prop IDs
  4. 04Drawable, texture, palette
  5. 05Lua snippets
  6. 06Finding drawables
  7. 07Related scripts
  8. 08FAQ

How ped clothing works in FiveM

A ped in FiveM wears two kinds of items. Components are clothing baked into the model, the torso, legs, shoes, mask and hair, set client-side with SetPedComponentVariation(ped, componentId, drawableId, textureId, paletteId). Props are attached accessories, hats, glasses, watches and bracelets, set with SetPedPropIndex(ped, componentId, drawableId, textureId, attach). The difference matters: a component slot is always present so you swap its drawable, while a prop can be attached or removed entirely. These are the two natives every FiveM clothing script, skin manager and character creator is built on top of.

The IDs come from the game, not from a framework, so the same FiveM clothing component IDs work on ESX, QBCore, Qbox and standalone. What changes between servers is the number of drawables available in each slot: that depends on the ped model and on any add-on or EUP clothing you stream. The freemode peds mp_m_freemode_01 and mp_f_freemode_01 carry the largest wardrobes, which is why almost every roleplay server spawns players as a freemode ped.

FiveM clothing component IDs (0 to 11)

There are 12 component slots. The table lists each ID, the engine's internal name (the value you will see in dumps and appearance exports), the slot it maps to on the freemode peds, and what it holds. Two rows are worth flagging because the internal name and the real usage disagree: component 7 is named TEEF internally but on freemode peds it is the neck accessory slot (scarves, chains, ties), and component 8 is named ACCS but is actually the undershirt worn under the top. Component 11 (JBIB) is the outer torso, the jacket or top most scripts think of as the shirt.

IDCodeSlotWhat it holds
0HEADFace / HeadHead shape. Usually 0 on freemode peds, varies on story peds
1BERDMask / BeardMasks and balaclavas on freemode, facial hair on story peds
2HAIRHairHairstyle. The texture id selects the hair colour swatch
3UPPRTorso / ArmsUpper body and arms, the base sleeve and glove layer
4LOWRLegsTrousers, pants, shorts and skirts
5HANDHands / BagsBackpacks and the parachute bag
6FEETShoesFootwear
7TEEFAccessories / NeckNeck items on freemode: scarves, chains, ties, lanyards
8ACCSUndershirtShirt worn under the top layer (component 11)
9TASKBody armorKevlar and vests
10DECLDecalsBadges, logos and printed shirt graphics
11JBIBTops / JacketOuter torso layer: jackets, coats and tops

FiveM prop IDs (SetPedPropIndex)

Props are the accessories that sit on top of the ped. SetPedPropIndex uses its own set of slot IDs, separate from the component IDs above, and only five are used on the MP freemode peds. Slots 3, 4 and 5 exist in the enum but are unused. To remove a prop, call ClearPedProp(ped, propId) or set the drawable to -1. The final attach argument should stay true so the prop is parented to the correct bone.

Prop IDSlot
0Hats / Helmets
1Glasses
2Ears / Earrings
6Watches
7Bracelets

Drawable, texture and palette IDs

The component or prop ID is only the first number. Inside one slot, the drawableId chooses which item you wear, and the textureId chooses that item's colour or material variant. A jacket slot might hold 30 drawables, and each drawable might have 4 textures, one per colourway. The paletteId is a further tint palette from 0 to 3 and is almost always 0. In short: component sets the slot, drawable sets the item, texture sets the colour.

Because those counts change per ped model, you never hardcode a maximum. You read it at runtime with the helper natives below, which is exactly what clothing menus do to build their catalog. These are all documented FiveM natives, listed by name.

NativeWhat it does
GetNumberOfPedDrawableVariationsHow many drawables a component slot has on this ped model
GetNumberOfPedTextureVariationsHow many textures a given drawable has
GetNumberOfPedPropDrawableVariationsHow many prop drawables a prop slot has
GetNumberOfPedPropTextureVariationsHow many textures a given prop drawable has
GetPedDrawableVariationThe drawable currently set on a component slot
GetPedTextureVariationThe texture currently set on a component slot
GetPedPropIndexThe drawable currently set on a prop slot (-1 means none)
ClearPedPropRemove a single prop from a prop slot
SetPedRandomComponentVariationRandomise every component on the ped
SetPedDefaultComponentVariationReset the ped to its model default outfit

Lua snippets: set an outfit and props

Dressing a ped is one native call per component. The snippet below sets a top, undershirt, arms, pants and shoes on the player ped. The drawable IDs are examples, the valid range for each slot depends on the ped model, so treat them as placeholders you replace with values from your own wardrobe or menu.

-- client.lua | dress the player ped with components
-- SetPedComponentVariation(ped, componentId, drawableId, textureId, paletteId)
-- drawable ids below are examples: valid ranges depend on the ped model
CreateThread(function()
    local ped = PlayerPedId()

    SetPedComponentVariation(ped, 11, 15, 0, 0) -- 11 JBIB  | top / jacket
    SetPedComponentVariation(ped, 8,  15, 0, 0) -- 8  ACCS  | undershirt
    SetPedComponentVariation(ped, 3,  4,  0, 0) -- 3  UPPR | arms / torso
    SetPedComponentVariation(ped, 4,  10, 0, 0) -- 4  LOWR | pants
    SetPedComponentVariation(ped, 6,  12, 0, 0) -- 6  FEET  | shoes
end)

Props take the extra attach boolean and are removed individually. This is how you put on a hat, glasses and a watch, then take the hat back off.

-- client.lua | props are attached accessories, not baked components
local ped = PlayerPedId()

-- SetPedPropIndex(ped, propId, drawableId, textureId, attach)
SetPedPropIndex(ped, 0, 5, 0, true) -- 0 hat
SetPedPropIndex(ped, 1, 3, 0, true) -- 1 glasses
SetPedPropIndex(ped, 6, 2, 0, true) -- 6 watch

ClearPedProp(ped, 0)                 -- remove the hat
-- equivalent: SetPedPropIndex(ped, 0, -1, -1, true)

To know how many items a slot actually has on the current ped, enumerate them at runtime. This loop prints every top drawable and its texture count, the same technique a clothing shop uses to populate its grid. If you would rather not build that menu yourself, a FiveM clothing shop script already turns these natives into a browsable catalog.

-- client.lua | count the tops (component 11) on the current ped model
local ped = PlayerPedId()
local component = 11 -- JBIB / tops

local drawables = GetNumberOfPedDrawableVariations(ped, component)
print(('component %d has %d drawables'):format(component, drawables))

for d = 0, drawables - 1 do
    local textures = GetNumberOfPedTextureVariations(ped, component, d)
    print(('  drawable %d -> %d textures'):format(d, textures))
end

Finding drawables on any ped model

This page lists every component and prop slot ID, because those are fixed by the game. The drawables and textures inside each slot are not fixed: they vary per ped model and grow every time you stream add-on clothing or EUP packs. So the reliable way to find what is available is to query it, not to memorise a list. Spawn the ped you care about, then loop GetNumberOfPedDrawableVariations across components 0 to 11 and the prop slots, exactly as the enumerate snippet above does, and you have the real, current range for that model on your server.

One caveat for DLC and add-on clothing: the classic global drawable indexes shift with each GTA title update, which can break saved outfits. FiveM added collection-based natives, SetPedCollectionComponentVariation and SetPedCollectionPropIndex, that address a component by a collection name plus a local index (an empty string for the base game, a named collection for DLC), so the indexes stay stable across updates. If your server relies heavily on add-on outfits, storing the collection name alongside the drawable is the durable approach.

Scripts that use these clothing IDs

If you would rather configure clothing than write the natives by hand, Var FiveM appearance scripts wrap the exact component and prop IDs on this page into ready menus. Var-ClotheShop V2 is a NUI clothing shop with 15 configurable clothing and prop categories, tops, pants, shoes, masks, glasses, helmets, chains, bags, watches, bracelets, vests and more, an image-based catalog and save, rename and delete outfits per player. Var-Creator is a FiveM character creator that sets face, hair, beard, makeup, clothing and props with a cinematic camera, and Var-BarberShop handles the hair and beard components (2 and 1) with a live in-chair preview. All of them auto-detect the skin manager, esx_skin, qb-clothing, fivem-appearance or illenium-appearance, so they drop into an ESX or QBCore server without touching these natives yourself.

Frequently asked questions

How many clothing components are there in FiveM?

There are 12 ped component slots, with IDs 0 to 11, set through SetPedComponentVariation: head, mask/beard, hair, torso/arms, legs, hands/bags, shoes, neck accessories, undershirt, body armor, decals and tops/jacket. On top of those, SetPedPropIndex controls attached props in five slots: hats (0), glasses (1), ears (2), watches (6) and bracelets (7).

What is the difference between a component and a prop in FiveM?

A component is clothing baked into the ped model (tops, pants, shoes, masks) and set with SetPedComponentVariation. A prop is an attached accessory (hat, glasses, watch, bracelet) set with SetPedPropIndex, which takes an extra attach boolean. Props can be cleared individually with ClearPedProp, or by passing a drawable id of -1. Components are always present, so you change their drawable rather than removing them.

What is the component ID for a torso, pants or shoes in FiveM?

The top or jacket is component 11 (internal name JBIB), the torso and arms base is component 3 (UPPR), pants are component 4 (LOWR) and shoes are component 6 (FEET). A mask is component 1, hair is component 2 and the undershirt is component 8. Pass the ID to SetPedComponentVariation(ped, componentId, drawableId, textureId, paletteId).

What is the difference between drawableId and textureId?

Within one component slot, the drawableId picks which item you wear (a specific jacket, for example) and the textureId picks that item's colour or material variant. The paletteId is a further tint palette from 0 to 3, and is usually 0. So component sets the slot, drawable sets the item, texture sets the colour.

How do I find how many clothes a ped model has in FiveM?

Call GetNumberOfPedDrawableVariations(ped, componentId) for the number of items in a slot, then GetNumberOfPedTextureVariations(ped, componentId, drawableId) for the colours of a given item. Counts differ per ped model: the freemode peds mp_m_freemode_01 and mp_f_freemode_01 carry the largest wardrobes, while most story and ambient peds have far fewer. Add-on and EUP clothing extends these ranges further.

Do FiveM clothing component IDs work on ESX and QBCore?

Yes. Component and prop IDs come from the game itself, not from a framework, so the same IDs work on ESX, QBCore, Qbox and standalone servers. Skin managers such as esx_skin, qb-clothing, fivem-appearance and illenium-appearance simply wrap these natives, which is why clothing shops built on top of them use the exact IDs listed on this page.

-- var-fivem.com

Skip the SetPedComponentVariation work

Var-ClotheShop V2 turns every component and prop slot into a browsable NUI catalog with per-store pricing and saved outfits. Escrow, Partially Open and Open Source variants, instant Tebex delivery.

View the clothing shop

Related: FiveM ped list · FiveM blips list · FiveM emote list

VAR
Var FiveM

Premium FiveM scripts. Low resmon, high quality. Built for ESX, QBCore & Standalone.

28scripts
1,500+sales

Scripts

  • Marketplace
  • Bundles
  • Subscriptions
  • Theme Customizer

Most Popular

  • Supermarket Simulator
  • FiveM Casino Script
  • FiveM Coin Shop
  • FiveM Emote Menu
  • FiveM Paintball Script
  • FiveM Clothing Shop Script
  • FiveM Interaction Script
  • FiveM Character Creator

Resources

  • Free Scripts
  • Guides
  • Documentation
  • Support

Company

  • About
  • Contact
  • Discord

Legal

  • Terms
  • Privacy
  • Refunds

© 2026 Var FiveM. All sales final.

Payments byTebex