Skip to content
← Back to all tools

qutebrowser

Free

Browse entirely from the keyboard, Vim-style

Open Source No Ads No Tracking No Sign-up Cross-platform

A keyboard-focused browser whose interface is little more than the page itself. Written in Python and Qt on top of QtWebEngine, which is based on Chromium. Keys follow Vim — hjkl to scroll, f to label every link with letters, type the letters to follow it. Configuration lives in a Python file, and ad blocking is built in.

Why we picked it

GPL-3.0-or-later, 11,708 stars as of September 2026, currently at 3.7.0 (released April 2026), with commits still landing in the repository.

Vim users feel at home immediately. There is no address bar button and no bookmarks bar, just a tab bar at the top, a status bar at the bottom and the page in between. Everything runs on keys:

  • o opens a URL, O opens it in a new tab, with completion from history and bookmarks as you type.
  • f enters hint mode, labelling every clickable element with letters; type them to follow the link without leaving the keyboard.
  • J / K switch tabs, d closes one, u restores the last closed tab.
  • : opens the command line. Nearly every feature has a command, and any command can be bound to a key.

Settings can be changed with :set or written to config.py. Since it is a real Python file, you can use conditionals, set per-site rules, and keep it in a dotfiles repository synced across machines. Userscripts (external programs in any language) and Greasemonkey scripts are supported.

Ad blocking is built in, using hosts lists by default; with the Python adblock library installed it accepts ABP-syntax filter rules, close to what common blocking extensions do.

To be clear about:

  • No Chrome or Firefox extensions. The engine is Chromium-based, but qutebrowser has no extension system. Needs like password managers are handled through userscripts, for example with KeePassXC or pass.
  • Video codecs may be missing. The official install docs say QtWebEngine installed through pip/virtualenv lacks proprietary codecs such as H.264, so some sites' video will not play. Distribution packages and the official installers vary.
  • The engine version depends on your Qt. Debian stable and Ubuntu LTS only update QtWebEngine with a new distribution release, and the docs warn that the Chromium base on those systems can be quite old and behind on security fixes.
  • A small team. The main maintainer works on it part-time, funded by donations, so it moves more slowly than big-vendor browsers.
  • The key-driven workflow takes a day or two to learn. Someone new to Vim may not even find how to enter a URL on first launch (press o).