iTerm2
by George Nachman (iTerm2 project) · Application · also known as iTerm
Feature-rich terminal emulator for macOS with split panes, profiles, triggers, search, tmux integration and a Python scripting API
Overview
iTerm2 is a terminal emulator for macOS maintained by George Nachman and released under the GPL version 2. It replaces the built-in Terminal.app with a far larger feature set: split panes and tabs, per-profile settings, hotkey windows, regex-based triggers that react to output, instant replay of past screen contents, inline image display, password management, and shell integration that tracks the current directory and command status.
Its tmux integration (tmux -CC) maps tmux windows and panes onto native iTerm2 tabs and splits so remote sessions behave like local ones, which is convenient when working across many SSH hosts. A Python API allows scripting of windows, sessions and profiles. iTerm2 is macOS-only and has accumulated a large preferences surface that can feel heavy compared with newer emulators such as Ghostty; GPU rendering is available but the application is not as fast on very high-throughput output as some competitors. Downloads are free, with optional donations.
Capabilities
- Split panes, tabs and hotkey windows
- Profiles with per-host settings and badges
- Triggers that act on matching output
- Native tmux integration (tmux -CC)
- Shell integration and command history
- Python scripting API
- Inline images and search with regex
Typical workflows
- Attach to a tmux session on a remote node with native tabs
- Define per-server profiles that switch colors and settings on SSH
- Automate window layouts with the Python API
Strengths
- Very broad feature set for macOS
- Mature and long maintained
- Free software under the GPL
Limitations
- macOS only
- Large settings surface
- Not the fastest renderer for heavy output
Prerequisites
- macOS; download from iterm2.com or Homebrew cask
Who it is for
- macOS developers and system administrators
- Users managing many SSH sessions
Alternatives & comparison
Ghostty offers a leaner, GPU-rendered native terminal with fewer features but simpler configuration. Warp adds AI and block-based output as a commercial product. iTerm2 remains the most configurable of the three and the only one with native tmux control mode.
- Ghostty
Native, GPU-accelerated terminal emulator for macOS and Linux written in Zig, with platform-native UI and a cross-platform core library
Open sourceOpen source - tmux
Terminal multiplexer that keeps shell sessions alive on a server, splits a terminal into windows and panes, and lets sessions be detached and reattached
Open sourceOpen source - Warp
Commercial terminal built in Rust that groups output into blocks, adds an IDE-style input editor and integrates AI agents for command generation and debugging
ProprietaryFreemium
Sources & verification
Primary sources consulted for this record. Claims are tied to the fields each source supports; the automated link checker re-verifies every URL on a schedule.
- Licensehttps://gitlab.com/gnachman/iterm2/-/blob/master/LICENSEchecked Nov 1, 2026
Supports: license_spdx, source_model
- Official documentationchecked Nov 1, 2026
- Official sitechecked Nov 1, 2026
- Confidence
- High
- Reviewed
- Nov 1, 2026
- Links
- Verified · Nov 2, 2026
Spotted an error?
More in Terminals & shells
tmux
tmux project (Nicholas Marriott) · Terminals & shells
Terminal multiplexer that keeps shell sessions alive on a server, splits a terminal into windows and panes, and lets sessions be detached and reattached
GNU Parallel
GNU Project (Ole Tange) · Distributed & parallel computing
Shell tool that runs commands in parallel over input lines on one or several machines, as a drop-in alternative to xargs and shell loops
Neovim
Neovim project · IDEs & editors
Modal, terminal-based text editor forked from Vim with Lua configuration, a built-in LSP client and Tree-sitter parsing
Starship
Starship contributors · Terminals & shells
Cross-shell command prompt written in Rust that shows Git status, language versions, cloud context and more from one TOML configuration