The mechanism, not the complaint

Why does Vimeo compress my video so much?
Because every upload is re-encoded into a ladder of renditions.

Vimeo does not compress your file because it is being cheap with your quality. It compresses because it builds several new versions of every upload, each with a published ceiling on its bitrate, so that one link plays on a phone on cellular and on a desktop on fibre. This page explains that pipeline step by step, then tells you what actually helps.

See what no transcode costs

No credit card required. Cancel any time.

Updated September 2026

The short answer

Vimeo re-encodes every file it receives,
and it publishes the ceiling it re-encodes to.

There is no setting to find, no plan that exempts you and no upload format that slips past it. The compression you are looking at is not a failure in your export. It is the documented behaviour of the platform, described in Vimeo’s own help center.

Vimeo’s own words

“During the transcoding process, your video file is re-encoded into several formats that will be available to view on Vimeo.”

Read that sentence carefully, because it contains the whole mechanism. Not one format, several. Not stored, re-encoded. What you uploaded becomes the input to a batch of new files, and one of those new files is what a viewer’s browser requests when they press play. Your master, whatever bitrate it left your timeline at, is never the thing being streamed.

It is worth saying that Vimeo is not hiding this and is not being stingy. The same help article notes that the file size on Vimeo can sometimes end up larger than the uploaded file, which it attributes to a focus on preserving video quality. A platform trying to save money on your footage does not produce bigger files than it received. The compression has a different cause, and the cause is architectural.

Why every streaming platform does this

One file cannot serve a phone on cellular
and a colourist on fibre.

The reason a ladder exists is a real engineering constraint, not a conspiracy against filmmakers. It is worth understanding properly before deciding whether it is a problem for your particular job.

The bandwidth spread is enormous

The same link gets opened on a train, in an office, on a hotel connection and on a fibre line at home. A single high-bitrate file would play perfectly for one of those viewers and stall permanently for the others. A ladder of renditions lets the player request a rung the connection can actually sustain.

The device spread is just as wide

A five-year-old phone, a locked-down work laptop and a current desktop do not decode the same things. Vimeo states that videos beyond 4K are delivered using HEVC, and that above-4K playback works on Safari 11 and later, Edge 15 and later with supported hardware, macOS 10.13 and later and Windows 10, but not on mobile devices including the Vimeo app and mobile browsers. Multiple encodes are how a platform covers that spread.

The player switches mid-playback

Adaptive delivery is not a single choice at press-play. The player measures throughput continuously and moves up or down the ladder while the video runs. That only works if the rungs exist as separate, pre-built files, which is precisely why the transcode happens on upload rather than on demand.

The result is a link that always works

Send a Vimeo URL to forty people and it plays for forty people, on whatever they happen to be holding, with no instructions and no download. That reliability is what the ladder buys, and it is genuinely valuable. It is also paid for entirely out of your bitrate.

What the ladder costs

The number that decides what your viewer receives
is Vimeo’s ceiling, not your export.

Vimeo publishes a maximum delivery bitrate for every rung. This is more transparency than most platforms offer and it removes the guesswork entirely. Here are the four rungs that matter to anyone delivering finished work.

22 Mbps

4K maximum, H.264

The top rung of Vimeo's standard ladder.

16 Mbps

4K maximum, HDR and HEVC

The top rung of the HDR and above-4K ladder.

12 Mbps

2K maximum, H.264

10 Mbps on the HDR and HEVC ladder.

7 Mbps

1080p60 maximum, H.264

5 Mbps at 1080p on the HDR and HEVC ladder.

Below those, the ladder continues down through 720p at up to 2.5 Mbps, 540p at up to 1.5 Mbps, 360p at up to 0.5 Mbps and 240p at up to 0.3 Mbps. The full table, both ladders side by side, lives on the page about Vimeo’s 4K streaming bitrate, which is where to go if you want the numbers rather than the mechanism.

Now put the delivery ceiling next to the upload advice, because the two come from the same help center. Vimeo’s compression guidelines recommend uploading 4K at 30 to 60 Mbps, 2K at 20 to 30, 1080p at 10 to 20 and 8K at 50 to 80. The platform asks for a large file and then delivers a much smaller one. That is not a contradiction; a clean, high-bitrate source produces a better transcode. But it does mean most of what you upload is spent at conversion, by design, on every plan.

Vimeo's recommended 4K upload, top of range

60 Mbps

Vimeo's published 4K delivery maximum, H.264

up to 22 Mbps

Vimeo's published 4K delivery maximum, HDR and HEVC

up to 16 Mbps

Vimeo's published 1080p60 delivery maximum, H.264

up to 7 Mbps

uncompressed.io

Whatever you uploaded
010203040506070Mbps

Vimeo upload and delivery figures from Vimeo's compression guidelines and playback resolution guidelines, both fetched 4 September 2026. Vimeo states the delivery figures are maximums and that a video may transcode lower depending on the complexity of the image. uncompressed.io has no delivery ceiling to publish because it performs no transcode; the bar is drawn at the top of Vimeo's own recommended 4K upload range to show the shape of the difference, not to claim a fixed rate.

Maximums, not targets

This is why a locked-off shot survives
and grain and movement do not.

The single most useful sentence in Vimeo’s playback documentation is the one that says the published numbers are ceilings. It explains the symptom that makes people search for this page in the first place.

Vimeo’s own words

“The bitrates listed for each resolution are a maximum. This means your video could transcode at a lower bitrate depending on the complexity of the image.”

A modern encoder does not send a full picture every frame. It sends a complete image occasionally and, in between, sends only what changed, plus predictions built from the frames around it. When very little changes, those predictions are cheap and accurate, and the encoder finishes well under its ceiling with the picture intact. When almost every pixel changes every frame, the predictions fail and the encoder has to spend real bits on real detail, until it hits the ceiling and starts discarding.

That is why the failure is never uniform across a film. Dialogue on a clean background comes back looking close to your master. Film grain, rain, smoke, water, foliage, confetti, a handheld whip pan and a slow fade through near-black are all expensive by exactly this mechanism, and they are the first things to go. If the symptom is what brought you here, the page on why Vimeo videos look worse than your export takes it apart shot type by shot type. If the underlying encoding concepts are new, start with what video compression actually is.

Ifull imageBborrowsBborrowsPchanges onlyBborrowsBborrowsPchanges onlyIfull imageOne full image every half second or so. Everything between it is a prediction.

The gate before the ladder

Your 4K file gets a 4K rendition
only if its dimensions clear the threshold.

One step of the pipeline surprises people more than any other, because it happens silently. Vimeo does not build every rung for every upload. Each rendition has a dimension threshold, and a file that lands underneath one simply never gets that rung.

4K rendition

Generated when the larger dimension is at least 3648 pixels, or the smaller dimension is at least 2052 pixels.

2K rendition

Generated when the larger dimension is at least 2432 pixels, or the smaller dimension is at least 1368 pixels.

1080p60 rendition

Generated when the larger dimension is at least 1824 pixels, or the smaller dimension is at least 1026 pixels.

This matters most to people who do not deliver in plain 16:9. A 2.39:1 scope crop, a vertical cut for social, a square export or any letterboxed master can sit below a threshold you assumed you had cleared, and the top rendition is then never built at all. The viewer is not choosing a lower rung; the rung does not exist. Checking the actual pixel dimensions of your export against the numbers above takes a minute and prevents the most avoidable version of this complaint.

Above 4K the gate is stricter still. Vimeo states it will only generate a 5K to 8K transcode if the creator uploaded the file as an HDR video greater than 5K resolution, and that anything beyond 4K is delivered in HEVC with the device restrictions listed earlier. Vimeo’s own marketing on its pricing page sets the general expectation at streaming up to 4K Ultra HD.

Audio rides the same ladder

Vimeo asks you to upload 320 kb/s
and publishes a 256 Kbps ceiling.

The video side gets all the attention, but the audio track goes through the identical process and the numbers are just as public. Vimeo’s compression guidelines recommend uploading audio as AAC-LC at 320 kb/s constant bitrate with a 48 kHz sample rate. Its playback specifications then set the delivered maximum at 256 Kbps for every rendition from 540p through 4K, using AAC and Opus, and state that the audio sample rate for all conversions is 48 kHz.

Lower down the ladder it thins out considerably: a maximum of 129 Kbps at 360p, and a maximum of 64 Kbps at 240p using HE-AAC V2 and Opus. A viewer whose connection drops the player to a low rung is not only watching a softer picture, they are hearing a different mix. For dialogue that is usually survivable. For a music video, a sound-design showcase or anything a composer is being asked to sign off on, it is not.

What actually helps

Four changes that measurably improve the transcode,
from Vimeo’s own documentation.

If you are staying on Vimeo, and plenty of people should, these are the levers that exist. None of them removes the ceiling. All of them give the encoder a better starting point, which is the only part of the pipeline you control.

1

Give the encoder a clean, high-bitrate source

Vimeo recommends 30 to 60 Mbps at 4K, 20 to 30 at 2K, 10 to 20 at 1080p and 2 to 5 for SD. A starved upload arrives with artifacts already baked in, and the transcode faithfully re-encodes those artifacts along with your picture. Export generously even though the delivery is capped.

2

Set CRF to 18 or below

This is Vimeo's own recommendation in its compression guidelines. A lower constant rate factor means the encoder preserves more detail in the file you hand over, which is exactly the detail its transcode has to work from. It costs you disk space on your own machine and nothing else.

3

Use H.264 High Profile, and a constant frame rate

Vimeo lists H.264 High Profile specifically, not Main, alongside ProRes 422 HQ and HEVC as accepted upload codecs. It also asks for a constant frame rate at one of 23.98, 24, 25, 29.97, 30, 50, 59.94 or 60 fps. Variable frame rate from a screen recorder or a phone is a common and entirely avoidable source of trouble.

4

Clear the dimension gates deliberately

Before you export, check the pixel dimensions against the thresholds above so the rendition you want is actually generated. This is the one item on the list that can take you from a missing 4K rung to a present one, which is a bigger quality difference than anything else here.

The other answer

A host that never re-encodes
has nothing to mitigate.

Everything above is advice for improving the input to a process that will still run. The structural alternative is to remove the process. uncompressed.io stores the file you upload and the player streams those exact bytes: no transcode, no rendition ladder, no re-encode of video or audio anywhere in the path. There is no delivery ceiling to publish here because there is no delivery encoder. A 150 Mbps export plays at 150 Mbps.

The practical shape of that: MP4 or MOV in H.264, HEVC or AV1, up to 50 GB per file. A 10-bit 4:2:2 HEVC file is stored and served untouched like any other, though whether a given browser decodes 4:2:2 is not documented by any vendor, in either direction. ProRes 422, ProRes 4444 and DNxHR are hosted for client download rather than streamed, because no browser decodes them, and camera RAW is never uploaded raw or streamed at all; the honest workflow there is to finish to HEVC or ProRes and then upload. No bandwidth is metered on any plan, including the free one. Storage is the only meter.

And the honest cost, stated plainly, because this page would be worthless without it: with no ladder there is no lower rung to fall back to. A viewer on a poor connection buffers instead of silently dropping to a mushy rendition. Playback also depends on that viewer’s hardware decoder, which is a real constraint on very high bitrate or 8K files and not a footnote. Vimeo made the opposite trade deliberately, and for a large audience it is the right one.

When the transcode is the feature

The pipeline you are annoyed at
is the reason the link always works.

Stay with Vimeo if this is your job

If your audience is broad, non-technical and unknown to you, Vimeo’s transcode is doing work you would otherwise have to build yourself. A marketing page, a public showreel, a client’s customers on whatever devices they own, an embed that has to survive a conference wifi network: for all of those, a ladder that quietly degrades is far better than a single file that stalls. Vimeo also has a branded player, in-player calls to action, live event tooling and OTT products with no equivalent here, and none of that is affected by anything on this page. Come to a no-transcode host when the thing you are sending is the finished film, going to a small number of people who need to judge the picture, at the bitrate you graded it at. Those are two different jobs and it is fine to use two tools. Leaving Vimeo without losing your library covers the move if you decide the second job is the one you have.

Questions

Frequently asked

Why does Vimeo compress my video so much?

Because Vimeo re-encodes every upload. Its help center states that during the transcoding process your video file is re-encoded into several formats that will be available to view on Vimeo. Those formats are a ladder of renditions, and Vimeo publishes a maximum delivery bitrate for each one: up to 22 Mbps for 4K on the H.264 ladder, up to 16 Mbps for 4K on the HDR and HEVC ladder, up to 12 Mbps at 2K and up to 7 Mbps at 1080p60. Vimeo's own compression guidelines recommend uploading 4K at 30 to 60 Mbps. The gap between those two numbers is the compression you are seeing.

Can I turn Vimeo's transcoding off?

No. There is no setting, no plan and no file format that skips it. Vimeo states plainly that the transcoding process re-encodes your file into several formats. Uploading ProRes 422 HQ, which Vimeo lists as a recommended upload codec, does not bypass the step either; it only gives the encoder a cleaner source to work from. The only way to avoid a transcode is to use a host that does not perform one.

Does uploading at a higher bitrate make Vimeo's version look better?

Up to a point, yes, and then it stops helping. A cleaner, higher-bitrate source gives the encoder less noise and fewer existing artifacts to spend bits on, which is why Vimeo recommends 30 to 60 Mbps at 4K and a constant rate factor of 18 or below. But the delivered rendition is still capped by Vimeo's published maximum for that resolution, so past a certain point extra upload bitrate improves the encoder's input rather than the viewer's output.

Why does my video look fine in some shots and fall apart in others?

Because the published bitrates are ceilings, not targets. Vimeo states that the bitrates listed for each resolution are a maximum, and that your video could transcode at a lower bitrate depending on the complexity of the image. A locked-off interview on a clean background is cheap to encode and looks close to your master. Film grain, smoke, water, foliage and fast camera movement are expensive, and that is where the encoder runs out of budget first.

Does Vimeo compress the audio too?

Yes, on the same principle. Vimeo's compression guidelines recommend uploading AAC-LC at 320 kb/s constant bitrate and a 48 kHz sample rate. Its playback specifications then publish a maximum delivered audio bitrate of 256 Kbps for renditions from 540p up to 4K, and state that the audio sample rate for all conversions is 48 kHz. The low renditions get far less: a maximum of 64 Kbps at 240p and 129 Kbps at 360p.

Why did my 4K upload never get a 4K rendition?

Because the ladder is dimension-gated. Vimeo generates a 4K rendition only when the larger dimension is at least 3648 pixels or the smaller dimension is at least 2052 pixels, a 2K rendition at 2432 or 1368, and a 1080p60 rendition at 1824 or 1026. A scope crop, a vertical export or any unusual aspect ratio can land below a threshold you assumed you had cleared, and the top rendition is then simply never built.

Is there a way to host video with no re-encode at all?

Yes, and it is a different engineering trade rather than a better version of the same one. uncompressed.io stores the file you upload and streams those exact bytes, with no transcode and no rendition ladder anywhere in the path. The cost of that choice is honest: there is no lower rung for a slow connection to fall back to, so a viewer on poor bandwidth buffers instead of quietly dropping to a mushy rendition. Playback also depends on the viewer's hardware decoder.

Nothing to mitigate

uncompressed.io streams the exact bytes you upload. There is no transcode step, no rendition ladder and no delivery ceiling to publish, because the file the viewer receives is the file you sent.

Why Does Vimeo Compress My Video So Much? The Pipeline