
FiveM: How to Remove the Crosshair
Introduction to Want a cleaner, more realistic aim in GTA RP
Want a cleaner, more realistic aim in GTA RP? This guide shows players and server owners exactly how to remove (or strictly control) the crosshair in FiveM—whether it’s the default GTA reticle, a vMenu overlay, or a HUD/script crosshair.
TL;DR
- Players: Try ESC → Settings → Display → Reticule: Off. If your server uses vMenu, open it and disable the Crosshair toggle. If a custom HUD shows a crosshair, ask staff to disable it.
- Server Owners: The most reliable method is to hide HUD component 14 (reticle) every frame. See the copy‑paste resource below. You can also disable vMenu’s crosshair and turn off crosshair options in your HUD/UI resources.
Pro tip: Keep the scope for marksman/sniper rifles but disable all other crosshairs for a fair, competitive feel in RP and PvP.
For Players
1) Turn off the GTA reticle
If your server doesn’t force a crosshair overlay:
- Press ESC → Settings → Display.
- Set Reticule to Off.
2) Disable vMenu crosshair (if your server uses vMenu)
Open vMenu (key varies by server), then look for Weapon/Misc Settings → Crosshair and switch it Off. If you can’t find it, your server might have locked the option—ask an admin.
3) Check your mods/overlays
Some reshade presets, recording tools, or 3rd‑party overlay apps can draw a dot on your screen. Disable those overlays if the crosshair persists.
For Server Owners & Devs
Below are robust, production‑ready approaches that
Below are robust, production‑ready approaches that don’t rely on client cooperation.
Option A — Global removal (recommended)
Create a small standalone resource that hides the reticle every frame. This blocks GTA’s default dot even when aiming.
fxmanifest.lua
fx_version 'cerulean'
game 'gta5'
lua54 'yes'
author 'vertexmods.com'
description 'Hide the default GTA reticle (crosshair)'
version '1.0.0'
client_scripts {
'client/*.lua'
}
client/hide_crosshair.lua
-- Hide the standard crosshair every frame
CreateThread(function()
while true do
Wait(0)
-- 14 = RETICLE
HideHudComponentThisFrame(14)
end
end)
Drop the folder into your resources and ensure it in server.cfg:
ensure hide-crosshair
Option B — Keep scopes, remove everything else
If you want actual sniper/marksman scopes to remain visible, allow them and hide all other crosshairs:
client/hide_crosshair_scoped.lua
local scoped = {
[`WEAPON_SNIPERRIFLE`] = true,
[`WEAPON_HEAVYSNIPER`] = true,
[`WEAPON_HEAVYSNIPER_MK2`] = true,
[`WEAPON_MARKSMANRIFLE`] = true,
[`WEAPON_MARKSMANRIFLE_MK2`] = true,
}
CreateThread(function()
while true do
Wait(0)
local ped = PlayerPedId()
local weapon = GetSelectedPedWeapon(ped)
if not scoped[weapon] then
HideHudComponentThisFrame(14)
end
end
end)
Option C — Allow admins to toggle
Give staff a quick toggle for testing or special events.
local crosshairDisabled = true
RegisterCommand('togglecrosshair', function()
crosshairDisabled = not crosshairDisabled
if crosshairDisabled then
TriggerEvent('chat:addMessage', {args = {'^2Crosshair', 'disabled'}})
else
TriggerEvent('chat:addMessage', {args = {'^3Crosshair', 'enabled'}})
end
end, true) -- true = restrict to admins via ACE
CreateThread(function()
while true do
Wait(0)
if crosshairDisabled then
HideHudComponentThisFrame(14)
end
end
end)
Then lock the command in permissions.cfg with ACE:
Then lock the command in permissions.cfg with ACE:
add_ace group.admin command.togglecrosshair allow
add_ace group.moderator command.togglecrosshair allow
Option D — If you use vMenu
- UI toggle: Ask players to disable Crosshair in vMenu themselves.
- Enforce via script: Even if vMenu is present, still run Option A to force removal server‑wide.
- Permissions: If your vMenu build exposes per‑feature permissions for crosshair, deny that permission to non‑staff (implementation differs by build; enforcing Option A is simpler and universal).
Option E — If a HUD/UI resource draws a crosshair
Some HUDs (health/armor minimals, PvP UIs) render their own crosshair element.
- Check the resource’s config.lua (or JSON) for
crosshair = true/falseflags. - If it’s HTML/CSS based, search the
html/folder forcrosshairand remove/disable the element or set:.crosshair { display: none !important; } - If the resource updates the reticle via JavaScript (drawn on canvas), comment out the render call.
Troubleshooting
- Crosshair still appears only on certain weapons: You likely have a HUD overlay or weapon‑specific UI. Search your resources for “crosshair”, “reticle”, or “dot”.
- Scoped overlay disappeared too: Use Option B so scoped rifles keep their scope.
- Performance concerns: The hide call is 0.00–0.01ms at idle on modern servers. If you’re worried, profile it with Resmon. See our guide: How To Use Resmon In FiveM.
FAQ
Does this break aim‑assist or first‑person aim? No
Does this break aim‑assist or first‑person aim?
No. You’re only hiding the on‑screen reticle. Player input/aim mechanics stay the same.
Will this work on ESX, QBCore, or standalone?
Yes—this is framework‑agnostic.
Can I enforce this only for PvP arenas?
Yes. Wrap the HideHudComponentThisFrame(14) call with zone checks or job checks. Example: only hide inside your arena dimension, or only for certain jobs/teams.
Copy‑Paste: Minimal Resource Structure
resources/
└─ hide-crosshair/
├─ fxmanifest.lua
└─ client/
└─ hide_crosshair.lua
Ensure it in server.cfg and restart the server.
Related Guides (Internal Links)
- vMenu (overview & latest download)
- FiveM HUDs & UI
- How to Show FPS in FiveM (+ Performance Boost)
- Best FiveM Settings
- How to Clear FiveM Cache
Suggested SEO Snippets
- Title tag: How to Remove the Crosshair in FiveM (Players & Server Owners)
- Meta description: Remove the GTA V/FiveM crosshair the right way. Player steps, vMenu settings, and a copy‑paste resource for server owners—keep sniper scopes, ditch the dot.
Need this tailored to your framework (ESX/QBCore) or your HUD? Tell us which resource you use and we’ll add the exact steps.
Stay in the Loop
Get the latest FiveM tutorials, mod releases, and exclusive updates delivered to your inbox.
No spam. Unsubscribe anytime.