How to Add Custom Tattoos to FiveM: Files, Placement and Install
A custom FiveM tattoo is a flat image that the game paints onto the skin of the freemode male or female ped. It travels as a .ytd texture plus a small collection file that says which body zone it goes on, where, how big and at what angle. You can build that by hand with an image editor and some trial and error in game, or place the design on the 3D body in your browser with the FiveMRides Tattoo Studio and download a ready add-on pack. Here is how tattoos work, both routes, and how to get them into your server’s tattoo shop.
- What it is: a ped decoration (overlay), not clothing. It is drawn on the skin, under any clothes.
- Files: a
.ytdper design, a collection XML loaded withdata_file 'PED_OVERLAY_FILE', and anfxmanifest.lua. Ashop_tattoo.metais optional. - Two presets per tattoo: one for
mp_m_freemode_01, one formp_f_freemode_01, each placed on its own body. - Install: copy the resource, add
ensurewith its name toserver.cfg, restart the server and reconnect, then add the tattoos to your tattoo shop’s list. - No tools? Make it in the FiveMRides Tattoo Studio: 2 credits per new design, male and female included.
What a FiveM tattoo is, file by file
GTA tattoos are not clothing items. They are decorations: images the game lays over the skin of a ped in one of six zones, and the freemode peds can wear many at once. A tattoo pack is a FiveM resource with these files:
| File | What it holds | Notes |
|---|---|---|
.ytd | The design texture. | One per design. It needs an alpha channel (transparency), for example DXT5, or the whole square shows on the skin. |
| Collection XML | Every tattoo preset: name, zone, position, size, rotation, texture, type. | Loaded with data_file 'PED_OVERLAY_FILE'. Its file name is the collection name scripts use. |
shop_tattoo.meta | Tattoo shop entries (price, zone, gender). | Optional, loaded with data_file 'TATTOO_SHOP_DLC_FILE'. |
| Text labels | The tattoo names a shop menu shows. | Registered from a small client script with AddTextEntry. Without them some shops show NULL. |
fxmanifest.lua | Tells FiveM what to stream and load. | Files in stream/ are streamed automatically; the data_file lines point at the XML and the meta. |
A script then puts a tattoo on a player with AddPedDecorationFromHashes(ped, collection, preset) and removes all of them with ClearPedDecorations(ped). Tattoo shops and appearance scripts do exactly that, using a list of collections and preset names.
Zones and placement numbers
Every preset belongs to one of six zones: ZONE_TORSO (chest, stomach and back), ZONE_HEAD (head and neck), ZONE_LEFT_ARM, ZONE_RIGHT_ARM, ZONE_LEFT_LEG and ZONE_RIGHT_LEG. Inside its zone, a tattoo is placed with three values:
- uvPos: where the centre of the image sits, as two numbers in the zone’s own map (around the body or the limb, and up and down).
- scale: how big the image is, as a fraction of the zone in each direction.
- rotation: the angle in degrees.
These are not centimetres, and one scale step is not the same size on the chest, an arm or a leg. That is why tattoos made by hand often come out stretched, too big or in the wrong spot, and why the male and female versions of one tattoo need different numbers. Placing tattoos by hand means editing the numbers, restarting, reconnecting and looking again.
Add-on tattoos or replacements
Many free tattoo mods were made for single player and replace one of Rockstar’s tattoos: you copy their texture over a base game one. On a FiveM server that means overwriting game files for every player and losing the tattoo it replaced.
An add-on pack brings its own collection with new preset names, so it adds tattoos without touching the base game ones, and several add-on packs can run side by side. Every pack the Tattoo Studio exports is an add-on, named fmr_ followed by your pack name.
Preparing the design
- Transparent background. Save the design as a PNG with transparency. A white or black background becomes a white or black patch on the skin.
- Leave a margin. Keep a little empty space around the design so its edges do not touch the border of the texture.
- Pick a sensible size. 1024 px suits most tattoos, 2048 px a full back, 256 or 512 px a small neck or wrist piece. Every texture is downloaded by each player who sees the tattoo.
- Think in real sizes. A forearm piece is around 8 to 15 cm, a chest piece 15 to 25 cm, a full back 25 cm or more. Thin lines that look fine at 4096 px can vanish at game distance.
- Use art you own or have permission to use.
Making a tattoo pack by hand
- Draw the design and export a transparent PNG.
- Convert it to a texture with alpha and pack it into a
.ytdwith a texture dictionary tool. - Write the collection XML: one preset per gender with zone, uvPos, scale, rotation, the texture name and the type (tattoo or badge).
- Write the
fxmanifest.luawith thedata_file 'PED_OVERLAY_FILE'line, and add text labels for the names. - Start it on a test server, apply the preset with a script, look at it, change the numbers, restart and reconnect, and repeat for the other gender.
- Add the collection and preset names to your tattoo shop’s list.
Steps 3 to 6 are where most of the time goes. The placement numbers are the hard part, and they are different for every zone and both bodies.
Making a tattoo pack in your browser with the Tattoo Studio
The FiveMRides Tattoo Studio does the placement on the real GTA freemode bodies in 3D and writes every file above for you. Sizes are typed in centimetres measured on the body, and the game numbers are worked out from them. Packs were checked in game in October 2026 on both bodies: what you place is where it lands.
- Add your designs. Sign in to the Tattoo Studio and upload your tattoo images (PNG with transparency, or JPG and WebP). If an image has a solid background, click Remove the background.
- Place each design on the body. Pick the male or female body, click the skin where the tattoo goes, then type its width or height in centimetres and set the rotation. Use Same spot on the other body to copy it to the second ped.
- Set up the pack. Name the resource, tick the lists for your tattoo shop or appearance script, and add the F6 tattoo menu if your server has no tattoo shop.
- Export and download. Click Export. The price shows before you confirm; credits are charged only when the ZIP is ready. Download the ZIP.
- Install on your server. Copy the resource folder into your server resources, add ensure followed by its name to server.cfg, restart the server and reconnect.
- Add the tattoos to your shop. Paste the file from configs/ into your tattoo shop or appearance script as the README explains, restart it, and look for the new tattoos in its menu.
One pack holds up to 50 designs. You pay 2 credits per new design; a design you already paid for is free in every later export, so moving or resizing it costs nothing.
Installing the tattoo pack on your server
- Copy the resource folder (for example
fmr_my_tattoos) into your server’sresourcesfolder. - Add
ensure fmr_my_tattoostoserver.cfg, with your resource’s real name. - If you added the in-game menu, copy
fmr_tattoo_menutoo and addensure fmr_tattoo_menu. - Restart the server and reconnect. Tattoo collections load when the game connects, so a live resource restart is not enough the first time.
Adding the tattoos to your tattoo shop or appearance menu
The pack streams the tattoos; your tattoo shop or appearance script decides who can pick them. Each one reads its own list, so new tattoos must be added to that list. The Tattoo Studio writes these lists in configs/:
| Script | File in the ZIP | Where it goes |
|---|---|---|
| illenium-appearance | illenium-appearance.lua | Paste at the end of shared/tattoos.lua. |
| qb-tattooshop (QBCore) | qb-tattooshop.json | Add the entries to the array in AllTattoos.json. |
| esx_tattooshop | esx_tattooshop.lua | Paste at the end of client/tattooList.lua (adds one category). |
| rcore_tattoos | rcoreAddonTattoos_<pack>.json | Put it in assets/tattooLists/ and add its name to Config.TattooLists. Layout not confirmed yet: test it first. |
| Menyoo | menyoo_PedDecalOverlays.xml | Copy the <Ped> blocks into menyooStuff/PedDecalOverlays.xml. |
| Your own scripts | standalone.lua, tattoos.json | A Lua helper to apply, list and clear tattoos, and a JSON list with every collection, preset name and hash. |
The lists follow each script’s published format; not all of them have been loaded in game with the real script yet, so try them on a test server. No tattoo shop at all? The optional F6 tattoo menu (also /fmrtattoo) lets players browse the pack and try tattoos on. It does not save them to the character between sessions.
If a tattoo does not show after all this, go through FiveM tattoos not showing: 8 fixes.
Questions about adding tattoos to FiveM
What files does a FiveM tattoo need?
A custom tattoo is a ped decoration. It needs a .ytd texture with the design, a collection XML (the overlays file) that lists each tattoo with its zone, position, size and rotation and is loaded with data_file 'PED_OVERLAY_FILE', and an fxmanifest.lua that streams the textures. A shop_tattoo.meta loaded with data_file 'TATTOO_SHOP_DLC_FILE' is optional and adds tattoo shop entries.
Can I add tattoos to FiveM without replacing GTA tattoos?
Yes. An add-on pack brings its own collection with new names, so it adds tattoos instead of overwriting Rockstar's. Many free tattoo mods are replacements made for single player that overwrite a base game tattoo; on a FiveM server an add-on collection is the cleaner route.
Are FiveM tattoos different for men and women?
Yes. Each tattoo has one preset for mp_m_freemode_01 and another for mp_f_freemode_01, each with its own name, position and size, because the two bodies have different shapes. A tattoo made only for men does not appear on women. The Tattoo Studio places every design on each body you choose and writes both presets.
What resolution should a FiveM tattoo image be?
1024 px on the long side suits most tattoos. Keep 2048 px for large back or chest pieces and use 256 or 512 px for small neck or wrist designs. Use a PNG with a transparent background and leave a little empty margin around the design: every texture is downloaded by each player who sees the tattoo.
Do I need Blender to make FiveM tattoos?
No. A tattoo is a flat image placed by numbers, not a 3D model. By hand you need an image editor, a tool to pack the image into a .ytd and patience to tune the position numbers in game. The FiveMRides Tattoo Studio places the image on the 3D body in your browser and writes those numbers and files for you.