If you have spent any time digging through Rust’s server convars looking for something like gather.rate or a “harvest multiplier” toggle, you have already discovered the frustrating truth: it isn’t there. This is the single most important thing to understand before you do anything else. Vanilla Rust has no built-in gather-rate multiplier convar. There is no command you can type into the F1 console, your server.cfg, or RCON that will make trees drop more wood or ore nodes yield more sulfur. The base game is fixed at 1x by design.
To run a 2x, 5x, 10x, or even 1000x server, you must install a modding framework (Oxide/uMod or Carbon) and add a gather-rate plugin on top of it. The de facto standard for this is GatherManager by Calytic. This guide walks through exactly why vanilla can’t do it, how to get a framework running, how GatherManager’s four gather types work, the exact command and config syntax, and how to reload your changes without restarting the whole server.
Why Vanilla Rust Has No Gather-Rate Setting
Rust exposes hundreds of server convars — things like server.maxplayers, server.worldsize, server.seed, fps.limit, and server.tickrate. These let you control map size, slot count, performance, and dozens of other behaviors. But Facepunch deliberately does not ship a convar for harvest multipliers. The vanilla resource economy is balanced around a 1x grind, and there is no official lever to scale it.
That is why every “x10 server” or “x100 farm server” you have ever joined is, by definition, a modded server. The moment you change a gather rate, you are running plugins. This also means your server type will be reported as modded/community rather than vanilla in the server browser, which is exactly what you want for a custom-rate server.
The flip side: because gather rates live entirely in a plugin, they are extremely flexible. You can scale wood and stone independently, give the Mining Quarry its own multiplier, boost ground-pickup items separately from tree-chopping, and change all of it live without a wipe. None of that is possible in vanilla precisely because it is plugin-driven.
Step 1: Install a Modding Framework (Oxide or Carbon)
Before any gather plugin will load, your server needs a modding framework. There are two mainstream choices, and GatherManager works on both.
- Oxide / uMod — the long-established framework with the largest plugin library (over 1,400 plugins on uMod). It uses the traditional chat-command workflow and folder layout that most documentation assumes.
- Carbon (carbonmod.gg) — a modern framework. The official Rust wiki describes it as “a modern modding framework… responsible for handling background operations and running custom plugins and extensions with maximum performance.” It offers “seamless migration from Oxide with identical folder structure and automatic data migration tools” and “uses Harmony and does not require any additional patches to run existing Oxide plugins.” Community testing reports roughly 99% Oxide-plugin compatibility, dynamic hook loading (only the hooks a plugin actually calls get loaded, which is reported to lower RAM and speed boot ~30–40%), and that it is usually patched within hours of a force wipe.
Either framework is fine for gather rates. If you want the broadest plugin compatibility and the most tutorials matching your folder structure, Oxide is the safe default. If you care about squeezing out performance on a high-pop server, Carbon is worth a look. For a deeper comparison of the whole admin-plugin ecosystem, see our roundup of the top 10 admin plugins for your Rust server.
One critical operational fact that bites every new admin: every Facepunch update overwrites Oxide and Carbon files. After each monthly wipe or game patch, the framework is wiped out and your plugins will not load until you reinstall it. Build “reinstall the framework, then confirm plugins loaded” into your wipe-day checklist or your gather rates will silently revert to vanilla 1x.
Step 2: Install the GatherManager Plugin
With a framework installed, add the gather plugin. GatherManager is distributed as a .cs source file. Drop it into your framework’s plugins folder and it compiles on load.
- Oxide: place the plugin in
oxide/plugins/. Its config will be generated atoxide/config/GatherManager.json. - Carbon: Carbon uses an identical folder structure to Oxide, so the equivalent paths are
carbon/plugins/andcarbon/configs/. (The wiki only states the structure is identical to Oxide rather than enumerating every Carbon path, so confirm the exact directory in your panel’s file manager.)
On a managed host you typically have a file manager and a plugin installer in your control panel, which makes this a drag-and-drop operation. If you are choosing a host, our Rust game-server plans ship with Oxide/Carbon support and one-click plugin handling so you are not SSHing into a box just to add a .cs file. For panel-specific install steps, our Rust documentation covers framework and plugin installation in detail.
Once the plugin is installed and loaded, it auto-generates GatherManager.json. You will not see custom rates take effect until you either edit that file (and reload) or issue gather commands in-game/via RCON. Let’s cover both.
Step 3: Understand the Four Gather Types
GatherManager does not have a single global multiplier. It splits resource gathering into four distinct types, and you set rates per-type and per-resource. This is the part that confuses people who expected one “x5” slider, but it is also what makes the plugin powerful.
| Gather type | What it controls | Example resources |
|---|---|---|
dispenser | Hitting a resource node with a tool — trees, ore rocks, and corpses (animal/player). The “swing the axe/pickaxe” yield. | Wood, Stone, Metal Ore, Sulfur Ore, Leather, Cloth |
pickup | Collecting items off the ground that you pick up directly rather than hit. | Hemp, Stones, Mushrooms, Wood piles, ground nodes |
quarry | Output produced by the placeable Mining Quarry. | Stones, Metal Fragments, High Quality Metal, Sulfur |
survey | Results returned when a Survey Charge is thrown to test a resource deposit. | Survey results / deposit yields |
Separating dispenser from pickup is the most important distinction in practice. If you set only a dispenser multiplier, players who chop trees and mine nodes get the boost, but hemp and ground stones they pick up by hand stay at 1x. Many admins want both boosted, so they configure both types. There is also a separate control, dispenser.scale, for adjusting how much total resource a node contains rather than how much you get per hit.
Step 4: Set Your Gather Rates (Commands)
The fastest way to change a rate is the gather.rate command, run from the in-game F1 console (as an authed admin) or sent over RCON. The syntax is:
gather.rate ""
# type is one of: dispenser | pickup | quarry | survey
Some practical examples:
# 10x wood from chopping trees
gather.rate dispenser Wood 10
# 10x stones when picking them up off the ground
gather.rate pickup Stones 10
# 20x stone output from the Mining Quarry
gather.rate quarry Stones 20
# Scale the total amount a tree/ore/corpse dispenser holds
dispenser.scale tree 5
dispenser.scale ore 5
dispenser.scale corpse 5
The dispenser.scale command is subtly different from gather.rate dispenser. The gather.rate value multiplies how much you get per hit; dispenser.scale multiplies how much is available inside the node. For a clean high-rate server you often want both — a higher per-hit yield and a deeper node so players aren’t fully harvesting a tree in one swing.
Because these commands work over RCON, you can change rates live during a play session without rebooting. If you have not set up remote console access yet, our guide on Rust RCON and server console commands covers connecting via Facepunch’s WebRCON client and the convars involved (rcon.port 28016, rcon.password, and rcon.web 1).
Step 5: Edit the Config File Directly
Commands are great for quick tweaks, but for a permanent, fully-defined setup most admins edit the config file. It lives at:
oxide/config/GatherManager.json
# (Carbon equivalent: carbon/configs/GatherManager.json)
Inside, you will find sections corresponding to the four gather types plus the dispenser-scale values. A conceptual layout looks like this — your exact keys depend on the plugin version, so always edit the file the plugin actually generated rather than pasting a structure wholesale:
{
"GatherResourceModifiers": {
"Wood": 10.0,
"Stones": 10.0,
"Metal Ore": 5.0,
"Sulfur Ore": 5.0
},
"PickupResourceModifiers": {
"Stones": 10.0,
"Hemp": 10.0
},
"QuarryResourceModifiers": {
"Stones": 20.0,
"Metal Fragments": 10.0
},
"MiningQuarryResourceTickRate": 1.0,
"DispenserModifiers": {
"tree": 5.0,
"ore": 5.0,
"corpse": 5.0
}
}
A few rules that save a lot of pain:
- It is JSON, so syntax matters. A single missing comma or stray quote will stop the config from loading and the plugin may fall back to defaults. Validate your JSON before saving.
- Resource names must match the game’s internal names exactly (e.g.
Wood,Stones,Metal Ore,Sulfur Ore). A typo means that one resource silently stays at 1x. - Use floating-point numbers (
10.0, not just10) where the generated config uses them, to match the existing format.
Step 6: Reload the Plugin After Editing
This is the step everyone forgets. Editing GatherManager.json does not apply the change by itself. The plugin reads its config when it loads, so after saving the file you must reload the plugin (or restart the server) for the new rates to take effect. Reload from the console or RCON:
# Oxide / uMod
oxide.reload GatherManager
# Carbon (native)
carbon.reload GatherManager
# Short alias that works on both
o.reload GatherManager
After reloading, test it: chop a tree, mine a node, and pick up some hemp to confirm each type you configured is multiplied. If a resource is still 1x, the usual culprits are a typo in the resource name, a config you edited in the wrong type section, or — most commonly — you forgot to reload after saving.
Quick Reference: Gather Commands and Locations
| Task | Command / Path |
|---|---|
| Config file (Oxide) | oxide/config/GatherManager.json |
| Config file (Carbon) | carbon/configs/GatherManager.json |
| Set per-hit tree/ore yield | gather.rate dispenser Wood 10 |
| Set ground-pickup rate | gather.rate pickup Stones 10 |
| Set quarry output | gather.rate quarry Stones 20 |
| Scale node capacity | dispenser.scale tree 5 |
| Reload after editing (Oxide) | oxide.reload GatherManager |
| Reload after editing (Carbon) | carbon.reload GatherManager |
Locking Gather Commands Behind Permissions
If you run a team of moderators, you generally don’t want everyone able to run gather.rate. Both Oxide and Carbon use a permissions system with two default groups, admin and default, and per-plugin permission nodes in the form pluginname.permission. You grant or revoke nodes like this:
# Grant a node to a player (name or SteamID64) or to a group
oxide.grant user gathermanager.admin
oxide.grant group admin gathermanager.admin
# Revoke
oxide.revoke group admin gathermanager.admin
The exact node name depends on the plugin version, so check what GatherManager registers. For a full walkthrough of groups, inheritance, and node management, see our guide on how to set plugin permissions on your Rust server.
Frequently Asked Questions
What is the gather-rate command in vanilla Rust?
There isn’t one. Vanilla Rust has no built-in gather-rate multiplier convar — no gather.rate, no harvest slider, nothing in server.cfg. The base game is fixed at 1x. To change gather rates at all you must install a modding framework (Oxide or Carbon) and a plugin such as GatherManager, which adds the gather.rate command. If you see gather.rate referenced anywhere, it is a plugin command, not a vanilla one.
How do I make a 10x or 100x gather server?
Install GatherManager, then set the multiplier for each gather type and resource. For a broad 10x server you would set the dispenser type for tools-based harvesting (Wood, Stone, ores) and the pickup type for ground items (Hemp, Stones), for example gather.rate dispenser Wood 10 and gather.rate pickup Stones 10. A 100x server is the same commands with 100 instead of 10. Remember to set every resource you care about — there is no single global number — and reload the plugin after editing the config.
Why isn’t my gather rate changing after I edited the config?
The most common cause is forgetting to reload. GatherManager reads GatherManager.json when it loads, so a saved file does nothing until you run oxide.reload GatherManager (or carbon.reload GatherManager) or restart the server. Other causes: a JSON syntax error (a missing comma or quote) that stops the config loading, an exact-name typo in a resource (e.g. Stone instead of Stones), or editing the wrong gather-type section. Also remember that a recent Rust update may have overwritten your framework — if Oxide/Carbon got wiped on the last patch, the plugin isn’t running at all.
Does GatherManager change the quarry and excavator output?
GatherManager has a dedicated quarry gather type that controls the output of the placeable Mining Quarry — for example gather.rate quarry Stones 20. Whether that same setting also affects the giant monument Excavator is version-dependent and not guaranteed; the plugin’s quarry type is documented around the Mining Quarry specifically. If you need to scale Excavator yields, describe-and-test it on your current plugin version, or check the plugin’s documentation, since this behavior can differ between releases.
What’s the difference between dispenser, pickup, and survey rates?
dispenser covers anything you hit with a tool — trees, ore rocks, and corpses — so it controls your per-hit yield from chopping and mining. pickup covers items you collect off the ground directly, like hemp and loose stones. survey controls the results returned by a Survey Charge when you test a deposit. A fourth type, quarry, handles Mining Quarry output. They are independent, so a server that boosts only dispenser will still have 1x hemp pickups until pickup is also raised. There is also dispenser.scale, which changes how much resource a node holds rather than how much you get per swing.
Do I need to wipe my server to change the gather rate?
No. Gather rates live entirely in the GatherManager plugin config, so you can change them at any time — even mid-wipe — by editing the config or running the gather.rate commands and reloading the plugin. No map wipe is required. (Wipes are only forced by changing world parameters like server.seed or server.worldsize, or by Facepunch’s monthly force wipe — unrelated to gather rates.) Just remember that each Facepunch update overwrites Oxide/Carbon, so reinstall your framework after a patch or your rates will revert to vanilla until the plugin is loaded again.
Putting It All Together
Changing the gather rate on a Rust server comes down to one core fact and a short workflow. The fact: vanilla has no gather convar, so you need a plugin. The workflow: install Oxide or Carbon, drop in GatherManager, set per-type and per-resource multipliers (dispenser, pickup, quarry, survey) either via the gather.rate command or by editing oxide/config/GatherManager.json, then reload the plugin so the changes take effect. Keep your framework reinstall on the wipe-day checklist and your rates will stay exactly where you set them.
Once your rates are dialed in, you may want to round out your admin toolkit. If you are getting ready for the latest monthly patch, our breakdown of the Built Different update for server admins covers the force-wipe behavior and framework-overwrite timing that directly affects your gather plugin staying live.
Free Rust Tools
Speed up your server with our free Rust tools:
Ready to play?
Run your own Rust server with XGamingServer
Spin up an always-on Rust server your friends can join in minutes — no port-forwarding, no tech headaches.





