Skip to content

btop ​

btop is an interactive, GPU-capable terminal resource monitor. It displays real-time statistics for CPU, memory, disks, network, and running processes with a customizable, mouse-supportable graphical UI.


1. Quick Comparison with standard top ​

Featuretopbtop
User InterfacePlain text / Minimalist✅ Rich, colorized graphs with box layouts
Mouse Interaction❌ No✅ Yes (fully clickable menu, boxes, and lists)
GPU Monitoring❌ No✅ Yes (monitors NVIDIA, AMD, Intel GPU usage)
Process ControlBasic commands only✅ Simplified filtering, tree toggling, and signaling
Interface Customization❌ No✅ Yes (change layouts, update rate, themes on-the-fly)

2. Command Line Options ​

Use startup flags to customize performance, themes, or configure layout before launching.

bash
# Basic launch
btop

# Force TTY mode (useful for SSH connections - uses 16 colors and basic graphs)
btop --tty

# Use low-color mode (disables truecolor 24-bit rendering, uses 256 colors)
btop --low-color

# Set startup update rate in milliseconds (e.g. 500ms)
btop --update 500

# Start with an initial process search filter
btop --filter "nginx"

# Load a custom configuration file
btop --config /path/to/custom/btop.conf

3. General Navigation & Interface Controls ​

Adjust panels, presets, and main options using these hotkeys.

KeyActionDescription
mMain MenuOpen settings, change color theme, and read help documentation.
pNext PresetCycle through preset box view combinations.
1Toggle CPUShow/hide CPU box.
2Toggle MemoryShow/hide Memory and Disk box.
3Toggle NetworkShow/hide Network traffic box.
4Toggle ProcessesShow/hide Process tracking box.
+ / -Update SpeedIncrease / decrease refresh frequency by 100ms.
Esc / qQuitExit the program.

4. Process Panel Controls ​

Manage running services and threads interactively.

KeyActionDescription
↑ / ↓ (or j / k)Navigate ListScroll through the running processes.
EnterProcess DetailsView memory, path, CPU usage, and parent info for the selected process.
fFilterSearch processes by typing name. Press Enter to search or Esc to clear.
tTree ViewToggle nested parent/child tree formatting.
rReverse SortReverse sorting order of active column.
kKill ProcessSend SIGKILL (9) immediately to selected process.
sSend SignalOpen menu to select custom Unix signal (e.g. SIGTERM, SIGINT).

5. Network Panel Controls ​

Check bandwidth status.

KeyActionDescription
nSwitch InterfaceCycle through active network cards (e.g. eth0, wlan0).
bToggle UnitSwitch display format between bytes (B/s) and bits (b/s).
aAuto-ScaleToggle automatic scaling of graph heights.
zZero CountersReset total download and upload data statistics to 0.

6. Configurations (btop.conf) ​

You can modify btop's defaults directly in the configuration file.

  • File Location: ~/.config/btop/btop.conf
  • Theme Directory: ~/.config/btop/themes/

Common Config Tweaks (~/.config/btop/btop.conf): ​

toml
# Enable Vim keys navigation (h, j, k, l, g, G)
vim_keys = true

# Change default sampling interval (in milliseconds)
update_ms = 1000

# Customize visible panels on startup
shown_boxes = "cpu mem net proc"

# Enable/disable mouse input
disable_mouse = false

# Toggle terminal transparency background
theme_background = false