---
title: "Rust Console Commands: The Complete F1 Console List"
description: "Every Rust console command worth knowing - open the F1 console, cap FPS, set FOV, bind keys and read your combat log. Plus which 'FPS commands' are placebo."
url: "https://www.gameserverkings.com/knowledge-base/rust/rust-console-commands/"
category: "Rust"
category_url: "https://www.gameserverkings.com/knowledge-base/rust/"
published: "2026-08-01T14:01:11.130Z"
updated: "2026-08-01T14:07:08.571Z"
source_format: "markdown"
site: "GameServerKings"
---

# Rust Console Commands: The Complete F1 Console List

The **F1 console** lets any Rust player tweak performance, change graphics, bind keys and pull up their combat log — no admin rights needed. This guide covers the commands that actually matter, how to make them stick between sessions, and how to find every remaining convar yourself.

> [!NOTE] Running a server, not just playing?
> This page is for **players** — client-side commands you run on your own machine. If you own or moderate a server and need `ownerid`, kick and ban, spawning, teleport or god mode, see [Rust Admin Commands](/knowledge-base/rust/admin-commands/) instead.

## How to Open the Console

Press **F1** in-game to open the developer console. It is enabled by default — if nothing happens, check that no other program has grabbed the F1 key. Type a command and press **Enter**.

Commands here are typed **without** a leading slash. A `/` prefix means a plugin chat command, which is a different thing entirely.

## Find Any Command Yourself

Before the lists below, learn this one. `find` searches every convar the game has and prints each match with its current value:

| Command | What it does |
|---|---|
| `find <text>` | List every command and convar matching your search, with descriptions |
| `console.clear` | Clear the F1 console |
| `console.copy` | Copy the console contents to your clipboard |

`find grass` shows you every grass convar. `find audio` shows the whole audio set. This is how you check whether a command someone posted online is real — if `find` doesn't return it, it doesn't exist. Most of the giant "FPS command" lists circulating fail that test.

## General Commands

| Command | What it does |
|---|---|
| `combatlog` | Show your recent combat log — who hit you, weapon, distance, HP |
| `seed` | Show the current map's seed |
| `kill` | Kill your character and return to the respawn screen |
| `respawn` | Respawn — works when `kill` fails because your player is bugged |
| `censornudity false` | Toggle the in-game nudity censor |
| `gesture <name>` | Play a gesture, e.g. `gesture wave`, `gesture thumbsup` |
| `mutelist` | List the players you have muted |
| `client.disconnect` | Disconnect from the current server |
| `quit` | Quit Rust to desktop |

## Performance and FPS

| Command | What it does |
|---|---|
| `fps` | Print your current frame rate to the console |
| `fps.limit <n>` | Cap your frame rate, e.g. `fps.limit 144`. Use `-1` for unlimited |
| `gc.buffer <mb>` | Garbage-collector buffer. Raise to `2048`–`4096` to reduce stutter on high-RAM machines |
| `gc.collect` | Force a garbage collection now, clearing a momentary hitch |
| `mesh.streaming true` | Stream meshes to smooth in-world loading |
| `netgraph.enabled true` | Network overlay showing entity traffic |

### The perf overlay

`perf` is the built-in performance readout, and each level adds to the one before it:

| Level | Shows |
|---|---|
| `perf 0` | Off |
| `perf 1` | FPS |
| `perf 2` | \+ frame latency |
| `perf 3` | \+ RAM usage |
| `perf 4` | \+ ping |
| `perf 5` | \+ invokes |
| `perf 6` | \+ tasks |

`perf 1` is what you want day to day. `perf 4` is the one to use when you are trying to work out whether a problem is your machine or the server.

> [!WARNING] Most "FPS commands" you'll find online are placebo
> The giant FPS-command lists floating around are largely outdated or invented — many reference convars that no longer exist, and the rest just duplicate **Options → Graphics**. Run `find` on any command you are unsure about; if it returns nothing, the command isn't real. The genuine console wins are `fps.limit`, raising `gc.buffer`, and turning off motion blur and depth of field.

> [!NOTE] Low FPS might not be your PC
> If your frame rate is fine on other servers but poor on one in particular, that is a server-side problem, not a client one — entity counts, plugin load and tick rate all show up as stutter for players. [Rust Server Lag & Performance](/knowledge-base/rust/server-performance/) covers it from the server owner's side.

## Graphics and Field of View

| Command | What it does |
|---|---|
| `graphics.fov <60-90>` | Set your field of view. 90 is the maximum |
| `graphics.quality <0-6>` | Overall graphics quality level |
| `graphics.shadowdistance <n>` | Shadow render distance — `0` disables shadows |
| `graphics.drawdistance <n>` | World draw distance |
| `graphics.vm_fov_scale false` | Stop your weapon model scaling with FOV |
| `graphics.vm_horizontal_flip true` | Move the weapon model to your left hand |
| `grass.on false` | Disable grass rendering entirely |
| `grass.displacement false` | Disable grass displacement |
| `effects.motionblur false` | Disable motion blur |
| `effects.dof false` | Disable depth of field |
| `gfx.ssao false` | Disable ambient occlusion |
| `gfx.bloom false` | Disable bloom |
| `gfx.grain false` | Disable film grain |
| `gfx.shafts false` | Disable sun shafts |

Shadows, water quality, anti-aliasing and particle quality are usually better changed in **Options → Graphics** — the sliders map to the same settings and you can see what you are doing. The console is for the ones the menu doesn't expose, like `vm_fov_scale` and `vm_horizontal_flip`.

## Making Settings Stick

Convars you set in the F1 console apply to the **current session only**. To keep them:

```text
writecfg
```

That writes your current settings and keybinds to your client config files, so they survive a restart. Run it after any change you want to keep — it is the step people forget when their binds vanish overnight.

## Keybinds

Bind any command to a key with `bind <key> "<command>"`, then run `writecfg` to save. Binds live client-side in your `keys.cfg`.

| Bind | What it does |
|---|---|
| `bind q forward;sprint` | Auto-run — tap any movement key to stop |
| `bind t "+voice"` | Push-to-talk on T |
| `bind f lighttoggle` | Toggle flashlight or weapon light |
| `bind p combatlog` | Open the combat log instantly |
| `bind <key> gestures` | Open the gesture wheel |
| `unbind <key>` | Remove a single bind |
| `unbindall` | Clear every custom bind |

> [!WARNING] Some binds will get you banned
> Macro-style movement binds — bunny-hop and auto-jump combinations — are treated as cheating on many servers. Auto-run, push-to-talk and light toggles are universally accepted.

## Chat and Audio

| Command | What it does |
|---|---|
| `chat.say "message"` | Send a message to global chat |
| `chat.teamsay "message"` | Send a message to team chat only |
| `audio.master <0-1>` | Master volume |
| `audio.voices <0-1>` | Player voice volume |
| `audio.game <0-1>` | Game and effects volume |
| `audio.musicvolume <0-1>` | Music volume |
| `voice.loopback true` | Hear your own mic to test it |

## Streamer Mode

| Command | What it does |
|---|---|
| `streamermode true` | Hide player names and server information |
| `streamermode false` | Turn it back off |

Streamer mode hides identifying details that let viewers work out which server you are on and stream-snipe you. Worth binding to a key if you broadcast regularly.

## Combat Log

The combat log is the fastest way to answer "how did I just die?" Type `combatlog` in the F1 console to see your recent damage events — attacker, weapon, ammo, hit area, distance, and your HP before and after each hit.

It is the first thing to check when a death looks suspicious. A player who killed you in three shots at 40 metres with a bolt-action is having a normal day; the log is how you tell that apart from something that warrants a report.

## Connect by IP

| Command | What it does |
|---|---|
| `client.connect <ip:port>` | Join a server directly, e.g. `client.connect 203.0.113.10:28015` |
| `client.disconnect` | Leave the current server |

Useful when a server is not showing in the browser, or to jump straight back into your own server after a restart. Rust's default game port is `28015`.

## Console Commands vs Admin Commands

These get mixed up constantly, so here is the line:

| | Console commands (this page) | Admin commands |
|---|---|---|
| **Who can use them** | Any player | Server owner or moderator, auth level 2 |
| **Where they run** | The F1 console, on your own client | F1 console or RCON, on a server you control |
| **What they change** | Only your game | The server, for everyone on it |
| **Examples** | `fps.limit`, `graphics.fov`, `bind`, `combatlog` | `ownerid`, `kick`, `ban`, `spawn`, `noclip`, `god` |

If you are trying to grant admin, moderate players, spawn items or run events on a server you own, that is the other guide: [Rust Admin Commands](/knowledge-base/rust/admin-commands/).

## FAQ

### How do I open the console in Rust?

Press **F1** in-game. It is enabled by default in current builds.

### How do I see my FPS in Rust?

Type `perf 1` for a live overlay, or `fps` to print the current figure once. `perf 0` turns the overlay off.

### How do I find every Rust console command?

Type `find` followed by a keyword — `find graphics`, `find audio`, `find grass`. It lists every matching convar with its description and current value, which is also how you check whether a command you saw online actually exists.

### How do I change my FOV in Rust?

`graphics.fov 90`, which is the maximum. It can also be set in Options → Screen.

### Do Rust FPS commands actually work?

A few do. `fps.limit`, raising `gc.buffer` to cut stutter, and disabling motion blur and depth of field are real. Most long "FPS command" lists are placebo — run `find` on anything you're unsure about.

### Why do my console settings reset when I restart?

Convars set in the console only last for that session. Run `writecfg` to write them to your config files so they persist.

### How do I bind auto-run in Rust?

`bind q forward;sprint`, then `writecfg` to save it. Press any movement key to stop running.

### How do I turn on streamer mode?

`streamermode true` hides player names and server info; `streamermode false` turns it off.

### What is the difference between console and admin commands?

Console commands are client-side and open to every player. Admin commands require auth level 2 on a server you own or moderate — see [Rust Admin Commands](/knowledge-base/rust/admin-commands/).

## Related Rust Guides

- [Rust Admin Commands](/knowledge-base/rust/admin-commands/) — the server-owner side: ownerid, moderation, spawning and events.
- [Getting started with your Rust server](/knowledge-base/rust/rust-startup/) — setup, connecting and your first admin.
- [Rust Server Lag & Performance](/knowledge-base/rust/server-performance/) — when the stutter is the server's fault, not yours.
- [Rust Wipe Guide](/knowledge-base/rust/wipe-day-guide/) — force wipe schedule and what a wipe resets.

---

Made with 💜 by GameServerKings
