Home / Guides / Rust / Server Settings Guide
🔧 Rust · Server.cfg Reference

Common Rust Server Settings Guide

The server.cfg settings Rust admins actually use — verified against current Facepunch convars, not copied from a five-year-old forum post. Rust renames and removes convars constantly, so this page sticks to what's confirmed working and is honest about the stuff that now needs a plugin.

ConVars checked against the current Facepunch reference · last verified May 2026
Jump to a section
📝
First time? Start with the setup guide
This page is a reference catalog. If you don't have a server.cfg yet or aren't sure where the file goes, how to create a server.cfg for Rust walks through setup step by step. Or skip both and use the Rust server.cfg generator.
🏷️

Server Info & Branding

How your server presents itself in the browser. Get these wrong and players never find you — the tag rules in particular decide whether you show up in their filters.

SettingDescriptionExample
server.hostnameName shown in the server browser. Unique, not spammy."GamesOMG Vanilla+"
server.descriptionBlurb in the server details panel. Rules, Discord, wipe schedule."Weekly · PvE · Discord"
server.urlClickable link from the server panel. Site or Discord invite."https://gamesomg.com"
server.headerimageBanner image — must be 512×256, hosted on a stable public URL (imgur, your CDN)."https://ex.com/h.png"
server.logoimageServer logo shown alongside the header in the browser."https://ex.com/logo.png"
server.identitySave/config folder name. Changing wipes progress — pick once, never touch."rust_main"
server.tagsUp to 4 discovery keywords. Drives browser filtering — pick honest ones."weekly,2x,US"
server.levelMap type. Almost always "Procedural Map"."Procedural Map"
server.randomize_seedWhen set, the map seed changes on every restart. Leave it out if you want a stable map between restarts.true
Tag tips: use wipe cadence (weekly, biweekly, monthly), region (EU, NA, AU), and rate multipliers. If you run Oxide or Carbon, the modded tag is added automatically — don't set it yourself. Only 4 tags count.
🌍

World & Players

Map shape, player cap, PvE toggle, and team size. The team-size convar is the one that trips everyone up — note the prefix.

SettingDescriptionExample
server.maxplayersConcurrent player cap. Match to hardware.100
server.worldsizeMap size in meters. Valid 1000–6000; 3000–4500 is where most communities sit.3500
server.seedProcedural map seed. Preview combos on rustmaps.com before committing.1337
server.pveToggle PvE mode — when true, players can't damage each other.false
server.radiationEnables radiation zones at monuments. On by default.true
server.stabilityBuilding stability simulation. Off makes floating bases possible.true
relationshipmanager.maxteamsizeTeam size cap. Note the relationshipmanager. prefix — not just maxteamsize. Default 8. Set 0 to disable teams (solo-only).8
The #1 mistake: team size is relationshipmanager.maxteamsize, with the prefix. maxteamsize on its own does nothing. Set it to 4 for small-group servers or 0 for solo-only.

Performance & Time

Save frequency, FPS cap, and world time. Leave server.tickrate alone unless you know exactly what you're doing — the "right" value varies by server and changing it usually causes more problems than it solves.

SettingDescriptionExample
server.saveintervalSeconds between saves. Default 300 (5 min) is genuinely fine; lower hammers disk.300
fps.limitCap server FPS. Cap on weak hardware to prevent overheating; leave high otherwise.256
env.timeSet the current world time (0–24). Lock to noon (12) for an always-daytime server.12
Memory tip: Rust leaks memory over long uptimes. Schedule a restart every 6–12 hours (via your host's scheduled-task system) and a fresh process clears most creeping performance issues. This does more for stability than any tickrate tweak.
🛡️

Security & RCON

Anti-cheat and the remote console. Leave anti-cheat on — turning it off tanks your player count because Rust warns players before they connect to a non-secure server. Set a strong RCON password; bots scan for weak ones.

SettingDescriptionExample
server.secureEnables Rust's anti-cheat (EAC). The only reason to disable is a private dev box.true
rcon.passwordStrong, random, mandatory. Blank/default passwords get exploited fast."long-random-string"
rcon.portRCON port. Keep unique from the game port.28017
rcon.ipBind RCON to a specific IP. Empty = all interfaces.0.0.0.0
rcon.webUse websocket RCON (what modern tools want). false = legacy Source RCON, which is deprecated.1
RCON powers your tools: Rustadmin, BattleMetrics, and most admin Discord bots talk to your server over RCON. Keep rcon.web 1 — the legacy Source-engine mode is deprecated. Firewall the RCON port to trusted IPs where you can.

Decay & Upkeep

How fast unattended bases rot. The current system is built on three real knobs: a global scale, an upkeep_period, and the brackets that scale upkeep cost by base size. (If you've seen decay.duration_twig-style per-material convars in old guides — those aren't how current Rust decay works; ignore them.)

SettingDescriptionExample
decay.scaleGlobal decay multiplier. Default 1.0. Drop to 0.5 on PvE for longer-lasting bases; 0 disables decay entirely.1.0
decay.upkeep_period_minutesMinutes a base survives without upkeep before decay starts. Default 1440 (24h).1440
Decay brackets explained: bigger bases pay less upkeep per block so megabases aren't impossible to maintain. Each bracket sets a block-count ceiling and a cost fraction. Bracket 0 (small bases) pays full cost; higher brackets pay a reduced fraction. You set them with decay.bracket_0_blockcount / decay.bracket_0_costfraction (and _1_, _2_, _3_). Keep block counts ascending and cost fractions descending, or small bases end up paying more than zerg compounds.

Note: vehicles and deployables use their own per-entity decay timers (e.g. boats, minicopters, horses each have an outsidedecayminutes value) rather than the building upkeep system. Those are situational — most admins only ever touch decay.scale.

👮

Admins & Bans

Owner/moderator assignment and bans. Every ID is a SteamID64 — the 17-digit number, never a username. After adding admins via console, run server.writecfg or they won't survive a restart.

CommandDescriptionExample
owneridGrant full owner/admin. Add your own SteamID64 here first.ownerid 7656... "you"
moderatoridGrant moderator (less power than owner).moderatorid 7656...
banidBan a SteamID. Add a reason in quotes.banid 7656... "grief"
server.whitelistEnable whitelist mode (only listed SteamIDs may join).1
ownerid vs moderatorid: owners get the full admin toolset (noclip, spawning, server convars); moderators get moderation powers (kick, ban, teleport) without the server-config reach. Use moderatorid for trusted helpers you don't want rewriting your decay rates.
🐺

Wildlife & NPCs

Animal density is set per species, as a population value per square km — there's no single global "spawn rate" convar. Raise these for a livelier (and more dangerous) map, drop them for a quieter one.

SettingDescriptionDefault
bear.populationBears per km².2
polarbear.populationPolar bears per km² (snow biome).1
wolf.populationWolves per km².2
boar.populationBoars per km².5
stag.populationStags per km².3
chicken.populationChickens per km².3
Bradley & Patrol Heli: the APC and patrol helicopter have their own large families of convars under the bradleyapc. and patrolhelicopterai. prefixes (deploy ranges, flee thresholds, crash behavior, scientist redeploy timers). They're advanced and situational — if you want to tune them, type find bradleyapc or find patrolhelicopterai in your server console to list the current ones with their live values.
🤖

AI Behavior

Toggles for NPC/animal AI — handy for PvE tuning, performance, or building a target-dummy test server. These are real top-level ai. convars.

SettingDescriptionDefault
ai.moveToggle whether AI entities move toward their destinations. False = frozen in place.true
ai.thinkToggle AI brain logic (decision-making). False = AI stops thinking.true
ai.ignoreplayersWhen true, NPCs ignore players entirely. Useful for building/testing undisturbed.false
ai.npc_enableMaster toggle for NPC spawning. Set false and NPCs won't spawn at all.true
ai.sensetimeSeconds between NPC sensory updates. Higher = lower CPU but slower reactions.1
Scientist difficulty isn't a single npcdamage/npcaccuracy convar (those don't exist in current Rust, despite what old guides claim). Aim tightness is governed by convars like ai.npc_valid_aim_cone. To see what your build exposes, run find ai.npc in the server console.
⚑ Stuff that needs a plugin (not server.cfg)

This is where most old guides lead you astray. Rust has removed or never had a lot of the convars you'll see on random forum posts. For anything below you need a modding framework — Oxide/uMod or Carbon (Oxide-compatible, most uMod plugins work on either). If a setting you're hunting for isn't in the tables above, it's almost certainly in here.

📄

Example server.cfg

A working vanilla server.cfg using only the verified settings above — nothing fabricated. Replace identifiers, passwords, and your SteamID, then drop it in /server/<identity>/cfg/server.cfg.

// GamesOMG example Rust server.cfg — vanilla, verified convars only
server.hostname      "[US] GamesOMG Vanilla+ | Weekly"
server.description   "Weekly wipe Thursday | PvE-friendly | Discord.gg/example"
server.url           "https://gamesomg.com"
server.headerimage   "https://example.com/header.png"
server.identity      "rust_main"
server.tags          "weekly,vanilla,US"
server.maxplayers    100
server.worldsize     3500
server.seed          1337
server.level         "Procedural Map"
server.pve           false
server.radiation     true
server.stability     true
relationshipmanager.maxteamsize 8
server.secure        true
server.saveinterval  300
env.time             12
decay.scale          1.0
decay.upkeep_period_minutes 1440
rcon.password        "CHANGE-ME-long-random-string"
rcon.port            28017
rcon.web             1
ownerid              76561198042260039 "YourName"  // your SteamID64

Gather-rate and crafting tweaks aren't in here because they're plugin-only (see above). Add them through GatherManager, not the cfg.

🔍

Troubleshooting Common Issues

The "my settings aren't working" failure modes, in roughly the order admins hit them.

My changes in server.cfg aren't taking effect
  • Confirm the file is in /server/<identity>/cfg/ where identity matches your server.identity.
  • Restart the server — server.cfg only fires at boot.
  • Check command-line launch parameters. CLI values override server.cfg.
  • Look for typos: missing quotes around strings, wrong variable names, wrong prefix (the classic: maxteamsize instead of relationshipmanager.maxteamsize).
  • To check what's actually set, type the convar name on its own in the console — it prints the live value.
A convar from a guide does nothing / "command not found"
  • It may have been renamed or removed — Rust changes convars constantly. Old gather-rate, day-length, and AI-damage convars are common offenders.
  • Use find <text> in the server console (e.g. find decay, find ai) — it lists every convar matching that text on your actual build, with descriptions. When a guide disagrees with find, find wins.
  • If it's gather rates, crafting, day length, or economy — it's plugin territory now, not a convar.
My server name/description isn't updating in the browser
  • Steam's server browser caches aggressively — wait a few minutes, restart, refresh.
  • Confirm you're editing the cfg under the correct identity folder.
  • Known bug: descriptions sometimes duplicate in-game — pad with \n line breaks as a workaround.
RCON / WebRCON access isn't working
  • Verify rcon.password, rcon.port, and rcon.web 1 are all set.
  • Firewall or host may be blocking the RCON port — check inbound rules.
  • Modern tools need websocket mode (rcon.web 1); the legacy Source-engine mode is deprecated.
Performance issues or high latency
  • Leave server.tickrate at default unless you've benchmarked — raising it past your hardware makes things worse.
  • Large server.worldsize (6000) increases memory/storage load.
  • Schedule a restart every 6–12 hours; Rust leaks memory over uptime.
  • Out-of-date plugins after a Rust update cause crashes and lag — update them on patch day.
Known quirks worth bookmarking:

Common Rust server.cfg questions

Where does the server.cfg file go?
It lives in /server/<identity>/cfg/. Replace identity with whatever you set as server.identity. If the cfg folder doesn't exist, create one and drop the file inside. Full walkthrough on the how to create a server.cfg for Rust page, or use the generator.
How do I change team size?
Use relationshipmanager.maxteamsizewith the prefix, not just maxteamsize. Default is 8. Set 0 to disable teams entirely (solo-only servers), or 34 for small-group servers. This is the single most-mistyped Rust setting.
How do I disable decay completely?
Set decay.scale 0 — that freezes all structures permanently. Be aware abandoned bases then stay forever and the map slowly becomes a junkyard. Many PvE servers reduce it (decay.scale 0.5) rather than fully disabling.
Can I set gather rates in server.cfg?
No. The gather.rate.dispenser-style lines in old guides don't persist. Gather-rate control now lives in a plugin — GatherManager on Oxide/Carbon — which gives you per-resource tuning that survives restarts.
Can I make longer days or shorter nights?
Not in vanilla — env.daylength and env.nightlength were removed. Only env.time (set the current time, e.g. env.time 12 for noon) still works. For adjustable day/night ratios you need a plugin like Night Skipper or Time Of Day.
Does Rust use VAC or EAC?
Rust runs on Easy Anti-Cheat (EAC), toggled by server.secure. Leave it on (true) — players are warned before connecting to an insecure server, so turning it off tanks your population. The only reason to disable is a private dev box.
How do I make myself admin?
Add your SteamID64 (the 17-digit number, not your username) with ownerid, then restart — or run it in console and follow with server.writecfg to save it. Example: ownerid 76561198042260039 "YourName". Find your SteamID64 at steamid.io.
A convar from another guide isn't working — how do I check?
Type find <text> in your server console — e.g. find decay or find ai. It lists every convar matching that text on your actual server build, with descriptions and current values. It's the authoritative answer for your version; when a written guide disagrees with find, trust find.
What's the difference between server.cfg and the startup command line?
Command-line values load first and override server.cfg. Use the cfg for permanent settings; use the command line only for things that change between launches (identity, ports). If a cfg value keeps reverting, check your launch script.
Can I load mods from server.cfg?
No — Oxide/uMod and Carbon plugins load through their own systems, separate from server.cfg. Plugins live in oxide/plugins/ (or carbon/plugins/) with their configs alongside. The cfg only handles base Rust convars.