Skip to content

How to install oxide

Updated July 10, 2026
Rust
How to Install Oxide | GameServerKings KB

How to Install Oxide

Oxide (now branded as uMod for Rust) is the modding framework that almost every Rust plugin depends on. Without Oxide, you cannot load any of the kits, teleport, anti-cheat, or economy plugins from umod.org or Codefling.

This guide installs Oxide cleanly on our panel, then verifies it loaded correctly.

What Oxide Actually Does

Oxide injects itself into your Rust server at startup and exposes hooks that plugins listen to. When a player connects, places a building block, dies, or chats, Oxide fires an event, and any subscribed plugin can react.

It also creates a set of folders inside your server root:

  • oxide/plugins/ is where you drop .cs plugin files.
  • oxide/config/ holds the per-plugin JSON config files.
  • oxide/data/ stores plugin databases (kits, homes, player stats). Plugins keep their data here even when unloaded.
  • oxide/logs/ holds Oxide's log files, your first stop when a plugin misbehaves.
  • oxide/lang/ contains the translatable message files plugins use.

The entire oxide/ folder survives map wipes and framework switches, so your plugins, configs, and data stay put unless you delete them yourself.

Step 1: Stop the Server

Before switching frameworks on an established server, take a quick snapshot through the Backups tab first. See Backups. On a fresh server you can skip this.

Always stop the server before swapping framework files. From the panel Console tab, click the red Stop button. Wait until the status shows "Offline."

Step 2: Change the Modding Framework in the Startup Tab

Your Rust server has a Modding Framework dropdown in the Startup tab that controls which framework loads. Open the Startup tab and select:

  • oxide

The other two options in the dropdown are vanilla (no framework, pure Rust) and carbon (a faster Oxide alternative, see How to Install Carbon).

Leave the Validate toggle off for this; it is not needed to install Oxide and only slows the boot. Validate matters when you switch back to vanilla later (covered at the end of this guide).

Save the change.

Step 3: Start the Server

Hit Start. On boot, the egg will:

  1. Download the latest Oxide build from the uMod GitHub release.
  2. Extract it on top of your Rust install (replacing RustDedicated_Data/Managed/*.dll files where Oxide overrides them).
  3. Boot Rust as normal.

In the console you should see a line near the top similar to:

Code
[Oxide] Loaded extension Rust v2.0.xxxx by Oxide and Contributors

If you see that, Oxide is installed and ready.

Step 4: Confirm With a Console Command

From the panel Console, run:

Console
oxide.version

The server should reply with the loaded Oxide version. If you instead see "Unknown command," Oxide did not load. Common reasons:

  • The Startup variable is still set to vanilla or empty
  • The server failed to download Oxide due to a temporary network issue (restart again)
  • Rust just pushed a forced wipe update and Oxide has not yet released a compatible build (this happens roughly on the first Thursday of each month, see Wipe Management)

Step 5: Install Your First Plugin

A small, safe plugin makes the best first test. We will use NoGiveNotices, which hides the chat broadcast that appears when an admin spawns items with F1 give. It needs no configuration, no permissions, and you can verify it works in seconds:

  1. Download NoGiveNotices.cs from umod.org/plugins/no-give-notices.
  2. Open the File Manager in the panel, navigate to oxide/plugins/.
  3. Click Upload at the top and drag in NoGiveNotices.cs.

Within a few seconds, the Console will print:

Code
[Oxide] Loaded plugin No Give Notices v0.3.0 by Wulf

Plugins hot-load. You do not need to restart. To see it working, give yourself an item from the F1 console in-game. The usual "gave themselves" broadcast no longer appears in chat.

Two upload rules that save a lot of head-scratching:

  • Do not rename the file. The filename must exactly match the plugin's internal class name, including capitalization. nogivenotices.cs will not load.
  • Watch the extension. Some browsers and editors save plugins as NoGiveNotices.cs.txt. Oxide ignores anything that is not exactly .cs. Rename in the File Manager if this happens.

Step 6: Editing Plugin Configs

NoGiveNotices is unusual in that it has no settings at all, which is part of what makes it a clean first test. Almost every other plugin generates a config file in oxide/config/ on first load. BetterChat, a popular chat formatting plugin, creates oxide/config/BetterChat.json. Edit a config through the File Manager (right-click, Edit), make your changes, then reload that plugin from console:

Console
oxide.reload BetterChat

oxide.reload re-applies the new config without restarting the server.

Troubleshooting a Plugin That Will Not Load

  • Nothing happens after upload: Confirm the file landed in oxide/plugins/, not the server root, and that the extension is exactly .cs.
  • Console shows a compile error: The plugin is incompatible with the current Rust or Oxide version. Check the plugin's page for an update, and read the full error in oxide/logs/ for the failing line.
  • Plugin loads but commands do nothing: Most plugins lock features behind permissions. Grant yourself the permission node listed on the plugin's page, see Oxide Permissions 101.
  • Everything broke after a forced wipe: Wait for the uMod team to publish the updated Oxide build, restart, then update any plugins that still error. See Wipe Management.

Common Oxide Console Commands

CommandWhat it does
oxide.versionShow the Oxide version
oxide.pluginsList every loaded plugin
oxide.load PluginNameLoad a plugin file
oxide.unload PluginNameUnload a plugin
oxide.reload PluginNameReload a plugin (re-reads config)
oxide.grant <user|group> <name|id> <perm>Grant a permission
oxide.revoke <user|group> <name|id> <perm>Revoke a permission
oxide.usergroup add <user> <group>Add a user to a group

See Oxide Permissions 101 for the full breakdown.

Updating Oxide

When Facepunch pushes a forced wipe (first Thursday of the month), Oxide gets recompiled by the uMod team, usually within a few hours. Our Rust egg pulls the latest Oxide build on every startup, so a simple restart after the new Oxide release updates you automatically.

If you want to force the update sooner, restart the server. Do not manually download Oxide and upload it through SFTP unless you specifically need a pre-release build.

Switching Away From Oxide

Your oxide/ folder (plugins, configs, data) is never deleted by a framework switch, but the Oxide framework itself leaves files behind that the other options need cleared:

  • To Carbon: stop the server, delete Oxide's framework files (the Oxide.* files) inside RustDedicated_Data/Managed/, then set the Modding Framework dropdown to carbon and start. The full walkthrough, including migrating your plugins, is in How to Install Carbon.
  • Back to vanilla: set the dropdown to vanilla, turn the Validate toggle on, and restart. Validation restores the clean game files that Oxide overwrote. Turn Validate back off afterward so future boots stay fast.
Made with 💜 by GameServerKings