FiveM ESX Job & Salary Builder
Build an ESX job definition with grades and salaries. Outputs ready-to-run
SQL INSERT statements for the
jobs and
job_grades tables, plus an optional
config.lua snippet.
Quick-load example jobs
Job Info
Grades
Grade 0 is lowest rank. Grades are numbered in the order listed above.
Output options
SQL — jobs & job_grades
-- ── ESX Job SQL ─────────────────────────────────────────────
-- Generated by DustBowl.Games ESX Job Builder
-- https://dustbowl.games/tools/fivem-esx-job
-- Remove existing entries for this job (safe re-run)
DELETE FROM `job_grades` WHERE `job_name` = 'police';
DELETE FROM `jobs` WHERE `name` = 'police';
-- Insert job
INSERT INTO `jobs` (`name`, `label`) VALUES
('police', 'Police Department');
-- Insert job grades
INSERT INTO `job_grades` (`job_name`, `grade`, `name`, `label`, `salary`, `skin_male`, `skin_female`) VALUES
('police', 0, 'cadet', 'Cadet', 1200, '{}', '{}'),
('police', 1, 'officer', 'Officer', 1800, '{}', '{}'),
('police', 2, 'detective', 'Detective', 2400, '{}', '{}'),
('police', 3, 'sergeant', 'Sergeant', 3000, '{}', '{}'),
('police', 4, 'lieutenant', 'Lieutenant', 4000, '{}', '{}'),
('police', 5, 'chief', 'Chief', 5500, '{}', '{}');config.lua snippet
-- config.lua snippet — place inside your resource's Config table
-- Job: Police Department
Config.DefaultDuty = true -- players spawn on-duty for this job
Config.Jobs = {
['police'] = {
label = 'Police Department',
defaultDuty = true,
grades = {
[0] = { name = 'cadet', label = 'Cadet', salary = 1200 },
[1] = { name = 'officer', label = 'Officer', salary = 1800 },
[2] = { name = 'detective', label = 'Detective', salary = 2400 },
[3] = { name = 'sergeant', label = 'Sergeant', salary = 3000 },
[4] = { name = 'lieutenant', label = 'Lieutenant', salary = 4000 },
[5] = { name = 'chief', label = 'Chief', salary = 5500 },
},
},
}How to apply these to your ESX server
Run the SQL against your server's database (using HeidiSQL, phpMyAdmin, or the oxmysql query runner). The jobs and job_grades tables are created by ESX's default SQL on first install.
After inserting, restart es_extended (or the whole server) so ESX reloads the job cache from the database.
To assign a player to the new job in-game, use: ESX.SetPlayerJob(xPlayer, 'police', 5)
Reference: ESX Framework docs
Run your own FiveM server.
Rent a private FiveM server on real hardware — full control-panel access, your mods, your configs, your rules. It's your server; run it your way.
Don't want to run it yourself? Our managed services & consulting team will set it up and keep it running for you — game servers, Windows, Linux, and cloud, from 10+ years of MSP work.