Command Line Arguments

Blender 3.3 Usage: blender [args …] [file] [args …]

Render Options

-b, --background

Run in background (often used for UI-less rendering).

-a, --render-anim

Render frames from start to end (inclusive).

-S, --scene <name>

Set the active scene <name> for rendering.

-f, --render-frame <frame>

Render frame <frame> and save it.

  • +<frame> start frame relative, -<frame> end frame relative.

  • A comma separated list of frames can also be used (no spaces).

  • A range of frames can be expressed using .. separator between the first and last frames (inclusive).

-s, --frame-start <frame>

Set start to frame <frame>, supports +/- for relative frames too.

-e, --frame-end <frame>

Set end to frame <frame>, supports +/- for relative frames too.

-j, --frame-jump <frames>

Set number of frames to step forward after each rendered frame.

-o, --render-output <path>

Set the render path and file name. Use // at the start of the path to render relative to the blend-file.

The # characters are replaced by the frame number, and used to define zero padding.

  • animation_##_test.png becomes animation_01_test.png

  • test-######.png becomes test-000001.png

When the filename does not contain #, The suffix #### is added to the filename.

The frame number will be added at the end of the filename, eg:

blender -b animation.blend -o //render_ -F PNG -x 1 -a

//render_ becomes //render_####, writing frames as //render_0001.png

-E, --engine <engine>

Specify the render engine. Use -E help to list available engines.

-t, --threads <threads>

Use amount of <threads> for rendering and other operations [1-64], 0 for systems processor count.

Format Options

-F, --render-format <format>

Set the render format. Valid options are: TGA RAWTGA JPEG IRIS IRIZ AVIRAW AVIJPEG PNG BMP

Formats that can be compiled into Blender, not available on all systems: HDR TIFF OPEN_EXR OPEN_EXR_MULTILAYER MPEG CINEON DPX DDS JP2 WEBP

-x, --use-extension <bool>

Set option to add the file extension to the end of the file.

Animation Playback Options

-a <options> <file(s)>

Instead of showing Blender’s user interface, this runs Blender as an animation player, to view movies and image sequences rendered in Blender (ignored if -b is set).

Playback Arguments:

-p <sx> <sy>

Open with lower left corner at <sx>, <sy>.


Read from disk (Do not buffer).

-f <fps> <fps-base>

Specify FPS to start with.

-j <frame>

Set frame step to <frame>.

-s <frame>

Play from <frame>.

-e <frame>

Play until <frame>.

-c <cache_memory>

Amount of memory in megabytes to allow for caching images during playback. Zero disables (clamping to a fixed number of frames instead).

Window Options

-w, --window-border

Force opening with borders.

-W, --window-fullscreen

Force opening in fullscreen mode.

-p, --window-geometry <sx> <sy> <w> <h>

Open with lower left corner at <sx>, <sy> and width and height as <w>, <h>.

-M, --window-maximized

Force opening maximized.

-con, --start-console

Start with the console window open (ignored if -b is set), (Windows only).


Do not use native pixel size, for high resolution displays (MacBook Retina).


Open behind other windows and without taking focus.

Python Options

-y, --enable-autoexec

Enable automatic Python script execution (default).

-Y, --disable-autoexec

Disable automatic Python script execution (pydrivers & startup scripts).

-P, --python <filepath>

Run the given Python script file.

--python-text <name>

Run the given Python script text block.

--python-expr <expression>

Run the given expression as a Python script.


Run Blender with an interactive console.

--python-exit-code <code>

Set the exit-code in [0..255] to exit if a Python exception is raised (only for scripts executed from the command line), zero disables.


Allow Python to use system environment variables such as PYTHONPATH and the user site-packages directory.

--addons <addon(s)>

Comma separated list (no spaces) of add-ons to enable in addition to any default add-ons.

Logging Options

--log <match>

Enable logging categories, taking a single comma separated argument. Multiple categories can be matched using a .* suffix, so --log "wm.*" logs every kind of window-manager message. Sub-string can be matched using a * prefix and suffix, so --log "*undo*" logs every kind of undo-related message. Use “^” prefix to ignore, so --log "*,^wm.operator.*" logs all except for wm.operators.* Use “*” to log everything.

--log-level <level>

Set the logging verbosity level (higher for more details) defaults to 1, use -1 to log all levels.


Only show file name in output (not the leading path).


Show a back trace for each log message (debug builds only).


Show a timestamp for each log message in seconds since start.

--log-file <filepath>

Set a file to output the log to.

Debug Options

-d, --debug

Turn debugging on.

  • Enables memory error detection

  • Disables mouse grab (to interact with a debugger in some cases)

  • Keeps Python’s sys.stdin rather than setting it to None

--debug-value <value>

Set debug value of <value> on startup.


Enable debug messages for the event system.


Enable debug messages from FFmpeg library.


Enable debug messages for event handling.


Enable debug messages from libmv library.


Enable debug messages from Cycles.


Enable fully guarded memory allocation and debugging.


Enable time profiling for background jobs.


Enable debug messages for Python.


Enable all debug messages from dependency graph.


Enable debug messages from dependency graph related on evaluation.


Enable debug messages from dependency graph related on graph construction.


Enable debug messages from dependency graph related on tagging.


Switch dependency graph to a single threaded evaluation.


Enable debug messages from dependency graph related on timing.


Enable colors for dependency graph debug messages.


Verify validness of session-wide identifiers assigned to ID datablocks.


Enable debug messages for Ghost (Linux only).


Enable debug messages for Wintab.


Enable GPU debug context and information for OpenGL 4.3+.


Enable workarounds for typical GPU issues and disable all GPU extensions.


Enable debug messages for the window manager, shows all operators in search, shows keymap errors.


Enable debug messages for virtual reality contexts. Enables the OpenXR API validation layer, (OpenXR) debug messages and general information prints.


Enable debug messages for virtual reality frame rendering times.


Enable all debug messages.


Enable debug messages for I/O (Collada, …).


Enable floating-point exceptions.


Immediately exit when internal errors are detected.


Disable the crash handler.


Disable the abort handler.

--verbose <verbose>

Set the logging verbosity level for debug messages that support it.

Misc Options


Open the most recently opened blend file, instead of the default startup file.

--app-template <template>

Set the application template (matching the directory name), use default for none.


Skip reading the startup.blend in the users home directory.


Enable event simulation testing feature bpy.types.Window.event_simulate.


Set the BLENDER_SYSTEM_DATAFILES environment variable.


Set the BLENDER_SYSTEM_SCRIPTS environment variable.


Set the BLENDER_SYSTEM_PYTHON environment variable.


Force sound system to None.


Force sound system to a specific device. None SDL OpenAL CoreAudio JACK PulseAudio WASAPI.

-h, --help

Print this help text and exit.


Print this help text and exit (Windows only).


Register blend-file extension, then exit (Windows only).


Silently register blend-file extension, then exit (Windows only).

-v, --version

Print Blender version and exit.


End option processing, following arguments passed unchanged. Access via Python’s sys.argv.

Other Options


Enable debug messages for Freestyle.

Argument Parsing

Arguments must be separated by white space, eg:

blender -ba test.blend

…will exit since -ba is an unknown argument.

Argument Order

Arguments are executed in the order they are given. eg:

blender --background test.blend --render-frame 1 --render-output '/tmp'

…will not render to /tmp because --render-frame 1 renders before the output path is set.

blender --background --render-output /tmp test.blend --render-frame 1

…will not render to /tmp because loading the blend-file overwrites the render output that was set.

blender --background test.blend --render-output /tmp --render-frame 1

…works as expected.

Environment Variables


Directory for user configuration files.


Directory for user scripts.


Directory for system wide scripts.


Directory for user data files (icons, translations, ..).


Directory for system wide data files.


Directory for system Python libraries.


Path to override the OpenColorIO config file.


Store temporary files here.


or $TMPDIR Store temporary files here.