FiveM Props Not Showing: 9 Checks That Find the Cause
When a FiveM prop does not show, the model is almost never the problem. In the maps and props we inspected and repaired in 2026, the cause was nearly always around it: a .ytyp that is missing or not loaded, an archetype name that does not match the .ydr, two files with the same name, a prop that comes from a DLC the server does not run, or textures too heavy to stream. Work through the checks below in order; each one takes a minute.
- Prop invisible or will not spawn: its
.ytypmust be in the resource and loaded withdata_file 'DLC_ITYP_REQUEST', and its archetype name must equal the.ydrname. - Prop shows without textures: the archetype’s texture dictionary must match the
.ytdname, and no texture may exceed 16 MiB. - Prop disappears at a distance: raise its draw distance (
lodDist) in the archetype or the map placement. - Only you see it: it was spawned as a local object; place it in a
.ymapor create it as a networked object. - After any change: restart the resource, close FiveM completely and reconnect.
Symptom, cause and fix
| Symptom | Most likely cause | Fix |
|---|---|---|
| Nothing at all, no error | Resource not started, or files outside stream/ | Check 1 |
| Script spawn fails, model “not found” | No archetype: .ytyp missing or not loaded | Check 2 |
| Archetype loaded, still invisible | Archetype name and .ydr name differ | Check 3 |
| Grey, white or untextured prop | Texture dictionary name wrong, or texture too heavy | Check 4 |
| Works alone, missing with the full server | Two files or archetypes with the same name | Check 5 |
| Map loads but some props are missing | The props come from a DLC or another resource you do not run | Check 6 |
| Pops in late or vanishes at a distance | lodDist too low, or wrong map extents | Check 7 |
| Only visible to the player who spawned it | Local (non-networked) object | Check 8 |
| Props and city textures vanish together | Texture memory full | Check 9 |
Check 1: the resource and the stream folder
Run ensure yourresource in the server console and read the output, then open F8 in game and look for errors that name the resource. Models, textures and .ytyp files must sit in a folder named stream (sub folders are fine). Files in stream are sent to players without a manifest line of their own; files anywhere else are not streamed.
Check 2: the YTYP is there and loaded
A .ydr on its own is only a model. The game spawns or places a prop through its archetype, defined in a .ytyp file, and the resource has to ask for that file:
fx_version 'cerulean'
game 'gta5'
data_file 'DLC_ITYP_REQUEST' 'stream/my_props.ytyp'
The path is the file name the game knows, so it must match the real .ytyp name exactly. In maps we merged, working .ytyp files sometimes had no internal name at all: FiveM loads them by the file named in this line and matches each archetype by its hash. A wrong file name here is enough to lose every prop in it.
Check 3: the archetype name matches the model
Each archetype in the .ytyp has a name, and the game looks for a model file with that same name. An archetype called my_bench needs my_bench.ydr (or a .ydd or .yft of that name). Renaming the file without editing the archetype, or the other way round, leaves an archetype that points at nothing. Open the .ytyp in CodeWalker to read the names.
To test a prop name from a script, ask the game whether it knows it:
RegisterCommand('propcheck', function(_, args)
local hash = GetHashKey(args[1])
print(args[1], 'known:', IsModelInCdimage(hash), 'valid:', IsModelValid(hash))
end, false)
known: false usually means the game never received the model or its archetype: go back to checks 1 and 2.
Check 4: textures
The archetype also names a texture dictionary. If that name does not match the .ytd you ship, the prop loads without its textures. On FiveM Legacy no single texture may exceed 16 MiB: a texture over the limit does not stream and the prop shows up bare or not at all. The YTD file guide shows how to compute a texture’s size before you open a tool, and the Map Optimizer compresses map and prop textures in one pass.
Check 5: two files with the same name
Streamed file names are shared by the whole server. If two resources ship props.ytyp or bench.ydr, only one of them is used and the other map loses its props. The same happens when two .ytyp files define an archetype with the same name. Our Map Fixer lists filename conflicts inside a map before it builds a clean resource, and our Map Merger keeps two maps that define the same archetype as separate resources instead of fusing them.
Check 6: props from somewhere else
Many maps place props they do not include: objects from the base game, from a DLC, or from another creator’s prop pack. The Map Fixer flags them as props that “won’t spawn unless they come from a DLC or add-on already installed elsewhere on your server”. For base game props, check that the DLC is in your game build: props from a pack newer than your sv_enforceGameBuild do not exist on your server. For another creator’s pack, install that pack too.
Check 7: draw distance and map extents
Each archetype has a lodDist, and each placement in a .ymap can have its own. Set too low, the prop vanishes a few metres away. A .ymap also stores the area its objects cover (its extents): after props are moved by hand, stale extents can make them load only from some places. Recalculate the extents in your map editor before you save.
Check 8: only one player sees it
A prop created by a client script as a local object exists only on that player’s game. That is how many prop menus work, our own Prop Creator menu included: its spawned props are client-local and are not saved. For a prop everyone sees, place it in a .ymap or create it as a networked object from a synced script.
Check 9: too much to stream
When props disappear together with roads and buildings, the problem is not the prop but texture memory: the server streams more than players’ graphics cards can hold. See the texture loss fix and MLO optimization.
How do I make a prop show up step by step?
- Start the resource. Run ensure in the server console, read the output and the F8 errors, and confirm the models, textures and YTYP are in the stream folder.
- Load the YTYP. Add a data_file DLC_ITYP_REQUEST line with the exact YTYP file name to fxmanifest.lua.
- Match the names. Each archetype name must equal its model file name, and its texture dictionary must equal the YTD name.
- Check textures and conflicts. No texture over 16 MiB, no second resource with the same file or archetype names, every outside prop installed or in your game build.
- Restart and test. Restart the resource, close FiveM completely, reconnect and look at the prop from close and from a distance.
Prop questions
Why is my FiveM prop invisible?
Most often its YTYP is missing or not loaded with data_file DLC_ITYP_REQUEST, or the archetype name in the YTYP does not match the YDR file name. Without an archetype the game has no prop to draw.
Do I need a YTYP file for a custom prop?
Yes, for an add-on prop. The YTYP defines the archetype (name, texture dictionary, draw distance) that scripts and maps use to spawn or place the model.
Why does my prop have no textures?
The texture dictionary named in the archetype does not match the YTD you ship, or a texture is over the 16 MiB limit of FiveM Legacy and does not stream.
Why do props from a map not show on my server?
The map may place props it does not include: from a DLC newer than your game build or from another creator’s prop pack. Install the pack or raise sv_enforceGameBuild, and check for file name conflicts with your other maps.
Why does a prop disappear when I walk away?
Its draw distance (lodDist) in the archetype or the map placement is too low, or the map’s extents were not recalculated after the props were moved.
Why can only I see the prop I spawned?
It was created as a local object by a client script. Place it in a YMAP or create it as a networked object so every player gets it.