How to Install Oxide (uMod) and Carbon Plugins on a Rust Server
Oxide (uMod) and Carbon are both modding frameworks that load plugins into a Rust dedicated server. You install one framework, then drop plugin files into its plugins folder: oxide/plugins for Oxide, carbon/plugins for Carbon. Plugins are usually single .cs files that the framework compiles and loads while the server runs.
Carbon is built to run most Oxide plugins unchanged and uses the same folder layout, so the day-to-day workflow is nearly identical. The differences that matter are the console command prefix, the update model and how much you can rely on "compatible" meaning "works". This guide was checked against the Facepunch wiki and Carbon's own documentation in November 2026.
- Install one framework only: Oxide or Carbon, never both on the same server.
- Oxide plugins go in
oxide/plugins; Carbon plugins go incarbon/plugins. Both use the same subfolder layout. - Reload a single plugin with
oxide.reload PluginName(Oxide) orc.reload PluginName(Carbon). - Permissions use
oxide.grantandoxide.usergroupon Oxide, and thec.equivalents on Carbon. - After every Rust update, make sure your framework build matches the game build before you blame a plugin.
On this page
Oxide vs Carbon: what is actually different
Both frameworks sit between the Rust server and your plugins. They hook into game events, give plugins a permission system, and handle compiling and loading. Facepunch's wiki lists both under server modding. Oxide is the long-established framework distributed through uMod. Carbon is a newer loader that, in its own words, aims to be fully compatible with plugins written for Oxide and uses Harmony so existing Oxide plugins can run without extra patches.
| Oxide (uMod) | Carbon | |
|---|---|---|
| Plugin folder | oxide/plugins | carbon/plugins |
| Console commands | oxide.* (for example oxide.reload) | c.* (for example c.reload); carbon.reload is also documented |
| Install method | Oxide installer or release archive from uMod | Extract the release archive into the server root, next to the Rust server executable |
| Oxide plugin support | Native | Intended to be fully compatible; not guaranteed for every plugin |
| Builds | One build per Rust update | Separate builds for Rust's public, staging and aux branches, plus Production, Edge, QA and Preview channels |
How to install the framework
Pick one. Running Oxide and Carbon together is not supported; a clean switch means replacing one with the other and keeping a backup of the oxide folder so you can roll back.
- Oxide: stop the server, run the Oxide installer (or extract the Oxide release archive over the server files), and start the server again. Facepunch's wiki describes exactly this order.
- Carbon: stop the server, download the archive for your OS and release channel from Carbon's GitHub releases page, extract it into the folder that contains the Rust server executable (keep the internal folder structure), then start the server. Carbon's install page tells you to verify your server files and update the game first.
- On a managed host: look for a mod framework selector or one-click installer in your control panel instead of doing the above by hand.
Hosting with ChicagoServers? The Rust server hosting page lists what is included, such as a one-click Oxide/uMod and Carbon installer, free server backups and SFTP file access.
To confirm the framework is running, list loaded plugins from the server console: c.plugins on Carbon, or oxide.plugins on Oxide.
How to install a plugin
- Download the plugin file
Get the
.csfile from the plugin's page. Check the plugin description for required dependencies, which are other plugins that must also be installed. - Upload it to the plugins folder
Use SFTP (or your host's file manager) and place the file directly in
oxide/pluginsorcarbon/plugins. Do not leave it inside a zip. - Let it load
Both frameworks watch the plugins folder and compile new files without a restart. Carbon's script watcher can be set to watch only the top-level plugins folder or all subfolders, so keep plugin files at the top level unless you have changed that setting.
- Check the console
A compile error or a missing dependency is printed when the plugin loads. Read it before touching anything else.
- Edit the generated config
Most plugins create a config file on first load. Edit it, then reload that one plugin.
Config, data and language files are stored in sibling folders (config, data, lang) under oxide/ or carbon/.
Reloading, loading and unloading
# Oxide
oxide.reload PluginName
oxide.load PluginName
oxide.unload PluginName
# Carbon
c.reload PluginName
c.load PluginName
c.unload PluginName
c.reload *In Carbon, c.reload * reloads everything, and c.unload marks a plugin as ignored by moving its file to a backups folder until you c.load it again. Reload a plugin after editing its config; do not assume it re-reads the file on its own.
Permissions: oxide.grant and the Carbon equivalents
Plugins register permission strings such as pluginname.use. Nothing happens for a player until that permission is granted to them or to a group they belong to. Rust admin status from ownerid and moderatorid is a separate system from plugin permissions, so grant plugin permissions explicitly instead of assuming admins have them.
oxide.grant group admin coolplugin.use
oxide.grant user <name or STEAM64_ID> coolplugin.use
oxide.revoke user <name or STEAM64_ID> coolplugin.use
oxide.usergroup add <name or STEAM64_ID> vip
oxide.group add vip
oxide.show perms vip
oxide.show perm coolplugin.useOxide ships with the groups default, moderator and admin. On Carbon the same tasks use the c. prefix: c.grant, c.revoke, c.show, c.usergroup and c.group. Carbon's docs say to run c.grant on its own to print the exact syntax for your build, which is the safest way to confirm argument order.
Where to get plugins safely
Facepunch's wiki points server owners to the uMod site for Oxide plugins and notes that other community sites also distribute them. Prefer plugins with an active author, recent updates and a visible changelog. A plugin runs inside your server process, so treat an unfamiliar file like an unfamiliar program.
- Read the plugin page for its required dependencies and permission names before installing.
- Check that the listed Rust version or last update date makes sense for your current game build.
- Install one new plugin at a time so a problem is easy to trace.
Common mistakes that break plugins
- Framework out of date after a Rust update. A game update can stop plugins loading until the framework build matches. Carbon publishes builds per Rust branch, so choose the one for the branch you run. Update first, then investigate plugins.
- Installing both frameworks. Pick one and remove the other's files.
- Wrong folder. A file in
oxide/pluginsdoes nothing on a Carbon-only server, and the reverse is also true. - Skipping dependencies. Some plugins refuse to load until another plugin is present.
- Forgetting permissions. If a command seems to do nothing, run
oxide.show perm pluginname.useand check who has it. - Leaving plugin data across a wipe. Plugins that store player or base data may need their
datafiles cleared when you wipe the map. - Assuming "modded" is cosmetic. Running a modding framework generally flags the server as modded in the server list. Carbon has a
c.whymoddedcommand that explains why it considers the server modded.
Frequently asked questions
Can I run Oxide and Carbon at the same time?
No. They are alternative frameworks, so install one and remove the other. Back up your Oxide folder before switching so you can roll back.
Do Oxide plugins work on Carbon?
Carbon aims to be fully compatible with Oxide plugins and uses the same folder structure, and most work. Compatibility is not guaranteed, so test your plugin list before switching a live server.
Why won't my Rust plugin load?
Read the console message printed when it loads. The usual causes are a compile error, a missing dependency plugin, the file being in the wrong folder, or a framework build that no longer matches the current Rust build.
Do I need to restart to add a plugin?
No. Oxide and Carbon watch the plugins folder and load new files while the server is running. A restart is still sensible after framework updates.