A keyboard-driven, vim-like browser based on PyQt5.


Open qutebrowser with a specified storage directory

$ qutebrowser --basedir [path/to/directory]

Open a qutebrowser instance with temporary settings
$ qutebrowser --set [content.geolocation] [true|false]

Restore a named session of a qutebrowser instance
$ qutebrowser --restore [session_name]

Launch qutebrowser, opening all URLs using the specified method
$ qutebrowser --target [auto|tab|tab-bg|tab-silent|tab-bg-silent|window|private-window]

Open qutebrowser with a temporary base directory and print logs to stdout as JSON
$ qutebrowser --temp-basedir --json-logging


qutebrowser [-OPTION [...]] [:COMMAND [...]] [URL [...]]


qutebrowser is a keyboard-focused browser with a minimal GUI. It’s based on Python and Qt5 and is free software, licensed under the GPL.

It was inspired by other browsers/addons like dwb and Vimperator/Pentadactyl.

Note the commands and settings of qutebrowser are not described in this manpage, but in the help integrated in qutebrowser - use the ":help" command to show it.


positional arguments


Commands to execute on startup.


URLs to open on startup (empty as a window separator).

optional arguments

-h, --help

show this help message and exit


Base directory for all storage.

-C CONFIG, --config-py CONFIG

Path to

-V, --version

Show version and quit.


Set a temporary setting for this session.

-r SESSION, --restore SESSION

Restore a named session.

-R, --override-restore

Don’t restore a session even if one would be restored.

--target {auto,tab,tab-bg,tab-silent,tab-bg-silent,window,private-window}

How URLs should be opened if there is already a qutebrowser instance running.

--backend {webkit,webengine}

Which backend to use.

--desktop-file-name DESKTOP_FILE_NAME

Set the base name of the desktop entry for this application. Used to set the app_id under Wayland. See

debug arguments

-l {critical,error,warning,info,debug,vdebug}, --loglevel {critical,error,warning,info,debug,vdebug}

Override the configured console loglevel

--logfilter LOGFILTER

Comma-separated list of things to be logged to the debug log on stdout.

--loglines LOGLINES

How many lines of the debug log to keep in RAM (-1: unlimited).

-d, --debug

Turn on debugging options.


Output log lines in JSON format (one object per line).


Turn off colored logging.


Force colored logging


Don’t show the main window.

-T, --temp-basedir

Use a temporary basedir.


Don’t show any error windows (used for tests/

--qt-arg NAME VALUE

Pass an argument with a value to Qt. For example, you can do --qt-arg geometry 650x555+200+300 to set the window geometry.

--qt-flag QT_FLAG

Pass an argument to Qt as flag.


Pass name of debugging feature to be turned on.



~/.config/qutebrowser/ Configuration file.


~/.config/qutebrowser/autoconfig.yml: Configuration done via the GUI.


~/.config/qutebrowser/quickmarks: Saved quickmarks.


~/.local/share/qutebrowser/: Various state information.


~/.cache/qutebrowser/: Temporary data.

Note qutebrowser conforms to the XDG basedir specification - if XDG_CONFIG_HOME, XDG_DATA_HOME or XDG_CACHE_HOME are set in the environment, the directories configured there are used instead of the above defaults.


Bugs are tracked in the Github issue tracker at

If you found a bug, use the built-in :report command to create a bug report with all information needed.

If you prefer, you can also write to the mailinglist at instead.

For security bugs, please contact me directly at, GPG ID 0xFD55A072.


This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see





Mailinglist: /


Announce-only mailinglist: /


IRC: #qutebrowser on Libera Chat




qutebrowser was written by Florian Bruhin. All contributors can be found in the README file distributed with qutebrowser.

Copied to clipboard