Skip to main content

CLI options

The default command in package.json that powers npm run build is:

npx remotion render <entry-file> <composition-id> <output-location>
npx remotion render <entry-file> <composition-id> <output-location>


Besides choosing a video and output location with the command line arguments, the following flags are supported:


React Props to pass to the root component of your video. Must be a serialized JSON string (--props='{"hello": "world"}') or a path to a JSON file (./path/to/props.json).


Inline JSON string isn't supported on Windows because it removes the " character, use a temporary file instead.


How many CPU threads to use. Minimum 1. The maximum is the amount of threads you have (In Node.JS os.cpus().length).


Set a custom pixel format. See here for available values.


jpeg or png - JPEG is faster, but doesn't support transparency. The default image format is jpeg since v1.1. Flag available since v1.4.


Specify a location for the Remotion config file. Available in v1.2 and later.


Specify a location for a dotenv file. Default .env. Available in v2.2 and later.


Value between 0 and 100 for JPEG rendering quality. Doesn't work when PNG frames are rendered. Available since v1.4.


Write to output even if file already exists.


Pass this flag if you want an image sequence as the output instead of a video. Available since v1.4.


h264 or h265 or png or vp8 or vp9 or mp3 or aac or wav or prores or h264-mkv. If you don't supply --codec, it will use the H.264 encoder. Available since v1.4.


Set the ProRes profile. This option is only valid if the codec has been set to prores. Possible values: 4444-xq, 4444, hq, standard, light, proxy. See here for explanation of possible values. Default: hq. Available since v2.1.6.


To set Constant Rate Factor (CRF) of the output. Minimum 0. Use this rate control mode if you want to keep the best quality and care less about the file size. Available since v1.4.


Path to a Chrome executable. If not specified and Remotion cannot find one, it will download one during rendering. Available since v1.5.


Render a still frame or a subset of a video. Example: --frames=0-9 (To select the first 10 frames) or --frames=50 (To render a still of the 51st frame). Available since v2.0.


Enable or disable Webpack caching. This flag is enabled by default, use --bundle-cache=false to disable caching. Available since v2.0.


Set the log level. Increase or decrease the amount of output. Acceptable values: error, warning, info (default), verbose


If you don't feel like passing command line flags every time, consider creating a remotion.config.ts config file.


Set a custom HTTP server port. If not defined, Remotion will try to find a free port.


Print the list of available CLI commands and flags.

Example command#

npx remotion render --codec=vp8 src/index.tsx HelloWorld video.webm
npx remotion render --codec=vp8 src/index.tsx HelloWorld video.webm

See also#