Resolve, Deliver page
DaVinci Resolve export settings for web.
One preset from a free script, or the values by hand.
For a web master that people watch as you exported it, we render MP4, H.265, Main10, restricted to 80,000 kb/s for 4K, with the timeline's resolution and frame rate and AAC audio at 48 kHz. A free script saves those values as a Resolve render preset and uploads your latest render. Below are the values, what the script does and does not set, and when to use something else.
Video hosting for filmmakers · 5 GB free · Paid plans from USD 9/month
By uncompressed.io · Updated September 2026
The Deliver page values
Eight settings,
and the reason for each.
Blackmagic describes the Deliver page as the place with control over all encoding options and formats, plus a render queue. These are the values we use there for a web master. They are our recommendations, not a Blackmagic preset.
Field names are as our script sets them through Resolve's scripting API. We did not check the labels against Blackmagic's manual, and they can vary between Resolve versions.
The free script
It saves the preset once,
then uploads your last render.
uncompressed-resolve.py is a plain Python file that runs from Resolve’s Workspace menu. It uses only the Python standard library, so there is nothing to install.
Put the script in Resolve's Scripts folder
On macOS: ~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Fusion/Scripts/Utility. On Windows: %APPDATA%\Blackmagic Design\DaVinci Resolve\Support\Fusion\Scripts\Utility.
Add your API key once
Create a file named .uncompressed in your home folder with one line: api_key= followed by the key from the API key panel in your dashboard.
Render as usual
Use the uncompressed.io master (HEVC) preset or your own. The script uploads the most recent completed job in the current project's render queue.
Run it
Workspace > Scripts > Utility > uncompressed-resolve. Progress shows in Workspace > Console, then a watch link (the film is unlisted) and a manage link for title, poster frame and visibility.
What the script sets, and what it leaves to you
On first run it tries to save a preset called uncompressed.io master (HEVC) with MP4, H.265, Main10, a maximum of 80,000 kb/s, AAC at 48 kHz and the whole timeline. Three things are left to you. Resolve’s scripting API has no control for the AAC bitrate, so set 320 kb/s once and save the preset again. The preset is the 4K value, so for 1080p work duplicate it and lower the limit to about 32,000. On an older Resolve build that declines one of the calls, no preset is saved; the script says so in the Console and the upload still runs.
How far to move the limit
Resolution sets the band,
the picture decides where in the band.
If one number is enough, start at 80 Mbps HEVC 10-bit: it covers 1080p through 4K. Go to 40 to 50 Mbps for calm material (an interview or a screen recording) and 100 to 120 for busy frames (snow, rain, water, foliage, heavy grain or a fast pan). In Resolve’s kb/s, 80 Mbps is 80,000.
Our recommended ranges for a file that is streamed as uploaded. They are far above what the platforms below deliver, because nothing re-encodes the file after you render it.
When these values are the wrong ones
If the film is going to a platform that re-encodes,
follow the platform's numbers.
35 to 45
YouTube upload, 4K
Mbps, 2160p SDR at standard frame rates. An upload recommendation
8
YouTube upload, 1080p
Mbps, SDR at standard frame rates. An upload recommendation
22
Vimeo delivery max, 4K
Mbps, H.264; 16 for its 4K HDR/HEVC rendition
7
Vimeo delivery max, 1080p
Mbps, 1080p 60 fps, H.264
YouTube’s upload guidance asks for MP4 with the moov atom at the front, H.264 High Profile, variable bitrate, audio in AAC-LC, Opus or Eclipsa Audio at 48 kHz and BT.709 for SDR. Those are upload recommendations; they say nothing about what YouTube plays back. Vimeo’s figures go the other way: they are the most it delivers, per rendition, whatever you uploaded. For either platform, follow its own page. Blackmagic’s product page also points to Resolve’s quick export tool for uploading to YouTube, Vimeo and X.
Change the codec, not the host, when the client’s device may not decode HEVC. Our upload page recommends H.264 video with AAC audio for the broadest browser compatibility, and before a file uploads it tries to decode it in your browser. If it cannot, it says playback could not be verified in this browser and offers to upload the original anyway. That check proves playback on your machine, not on the client’s. Browser playback uses your uploaded export without another platform re-encode. Codec, device and connection requirements still apply.
A ProRes master uploads through the same script and is kept for download, but browsers do not stream ProRes, so pair it with an H.264 or H.265 render for watching. For the case for each codec, container and bitrate choice, see best export settings for client review.
Questions
Frequently asked
Why H.265 Main10 and not H.264?
Main10 is the 10-bit profile, which keeps gradients such as skies and falloff in 1,024 steps per channel instead of 256. For the same picture, our recommended HEVC bands are lower than the H.264 ones. The trade is compatibility: H.264 plays in more browsers and on more devices, and HEVC playback depends on the viewer's device. If you do not know what the client watches on, render H.264 as well.
Does the script change my render?
No. It saves a preset and uploads a file; it does not re-render anything. On first run it sets the current project's render settings to the preset values and tries to save them under the name uncompressed.io master (HEVC). It then uploads the most recent completed render in the current project's render queue, whatever preset that render used.
What if the preset does not appear on the Deliver page?
The script tries to install the preset and tells you in the Console if Resolve declined one of the calls, which can happen on older builds. The upload still goes ahead. Set the values by hand from the table on this page and save the preset yourself.
Can the script upload a ProRes render?
It uploads any completed single-file render, so yes. ProRes is hosted for download and does not stream in a web browser, so render an H.264 or HEVC file as well for the client to watch. Image-sequence renders such as EXR frames are skipped, because they are not one file.
Should I use these settings for YouTube or Vimeo?
You can, but those platforms re-encode what you upload. YouTube publishes its own upload recommendations, and Vimeo publishes the maximum bitrates it delivers. Follow those for a platform upload. These values are for a host that serves your file as uploaded.
Render once, share the file you rendered
Run the script after your render and the film arrives unlisted with a watch link. Browser playback uses the file you uploaded, with no second encode on our side. Pick a plan for storage and seats when you need room for more films.
Sources
- 1.Blackmagic Design, DaVinci Resolve product page: the Deliver page, the render queue and the quick export tool (fetched 18 September 2026)
- 2.YouTube Help, YouTube recommended upload encoding settings (fetched 18 September 2026)
- 3.Vimeo Help Center, Guidelines for determining playback resolution (fetched 18 September 2026)
- 4.uncompressed.io, uncompressed-resolve.py: the upload script and the render preset it saves (read in full) (checked 18 September 2026)
