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

~/guides/fivem-controls-list

FiveM Controls List

-- reference · updated august 2026 · var fivem team
-- 361 control ids · 0 to 360 range · 3 control groups

FiveM controls are the numeric input IDs you pass to natives like IsControlPressed, IsControlJustPressed and DisableControlAction to read a key or block a vanilla action. This page is the complete FiveM controls list: all 361 control IDs from 0 to 360, each with its INPUT_ name, default keyboard binding and Xbox controller mapping, the three control groups (0, 1, 2), plus copy-paste Lua snippets, all sourced from the official Cfx.re documentation.

-- index

  1. 01How controls work
  2. 02Common control IDs
  3. 03All control IDs
  4. 04Control groups
  5. 05Lua snippets
  6. 06Rebinding keys
  7. 07Related scripts
  8. 08FAQ

How FiveM controls work

A control in FiveM is a game input identified by a number. GTA V groups its inputs into a fixed enum, so pressing space is not read as the letter "space" but as INPUT_JUMP, control ID 22. You read these client-side with IsControlPressed(group, id) for a held key, IsControlJustPressed for a single tap and IsControlJustReleased for the release. Because the IDs come from the game itself, the same number works on ESX, QBCore, Qbox or standalone, and it keeps working even if the player has rebound the key, which is why scripts read control IDs instead of raw scan codes.

One physical key can back several controls. E, for example, is INPUT_PICKUP (38), INPUT_CONTEXT (51) and INPUT_TALK (46) at once, which is why two scripts both listening for E can clash. The default bindings in the tables below are what a fresh install ships with; players can change them in the pause menu, but the numeric ID never changes.

Most-used FiveM control IDs

These are the controls scripts reach for most often: the interact and movement keys, combat inputs and the core vehicle controls. If you just need a key for an interaction prompt, 38 (E, INPUT_PICKUP) and 51 (E, INPUT_CONTEXT) are the usual picks, and 47 (G, INPUT_DETONATE) is a common free-ish key for a secondary action.

IDControlKeyboardController
51INPUT_CONTEXTEDPAD RIGHT
38INPUT_PICKUPELB
23INPUT_ENTERFY
22INPUT_JUMPSPACEBARX
21INPUT_SPRINTLEFT SHIFTA
36INPUT_DUCKLEFT CTRLL3
45INPUT_RELOADRB
24INPUT_ATTACKLEFT MOUSE BUTTONRT
25INPUT_AIMRIGHT MOUSE BUTTONLT
44INPUT_COVERQRB
47INPUT_DETONATEGDPAD LEFT
74INPUT_VEH_HEADLIGHTHDPAD RIGHT
75INPUT_VEH_EXITFY
73INPUT_VEH_DUCKXA
76INPUT_VEH_HANDBRAKESPACEBARRB
71INPUT_VEH_ACCELERATEWRT
72INPUT_VEH_BRAKESLT
86INPUT_VEH_HORNEL3
19INPUT_CHARACTER_WHEELLEFT ALTDPAD DOWN
20INPUT_MULTIPLAYER_INFOZDPAD DOWN
246INPUT_MP_TEXT_CHAT_TEAMY-
249INPUT_PUSH_TO_TALKN-
199INPUT_FRONTEND_PAUSEPSTART
288INPUT_REPLAY_START_STOP_RECORDINGF1A

All FiveM control IDs (0 to 360)

The table below lists all 361 controls in the FiveM control enum, from ID 0 to 360, with the default keyboard and controller binding for each. On-foot controls sit in the low IDs (movement 21 to 36, combat 24 to 47), vehicle controls run from INPUT_VEH_MOVE_LR (59) through the flight, sub and hydraulics inputs, then cellphone (172 to 186), frontend/menu (187 to 217), script axes (218 to 235), cursor (237 to 242) and the replay editor (288 onward). A dash means the game ships no default binding for that control on that device.

IDControlKeyboardController
0INPUT_NEXT_CAMERAVBACK
1INPUT_LOOK_LRMOUSE RIGHTRIGHT STICK
2INPUT_LOOK_UDMOUSE DOWNRIGHT STICK
3INPUT_LOOK_UP_ONLY-RIGHT STICK
4INPUT_LOOK_DOWN_ONLYMOUSE DOWNRIGHT STICK
5INPUT_LOOK_LEFT_ONLY-RIGHT STICK
6INPUT_LOOK_RIGHT_ONLYMOUSE RIGHTRIGHT STICK
7INPUT_CINEMATIC_SLOWMO-R3
8INPUT_SCRIPTED_FLY_UDSLEFT STICK
9INPUT_SCRIPTED_FLY_LRDLEFT STICK
10INPUT_SCRIPTED_FLY_ZUPPAGEUPLT
11INPUT_SCRIPTED_FLY_ZDOWNPAGEDOWNRT
12INPUT_WEAPON_WHEEL_UDMOUSE DOWNRIGHT STICK
13INPUT_WEAPON_WHEEL_LRMOUSE RIGHTRIGHT STICK
14INPUT_WEAPON_WHEEL_NEXTSCROLLWHEEL DOWNDPAD RIGHT
15INPUT_WEAPON_WHEEL_PREVSCROLLWHEEL UPDPAD LEFT
16INPUT_SELECT_NEXT_WEAPONSCROLLWHEEL DOWN-
17INPUT_SELECT_PREV_WEAPONSCROLLWHEEL UP-
18INPUT_SKIP_CUTSCENEENTER / L-MOUSE / SPACEBARA
19INPUT_CHARACTER_WHEELLEFT ALTDPAD DOWN
20INPUT_MULTIPLAYER_INFOZDPAD DOWN
21INPUT_SPRINTLEFT SHIFTA
22INPUT_JUMPSPACEBARX
23INPUT_ENTERFY
24INPUT_ATTACKLEFT MOUSE BUTTONRT
25INPUT_AIMRIGHT MOUSE BUTTONLT
26INPUT_LOOK_BEHINDCR3
27INPUT_PHONEARROW UP / SCROLLWHEEL BUTTONDPAD UP
28INPUT_SPECIAL_ABILITY-L3
29INPUT_SPECIAL_ABILITY_SECONDARYBR3
30INPUT_MOVE_LRDLEFT STICK
31INPUT_MOVE_UDSLEFT STICK
32INPUT_MOVE_UP_ONLYWLEFT STICK
33INPUT_MOVE_DOWN_ONLYSLEFT STICK
34INPUT_MOVE_LEFT_ONLYALEFT STICK
35INPUT_MOVE_RIGHT_ONLYDLEFT STICK
36INPUT_DUCKLEFT CTRLL3
37INPUT_SELECT_WEAPONTABLB
38INPUT_PICKUPELB
39INPUT_SNIPER_ZOOM[LEFT STICK
40INPUT_SNIPER_ZOOM_IN_ONLY]LEFT STICK
41INPUT_SNIPER_ZOOM_OUT_ONLY[LEFT STICK
42INPUT_SNIPER_ZOOM_IN_SECONDARY]DPAD UP
43INPUT_SNIPER_ZOOM_OUT_SECONDARY[DPAD DOWN
44INPUT_COVERQRB
45INPUT_RELOADRB
46INPUT_TALKEDPAD RIGHT
47INPUT_DETONATEGDPAD LEFT
48INPUT_HUD_SPECIALZDPAD DOWN
49INPUT_ARRESTFY
50INPUT_ACCURATE_AIMSCROLLWHEEL DOWNR3
51INPUT_CONTEXTEDPAD RIGHT
52INPUT_CONTEXT_SECONDARYQDPAD LEFT
53INPUT_WEAPON_SPECIAL-Y
54INPUT_WEAPON_SPECIAL_TWOEDPAD RIGHT
55INPUT_DIVESPACEBARRB
56INPUT_DROP_WEAPONF9Y
57INPUT_DROP_AMMOF10B
58INPUT_THROW_GRENADEGDPAD LEFT
59INPUT_VEH_MOVE_LRDLEFT STICK
60INPUT_VEH_MOVE_UDLEFT CTRLLEFT STICK
61INPUT_VEH_MOVE_UP_ONLYLEFT SHIFTLEFT STICK
62INPUT_VEH_MOVE_DOWN_ONLYLEFT CTRLLEFT STICK
63INPUT_VEH_MOVE_LEFT_ONLYALEFT STICK
64INPUT_VEH_MOVE_RIGHT_ONLYDLEFT STICK
65INPUT_VEH_SPECIAL--
66INPUT_VEH_GUN_LRMOUSE RIGHTRIGHT STICK
67INPUT_VEH_GUN_UDMOUSE DOWNRIGHT STICK
68INPUT_VEH_AIMRIGHT MOUSE BUTTONLB
69INPUT_VEH_ATTACKLEFT MOUSE BUTTONRB
70INPUT_VEH_ATTACK2RIGHT MOUSE BUTTONA
71INPUT_VEH_ACCELERATEWRT
72INPUT_VEH_BRAKESLT
73INPUT_VEH_DUCKXA
74INPUT_VEH_HEADLIGHTHDPAD RIGHT
75INPUT_VEH_EXITFY
76INPUT_VEH_HANDBRAKESPACEBARRB
77INPUT_VEH_HOTWIRE_LEFTWLT
78INPUT_VEH_HOTWIRE_RIGHTSRT
79INPUT_VEH_LOOK_BEHINDCR3
80INPUT_VEH_CIN_CAMRB
81INPUT_VEH_NEXT_RADIO.-
82INPUT_VEH_PREV_RADIO,-
83INPUT_VEH_NEXT_RADIO_TRACK=-
84INPUT_VEH_PREV_RADIO_TRACK--
85INPUT_VEH_RADIO_WHEELQDPAD LEFT
86INPUT_VEH_HORNEL3
87INPUT_VEH_FLY_THROTTLE_UPWRT
88INPUT_VEH_FLY_THROTTLE_DOWNSLT
89INPUT_VEH_FLY_YAW_LEFTALB
90INPUT_VEH_FLY_YAW_RIGHTDRB
91INPUT_VEH_PASSENGER_AIMRIGHT MOUSE BUTTONLT
92INPUT_VEH_PASSENGER_ATTACKLEFT MOUSE BUTTONRT
93INPUT_VEH_SPECIAL_ABILITY_FRANKLIN-R3
94INPUT_VEH_STUNT_UD--
95INPUT_VEH_CINEMATIC_UDMOUSE DOWNRIGHT STICK
96INPUT_VEH_CINEMATIC_UP_ONLYNUMPAD- / SCROLLWHEEL UP-
97INPUT_VEH_CINEMATIC_DOWN_ONLYNUMPAD+ / SCROLLWHEEL DOWN-
98INPUT_VEH_CINEMATIC_LRMOUSE RIGHTRIGHT STICK
99INPUT_VEH_SELECT_NEXT_WEAPONSCROLLWHEEL UPX
100INPUT_VEH_SELECT_PREV_WEAPON[-
101INPUT_VEH_ROOFHDPAD RIGHT
102INPUT_VEH_JUMPSPACEBARRB
103INPUT_VEH_GRAPPLING_HOOKEDPAD RIGHT
104INPUT_VEH_SHUFFLEHDPAD RIGHT
105INPUT_VEH_DROP_PROJECTILEXA
106INPUT_VEH_MOUSE_CONTROL_OVERRIDELEFT MOUSE BUTTON-
107INPUT_VEH_FLY_ROLL_LRNUMPAD 6LEFT STICK
108INPUT_VEH_FLY_ROLL_LEFT_ONLYNUMPAD 4LEFT STICK
109INPUT_VEH_FLY_ROLL_RIGHT_ONLYNUMPAD 6LEFT STICK
110INPUT_VEH_FLY_PITCH_UDNUMPAD 5LEFT STICK
111INPUT_VEH_FLY_PITCH_UP_ONLYNUMPAD 8LEFT STICK
112INPUT_VEH_FLY_PITCH_DOWN_ONLYNUMPAD 5LEFT STICK
113INPUT_VEH_FLY_UNDERCARRIAGEGL3
114INPUT_VEH_FLY_ATTACKRIGHT MOUSE BUTTONA
115INPUT_VEH_FLY_SELECT_NEXT_WEAPONSCROLLWHEEL UPDPAD LEFT
116INPUT_VEH_FLY_SELECT_PREV_WEAPON[-
117INPUT_VEH_FLY_SELECT_TARGET_LEFTNUMPAD 7LB
118INPUT_VEH_FLY_SELECT_TARGET_RIGHTNUMPAD 9RB
119INPUT_VEH_FLY_VERTICAL_FLIGHT_MODEEDPAD RIGHT
120INPUT_VEH_FLY_DUCKXA
121INPUT_VEH_FLY_ATTACK_CAMERAINSERTR3
122INPUT_VEH_FLY_MOUSE_CONTROL_OVERRIDELEFT MOUSE BUTTON-
123INPUT_VEH_SUB_TURN_LRNUMPAD 6LEFT STICK
124INPUT_VEH_SUB_TURN_LEFT_ONLYNUMPAD 4LEFT STICK
125INPUT_VEH_SUB_TURN_RIGHT_ONLYNUMPAD 6LEFT STICK
126INPUT_VEH_SUB_PITCH_UDNUMPAD 5LEFT STICK
127INPUT_VEH_SUB_PITCH_UP_ONLYNUMPAD 8LEFT STICK
128INPUT_VEH_SUB_PITCH_DOWN_ONLYNUMPAD 5LEFT STICK
129INPUT_VEH_SUB_THROTTLE_UPWRT
130INPUT_VEH_SUB_THROTTLE_DOWNSLT
131INPUT_VEH_SUB_ASCENDLEFT SHIFTX
132INPUT_VEH_SUB_DESCENDLEFT CTRLA
133INPUT_VEH_SUB_TURN_HARD_LEFTALB
134INPUT_VEH_SUB_TURN_HARD_RIGHTDRB
135INPUT_VEH_SUB_MOUSE_CONTROL_OVERRIDELEFT MOUSE BUTTON-
136INPUT_VEH_PUSHBIKE_PEDALWA
137INPUT_VEH_PUSHBIKE_SPRINTCAPSLOCKA
138INPUT_VEH_PUSHBIKE_FRONT_BRAKEQLT
139INPUT_VEH_PUSHBIKE_REAR_BRAKESRT
140INPUT_MELEE_ATTACK_LIGHTRB
141INPUT_MELEE_ATTACK_HEAVYQA
142INPUT_MELEE_ATTACK_ALTERNATELEFT MOUSE BUTTONRT
143INPUT_MELEE_BLOCKSPACEBARX
144INPUT_PARACHUTE_DEPLOYF / L-MOUSEY
145INPUT_PARACHUTE_DETACHFY
146INPUT_PARACHUTE_TURN_LRDLEFT STICK
147INPUT_PARACHUTE_TURN_LEFT_ONLYALEFT STICK
148INPUT_PARACHUTE_TURN_RIGHT_ONLYDLEFT STICK
149INPUT_PARACHUTE_PITCH_UDSLEFT STICK
150INPUT_PARACHUTE_PITCH_UP_ONLYWLEFT STICK
151INPUT_PARACHUTE_PITCH_DOWN_ONLYSLEFT STICK
152INPUT_PARACHUTE_BRAKE_LEFTQLB
153INPUT_PARACHUTE_BRAKE_RIGHTERB
154INPUT_PARACHUTE_SMOKEXA
155INPUT_PARACHUTE_PRECISION_LANDINGLEFT SHIFT-
156INPUT_MAP--
157INPUT_SELECT_WEAPON_UNARMED1-
158INPUT_SELECT_WEAPON_MELEE2-
159INPUT_SELECT_WEAPON_HANDGUN6-
160INPUT_SELECT_WEAPON_SHOTGUN3-
161INPUT_SELECT_WEAPON_SMG7-
162INPUT_SELECT_WEAPON_AUTO_RIFLE8-
163INPUT_SELECT_WEAPON_SNIPER9-
164INPUT_SELECT_WEAPON_HEAVY4-
165INPUT_SELECT_WEAPON_SPECIAL5-
166INPUT_SELECT_CHARACTER_MICHAELF5-
167INPUT_SELECT_CHARACTER_FRANKLINF6-
168INPUT_SELECT_CHARACTER_TREVORF7-
169INPUT_SELECT_CHARACTER_MULTIPLAYERF8-
170INPUT_SAVE_REPLAY_CLIPF3B
171INPUT_SPECIAL_ABILITY_PCCAPSLOCK-
172INPUT_CELLPHONE_UPARROW UPDPAD UP
173INPUT_CELLPHONE_DOWNARROW DOWNDPAD DOWN
174INPUT_CELLPHONE_LEFTARROW LEFTDPAD LEFT
175INPUT_CELLPHONE_RIGHTARROW RIGHTDPAD RIGHT
176INPUT_CELLPHONE_SELECTENTER / L-MOUSEA
177INPUT_CELLPHONE_CANCELBACKSPACE / ESC / R-MOUSEB
178INPUT_CELLPHONE_OPTIONDELETEY
179INPUT_CELLPHONE_EXTRA_OPTIONSPACEBARX
180INPUT_CELLPHONE_SCROLL_FORWARDSCROLLWHEEL DOWN-
181INPUT_CELLPHONE_SCROLL_BACKWARDSCROLLWHEEL UP-
182INPUT_CELLPHONE_CAMERA_FOCUS_LOCKLRT
183INPUT_CELLPHONE_CAMERA_GRIDGRB
184INPUT_CELLPHONE_CAMERA_SELFIEER3
185INPUT_CELLPHONE_CAMERA_DOFFLB
186INPUT_CELLPHONE_CAMERA_EXPRESSIONXL3
187INPUT_FRONTEND_DOWNARROW DOWNDPAD DOWN
188INPUT_FRONTEND_UPARROW UPDPAD UP
189INPUT_FRONTEND_LEFTARROW LEFTDPAD LEFT
190INPUT_FRONTEND_RIGHTARROW RIGHTDPAD RIGHT
191INPUT_FRONTEND_RDOWNENTERA
192INPUT_FRONTEND_RUPTABY
193INPUT_FRONTEND_RLEFT-X
194INPUT_FRONTEND_RRIGHTBACKSPACEB
195INPUT_FRONTEND_AXIS_XDLEFT STICK
196INPUT_FRONTEND_AXIS_YSLEFT STICK
197INPUT_FRONTEND_RIGHT_AXIS_X]RIGHT STICK
198INPUT_FRONTEND_RIGHT_AXIS_YSCROLLWHEEL DOWNRIGHT STICK
199INPUT_FRONTEND_PAUSEPSTART
200INPUT_FRONTEND_PAUSE_ALTERNATEESC-
201INPUT_FRONTEND_ACCEPTENTER / NUMPAD ENTERA
202INPUT_FRONTEND_CANCELBACKSPACE / ESCB
203INPUT_FRONTEND_XSPACEBARX
204INPUT_FRONTEND_YTABY
205INPUT_FRONTEND_LBQLB
206INPUT_FRONTEND_RBERB
207INPUT_FRONTEND_LTPAGE DOWNLT
208INPUT_FRONTEND_RTPAGE UPRT
209INPUT_FRONTEND_LSLEFT SHIFTL3
210INPUT_FRONTEND_RSLEFT CONTROLR3
211INPUT_FRONTEND_LEADERBOARDTABRB
212INPUT_FRONTEND_SOCIAL_CLUBHOMEBACK
213INPUT_FRONTEND_SOCIAL_CLUB_SECONDARYHOMERB
214INPUT_FRONTEND_DELETEDELETEX
215INPUT_FRONTEND_ENDSCREEN_ACCEPTENTERA
216INPUT_FRONTEND_ENDSCREEN_EXPANDSPACEBARX
217INPUT_FRONTEND_SELECTCAPSLOCKBACK
218INPUT_SCRIPT_LEFT_AXIS_XDLEFT STICK
219INPUT_SCRIPT_LEFT_AXIS_YSLEFT STICK
220INPUT_SCRIPT_RIGHT_AXIS_XMOUSE RIGHTRIGHT STICK
221INPUT_SCRIPT_RIGHT_AXIS_YMOUSE DOWNRIGHT STICK
222INPUT_SCRIPT_RUPRIGHT MOUSE BUTTONY
223INPUT_SCRIPT_RDOWNLEFT MOUSE BUTTONA
224INPUT_SCRIPT_RLEFTLEFT CTRLX
225INPUT_SCRIPT_RRIGHTRIGHT MOUSE BUTTONB
226INPUT_SCRIPT_LB-LB
227INPUT_SCRIPT_RB-RB
228INPUT_SCRIPT_LT-LT
229INPUT_SCRIPT_RTLEFT MOUSE BUTTONRT
230INPUT_SCRIPT_LS-L3
231INPUT_SCRIPT_RS-R3
232INPUT_SCRIPT_PAD_UPWDPAD UP
233INPUT_SCRIPT_PAD_DOWNSDPAD DOWN
234INPUT_SCRIPT_PAD_LEFTADPAD LEFT
235INPUT_SCRIPT_PAD_RIGHTDDPAD RIGHT
236INPUT_SELECTVBACK
237INPUT_CURSOR_ACCEPTLEFT MOUSE BUTTON-
238INPUT_CURSOR_CANCELRIGHT MOUSE BUTTON-
239INPUT_CURSOR_X--
240INPUT_CURSOR_Y--
241INPUT_CURSOR_SCROLL_UPSCROLLWHEEL UP-
242INPUT_CURSOR_SCROLL_DOWNSCROLLWHEEL DOWN-
243INPUT_ENTER_CHEAT_CODE~ / `-
244INPUT_INTERACTION_MENUMBACK
245INPUT_MP_TEXT_CHAT_ALLT-
246INPUT_MP_TEXT_CHAT_TEAMY-
247INPUT_MP_TEXT_CHAT_FRIENDS--
248INPUT_MP_TEXT_CHAT_CREW--
249INPUT_PUSH_TO_TALKN-
250INPUT_CREATOR_LSRL3
251INPUT_CREATOR_RSFR3
252INPUT_CREATOR_LTXLT
253INPUT_CREATOR_RTCRT
254INPUT_CREATOR_MENU_TOGGLELEFT SHIFT-
255INPUT_CREATOR_ACCEPTSPACEBARA
256INPUT_CREATOR_DELETEDELETEX
257INPUT_ATTACK2LEFT MOUSE BUTTONRT
258INPUT_RAPPEL_JUMP-A
259INPUT_RAPPEL_LONG_JUMP-X
260INPUT_RAPPEL_SMASH_WINDOW-RT
261INPUT_PREV_WEAPONSCROLLWHEEL UPDPAD LEFT
262INPUT_NEXT_WEAPONSCROLLWHEEL DOWNDPAD RIGHT
263INPUT_MELEE_ATTACK1RB
264INPUT_MELEE_ATTACK2QA
265INPUT_WHISTLE--
266INPUT_MOVE_LEFTDLEFT STICK
267INPUT_MOVE_RIGHTDLEFT STICK
268INPUT_MOVE_UPSLEFT STICK
269INPUT_MOVE_DOWNSLEFT STICK
270INPUT_LOOK_LEFTMOUSE RIGHTRIGHT STICK
271INPUT_LOOK_RIGHTMOUSE RIGHTRIGHT STICK
272INPUT_LOOK_UPMOUSE DOWNRIGHT STICK
273INPUT_LOOK_DOWNMOUSE DOWNRIGHT STICK
274INPUT_SNIPER_ZOOM_IN[RIGHT STICK
275INPUT_SNIPER_ZOOM_OUT[RIGHT STICK
276INPUT_SNIPER_ZOOM_IN_ALTERNATE[LEFT STICK
277INPUT_SNIPER_ZOOM_OUT_ALTERNATE[LEFT STICK
278INPUT_VEH_MOVE_LEFTDLEFT STICK
279INPUT_VEH_MOVE_RIGHTDLEFT STICK
280INPUT_VEH_MOVE_UPLEFT CTRLLEFT STICK
281INPUT_VEH_MOVE_DOWNLEFT CTRLLEFT STICK
282INPUT_VEH_GUN_LEFTMOUSE RIGHTRIGHT STICK
283INPUT_VEH_GUN_RIGHTMOUSE RIGHTRIGHT STICK
284INPUT_VEH_GUN_UPMOUSE RIGHTRIGHT STICK
285INPUT_VEH_GUN_DOWNMOUSE RIGHTRIGHT STICK
286INPUT_VEH_LOOK_LEFTMOUSE RIGHTRIGHT STICK
287INPUT_VEH_LOOK_RIGHTMOUSE RIGHTRIGHT STICK
288INPUT_REPLAY_START_STOP_RECORDINGF1A
289INPUT_REPLAY_START_STOP_RECORDING_SECONDARYF2X
290INPUT_SCALED_LOOK_LRMOUSE RIGHTRIGHT STICK
291INPUT_SCALED_LOOK_UDMOUSE DOWNRIGHT STICK
292INPUT_SCALED_LOOK_UP_ONLY-RIGHT STICK
293INPUT_SCALED_LOOK_DOWN_ONLY-RIGHT STICK
294INPUT_SCALED_LOOK_LEFT_ONLY-RIGHT STICK
295INPUT_SCALED_LOOK_RIGHT_ONLY-RIGHT STICK
296INPUT_REPLAY_MARKER_DELETEDELETEX
297INPUT_REPLAY_CLIP_DELETEDELETEY
298INPUT_REPLAY_PAUSESPACEBARA
299INPUT_REPLAY_REWINDARROW DOWNLB
300INPUT_REPLAY_FFWDARROW UPRB
301INPUT_REPLAY_NEWMARKERMA
302INPUT_REPLAY_RECORDS-
303INPUT_REPLAY_SCREENSHOTUDPAD UP
304INPUT_REPLAY_HIDEHUDHR3
305INPUT_REPLAY_STARTPOINTB-
306INPUT_REPLAY_ENDPOINTN-
307INPUT_REPLAY_ADVANCEARROW RIGHTDPAD RIGHT
308INPUT_REPLAY_BACKARROW LEFTDPAD LEFT
309INPUT_REPLAY_TOOLSTDPAD DOWN
310INPUT_REPLAY_RESTARTRBACK
311INPUT_REPLAY_SHOWHOTKEYKDPAD DOWN
312INPUT_REPLAY_CYCLEMARKERLEFT[DPAD LEFT
313INPUT_REPLAY_CYCLEMARKERRIGHT]DPAD RIGHT
314INPUT_REPLAY_FOVINCREASENUMPAD +RB
315INPUT_REPLAY_FOVDECREASENUMPAD -LB
316INPUT_REPLAY_CAMERAUPPAGE UP-
317INPUT_REPLAY_CAMERADOWNPAGE DOWN-
318INPUT_REPLAY_SAVEF5START
319INPUT_REPLAY_TOGGLETIMEC-
320INPUT_REPLAY_TOGGLETIPSV-
321INPUT_REPLAY_PREVIEWSPACEBAR-
322INPUT_REPLAY_TOGGLE_TIMELINEESC-
323INPUT_REPLAY_TIMELINE_PICKUP_CLIPX-
324INPUT_REPLAY_TIMELINE_DUPLICATE_CLIPC-
325INPUT_REPLAY_TIMELINE_PLACE_CLIPV-
326INPUT_REPLAY_CTRLLEFT CTRL-
327INPUT_REPLAY_TIMELINE_SAVEF5-
328INPUT_REPLAY_PREVIEW_AUDIOSPACEBARRT
329INPUT_VEH_DRIVE_LOOKLEFT MOUSE BUTTON-
330INPUT_VEH_DRIVE_LOOK2RIGHT MOUSE BUTTON-
331INPUT_VEH_FLY_ATTACK2RIGHT MOUSE BUTTON-
332INPUT_RADIO_WHEEL_UDMOUSE DOWNRIGHT STICK
333INPUT_RADIO_WHEEL_LRMOUSE RIGHTRIGHT STICK
334INPUT_VEH_SLOWMO_UDSCROLLWHEEL DOWNLEFT STICK
335INPUT_VEH_SLOWMO_UP_ONLYSCROLLWHEEL UPLEFT STICK
336INPUT_VEH_SLOWMO_DOWN_ONLYSCROLLWHEEL DOWNLEFT STICK
337INPUT_VEH_HYDRAULICS_CONTROL_TOGGLEXA
338INPUT_VEH_HYDRAULICS_CONTROL_LEFTALEFT STICK
339INPUT_VEH_HYDRAULICS_CONTROL_RIGHTDLEFT STICK
340INPUT_VEH_HYDRAULICS_CONTROL_UPLEFT SHIFTLEFT STICK
341INPUT_VEH_HYDRAULICS_CONTROL_DOWNLEFT CTRLLEFT STICK
342INPUT_VEH_HYDRAULICS_CONTROL_UDDLEFT STICK
343INPUT_VEH_HYDRAULICS_CONTROL_LRLEFT CTRLLEFT STICK
344INPUT_SWITCH_VISORF11DPAD RIGHT
345INPUT_VEH_MELEE_HOLDXA
346INPUT_VEH_MELEE_LEFTLEFT MOUSE BUTTONLB
347INPUT_VEH_MELEE_RIGHTRIGHT MOUSE BUTTONRB
348INPUT_MAP_POISCROLLWHEEL BUTTONY
349INPUT_REPLAY_SNAPMATIC_PHOTOTABX
350INPUT_VEH_CAR_JUMPEL3
351INPUT_VEH_ROCKET_BOOSTEL3
352INPUT_VEH_FLY_BOOSTLEFT SHIFTL3
353INPUT_VEH_PARACHUTESPACEBARA
354INPUT_VEH_BIKE_WINGSXA
355INPUT_VEH_FLY_BOMB_BAYEDPAD RIGHT
356INPUT_VEH_FLY_COUNTEREDPAD RIGHT
357INPUT_VEH_TRANSFORMXA
358INPUT_QUAD_LOCO_REVERSE-RB
359INPUT_RESPAWN_FASTER--
360INPUT_HUDMARKER_SELECT--

Control groups (0, 1, 2) and DisableControlAction

Every control native takes a control group as its first argument. In practice you pass 0 almost every time: it covers gameplay controls on foot and in vehicles, and the Cfx.re docs use it in their own examples. The three documented groups are:

IDGroupUse
0PLAYER_CONTROLGameplay controls (on foot, in vehicles, combat). The default and by far the most used, works for virtually every control ID.
1CAMERA_CONTROLCamera / look inputs. Rarely needed on its own since group 0 covers look controls too.
2FRONTEND_CONTROLMenu and UI (frontend) inputs, used when the pause menu or a scaleform menu owns the input.

To stop the game from acting on a control, call DisableControlAction(0, id, true) once per frame. It only lasts a single frame, so scripts keep a list of control IDs and disable them in a loop while a menu or minigame owns the input; DisableAllControlActions(0) blocks every control at once. You can still read a disabled control with IsDisabledControlJustPressed, which is how you reuse a vanilla key for your own action without the game reacting to it.

Lua snippets: read, disable and reuse controls

Reading a key is a per-frame check inside a thread. This one fires an event the moment the player taps E (control 38).

-- client.lua | run an action when the player taps E
-- INPUT_PICKUP = 38, control group 0 = PLAYER_CONTROL
CreateThread(function()
    while true do
        Wait(0)
        if IsControlJustPressed(0, 38) then
            TriggerEvent("myscript:interact")
        end
    end
end)

The DisableControlAction list pattern: build a table of control IDs and disable them all every frame while your NUI is focused, so clicks and keys do not leak into the game.

-- client.lua | block game input while a NUI menu is open
-- attack, aim, detonate, throw, melee and the weapon wheel
local DISABLED = { 24, 25, 47, 58, 263, 264, 257, 140, 141, 142, 12, 13 }

CreateThread(function()
    while menuOpen do
        Wait(0)
        for _, control in ipairs(DISABLED) do
            DisableControlAction(0, control, true)
        end
    end
end)

To repurpose a game key, disable it and read it back with the disabled-control natives. Here the vehicle X key (control 73) drives a custom action instead of ducking.

-- client.lua | reuse a game key without the vanilla action
-- disable INPUT_VEH_DUCK (73, the X key in a vehicle), then read it yourself
CreateThread(function()
    while true do
        Wait(0)
        DisableControlAction(0, 73, true)
        if IsDisabledControlJustPressed(0, 73) then
            TriggerEvent("myscript:vehicleAction")
        end
    end
end)

Rebinding keys with RegisterKeyMapping

Hard-coding a control ID is fine for reading the game's own inputs, but for a key that opens your script, the modern FiveM approach is RegisterKeyMapping. You register a +commandand bind a default key to it; FiveM then adds a row to Settings > Key Bindings so every player can rebind it without editing your code, and two resources no longer fight over the same physical key.

-- client.lua | let players rebind the key from FiveM Settings > Key Bindings
RegisterCommand("+openInventory", function()
    TriggerEvent("inventory:open")
end, false)

RegisterKeyMapping("+openInventory", "Open inventory", "keyboard", "F2")

Need more than this list? The authoritative, always-current source is the Cfx.re control reference at docs.fivem.net (game-references > controls), which is where the 361 IDs above come from. For analog inputs (sticks, triggers) use GetControlNormal(0, id), which returns a -1.0 to 1.0 value instead of a boolean, and GetControlInstructionalButton to resolve the on-screen button glyph for a control at runtime.

Scripts with configurable keybinds

If you would rather configure a keybind than write a control loop, several Var FiveM scripts expose their keys in the config. The FiveM emote script opens its React menu with M and adds an 8-slot emote wheel plus Numpad keybind slots, the FiveM interaction script is a standalone system whose hold-to-confirm panels use a configurable hold duration and key bind, the FiveM keypad script gates any action behind a NUI PIN with a plug-and-play example command, the FiveM dispatch script accepts or refuses alerts on configurable keybinds (default Y and G), and the FiveM AFK script toggles with a configurable command and exit key. The keypad, dispatch and AFK scripts run on ESX, QBCore and standalone.

Frequently asked questions

How many controls are there in FiveM?

FiveM exposes 361 controls, with IDs running from 0 to 360. Each one is a named INPUT_* action (INPUT_JUMP, INPUT_ATTACK, INPUT_VEH_ACCELERATE and so on) with a default keyboard and controller binding. The full list on this page comes from the official Cfx.re control reference.

What is the control ID for E, F and the interact key in FiveM?

The E key maps to several controls: INPUT_PICKUP is 38, INPUT_CONTEXT (the generic interact) is 51 and INPUT_TALK is 46. The F key is INPUT_ENTER (23), also used for entering vehicles and INPUT_VEH_EXIT (75). Because one physical key can back multiple controls, most scripts pick 38 or 51 for a on-foot interact prompt.

How do I check if a control is pressed in Lua?

Call IsControlPressed(0, control) every frame for a held key, or IsControlJustPressed(0, control) for a single press. The first argument is the control group (0 = PLAYER_CONTROL, which works for almost everything) and the second is the control ID from the table above. For example, IsControlJustPressed(0, 38) fires when the player taps E.

What is the DisableControlAction list used for?

DisableControlAction(0, control, true) blocks the game's default action for one control for a single frame, so you call it in a loop. Scripts build a list of control IDs (attack, aim, melee, weapon wheel) and disable them all while a NUI menu or a minigame is open, then read the same key with IsDisabledControlJustPressed to reuse it without triggering the vanilla behavior. DisableAllControlActions(0) blocks every control at once.

What are control groups 0, 1 and 2?

The control natives take a control group as their first argument: 0 is PLAYER_CONTROL (gameplay, on foot and in vehicles), 1 is CAMERA_CONTROL (look inputs) and 2 is FRONTEND_CONTROL (menus and UI). Group 0 works for effectively every control ID and is what the vast majority of scripts pass, including the examples in the Cfx.re docs.

Can players rebind FiveM controls?

Yes. Instead of hard-coding a control ID, register a command and bind it with RegisterKeyMapping, which adds an entry to the FiveM Settings > Key Bindings menu so each player can choose their own key. The numeric control IDs in this list are still the way to read the game's own inputs and to disable vanilla actions.

-- var-fivem.com

Skip the control loops

Var FiveM scripts ship with keybinds, prompts and NUI input handled and fully editable in config. Escrow, Partially Open and Open Source variants, instant Tebex delivery.

Browse the shop

Related: FiveM blips list · FiveM emote list · FiveM weapon 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