What the limit is
FiveM streams game assets (.yft, .ytd, .ydr, .ydd, .ybn and friends) from the stream/ folder of each resource into the client's RPF cache. Any single file larger than 16 MiB (16,777,216 bytes) is rejected by the streamer. There is no server setting that lifts it; it is a property of how the game engine allocates streaming memory.
The client does not crash. It silently skips the file, which is why the symptom is confusing: an invisible car, a black texture, a missing map prop, and nothing obvious in the console unless you know to look for exceeds.
Note
The limit applies per file, not per resource. A resource with fifty 10 MB files streams fine (although it will strain the texture budget, see below).
What breaks when a file is dropped
Finding the files
Run the resource through the Resource Inspector. It lists every asset over 16 MB as an error and everything over 8 MB as a warning, plus a ranked largest-files table so you can see what is worth optimizing first. On a server you already run, sort your resources folder by size and check any .ytd above 15 MB by eye.
Getting textures under the limit
Texture dictionaries are big for three reasons: resolution, format, and duplicates. Attack them in that order.
1. Resolution
A 4096 px texture is 4x the memory of 2048 px and 16x that of 1024 px. At normal driving distance 2048 px on the body and 1024 px on interior parts is indistinguishable from 4K. Downscale:
Glory Optimizer does this for a whole folder of .ytd files in one pass and reports the before-and-after sizes.
2. Format
Uncompressed (A8R8G8B8) textures are the silent killer. A single 2048 px uncompressed texture is 16 MB on its own. Convert to DXT1 for textures without transparency and DXT5 where alpha is needed. This alone cuts size by 4x to 6x.
3. Duplicates
Many mods pack the same wheel, brake or interior texture into every dictionary. Keep one copy in the main .ytd and remove the rest.
Getting models under the limit
Models over 16 MB are rarer and harder. Options, from easiest to hardest:
The other limit people confuse with this one
The 16 MB limit is per file. Separately, every client has a total texture budget. You can be under 16 MB on every file and still lose textures if the server streams too many cars at once. The fixes are the same, just applied server-wide: optimize everything over 8 MB, not only files over 16 MB. The missing textures guide covers that case.
Quick reference
Hard limit per streamed file: 16 MiB (16,777,216 bytes)
Recommended per .ytd: < 8 MB
Recommended per car (all files): < 15 MB
Body / livery textures: 2048 px, DXT1 or DXT5
Interior textures: 1024 px, DXT1
Detail textures: 512 pxCheck any resource in seconds with the Resource Inspector; the paid report includes the full size breakdown and a corrected fxmanifest.