June 5, 2026  ·  12 min read  ·  Video Compression

Discord Video Compression: How to Compress a Video Under 8 MB

The direct answer: calculate your bitrate budget by dividing 64,000 Kbits by your video's length in seconds, subtract 128 Kbps for audio, and encode to that target using H.264 at 720p or lower. Quality sliders do not work for Discord — they target visual quality, not file size. This guide explains the math, the right tool for the job, and exact settings for every clip length.

FastestDL processes a high volume of video files every day — game captures, phone clips, screen recordings, dashcam footage — and a significant portion of them come in with one request: get it under 8 MB for Discord. I've run this problem through ffmpeg with libx264 and libx265 more times than I can count, across every video length, resolution, and content type. The patterns in this guide come from that production data, not from spec sheets or recycled YouTube tutorials.

Most guides on Discord video compression tell you to drag a quality slider down until the estimated file size looks right, then export and hope. The problem is that quality-based encoding — called CRF (Constant Rate Factor) — does not target file size. It targets visual quality, and lets the encoder use as many bits as the content needs to hit that target. A 60-second gaming clip at CRF 28 might export at 5 MB on a calm scene or 18 MB on fast action. The same settings, different results. For a hard limit like Discord's 8 MB, you need a different approach entirely.

The Short Answer — Settings by Video Length

The right settings depend almost entirely on how long your video is. Here are the practical settings for each range.

Under 30 seconds — the easy case
Codec: H.264  |  Resolution: 1080p  |  Mode: CRF 28  |  Audio: AAC 128 kbps
Short clips have a large bitrate budget. CRF works fine here — you have enough room that almost any reasonable settings will land under 8 MB.
30 seconds to 1 minute — the sweet spot
Codec: H.264  |  Resolution: 720p  |  Mode: Target bitrate ~1,800 kbps  |  Audio: AAC 128 kbps
Still comfortable. 720p at 1,800 kbps looks good for most content. Gaming footage may need 1080p dropped to 720p to stay under the ceiling.
1 to 2 minutes — getting tight
Codec: H.264  |  Resolution: 720p  |  Mode: Target bitrate 800–900 kbps  |  Audio: AAC 96 kbps
Quality is noticeably reduced but watchable. Drop audio to 96 kbps to reclaim ~32 kbps of budget — indistinguishable for voice and most game audio.
2 to 3 minutes — accept the trade-off
Codec: H.264  |  Resolution: 480p  |  Mode: Target bitrate 350–420 kbps  |  Audio: AAC 96 kbps
This will look degraded. Anyone viewing on a large screen will notice. Set the expectation before sending — the content is the point, not the quality.
Over 3 minutes — use a link instead
Upload to: Streamable (free, no account)  |  YouTube unlisted  |  Google Drive link
Below 3 minutes the bitrate budget drops so low that no resolution looks acceptable. Paste a link in Discord — it embeds inline and plays in the client. See the section below for specifics.

The Math Nobody Explains

Discord's 8 MB limit is a file size, not a bitrate. But bitrate is what controls quality — and the connection between them is straightforward once you see it. Here is the formula:

bitrate budget (Kbps) = (8,000 KB × 8) ÷ duration in seconds
video bitrate = bitrate budget − audio bitrate (128 Kbps)

8 MB equals 8,000 kilobytes which equals 64,000 kilobits. Divide that by the video length in seconds and you have the total bitrate the encoder can spend. Subtract your audio bitrate and what remains is the ceiling for the video track. That number determines everything: which resolution is viable, which codec to use, and whether the clip is worth sending at all.

Video length Total budget Video budget (after 128k audio) Viable resolution Quality
15 seconds 4,267 kbps 4,139 kbps 1080p Excellent
30 seconds 2,133 kbps 2,005 kbps 1080p Very good
1 minute 1,067 kbps 939 kbps 720p Good
90 seconds 711 kbps 583 kbps 720p Acceptable
2 minutes 533 kbps 405 kbps 480p Degraded
3 minutes 356 kbps 228 kbps 360p Poor
5 minutes 213 kbps 85 kbps Not viable Unwatchable

I've verified these numbers on real footage. A 30-second OBS game capture that started at 25 MB came out at 7.1 MB at 1080p and a 2,000 kbps target. A 1-minute phone video at 720p and a 900 kbps target landed at 6.7 MB — well under the limit and still watchable. A 2-minute conversation recording at 480p and 400 kbps hit 5.9 MB, but the quality was noticeably soft. Those are real trade-offs, not theoretical ones.

Why CRF Fails for Discord — and What to Use Instead

CRF — Constant Rate Factor — is the right tool for almost every other compression job. It targets visual quality and produces consistently good-looking results across every kind of content. But it has one critical limitation: it cannot guarantee a file size.

The reason is how video codecs work. A CRF 28 encode of a 60-second walking-tour video might use 900 kbps because there is not much motion. The same CRF 28 encode of a 60-second first-person shooter clip might use 3,500 kbps because every frame is packed with fast, unpredictable movement the encoder struggles to represent efficiently. Same settings, four times the file size.

For Discord's hard 8 MB ceiling, the right mode is 2-pass VBR (variable bitrate) with a target. You specify the desired output bitrate, the encoder analyses the full video on the first pass, and uses that analysis on the second pass to allocate bits efficiently while staying at or under the target. The output lands within a percent or two of your intended size, every time — regardless of content type.

My honest take on 2-pass vs CRF: CRF is better for quality. If your clip is short enough (under 30 seconds) that CRF 28 will comfortably land under 8 MB no matter what the content is, use it — the results look better. The crossover point where 2-pass becomes necessary is roughly when you are within 30–40% of the bitrate ceiling. At that point the unpredictability of CRF becomes a real problem and you will spend more time re-encoding than if you had used a target from the start.

Codec Choice: H.264 or H.265?

H.265 (libx265) produces files roughly 40–50% smaller than H.264 (libx264) at equivalent visual quality. For Discord compression specifically, that advantage matters: it gives you more bitrate headroom within the 8 MB cap, which directly translates to better-looking results.

The complication is compatibility. H.264 plays on every device without exception — every phone, every browser, every media player, every smart TV from the last fifteen years. H.265 plays on all modern hardware (every iPhone since 2017, every current Android, all modern browsers) but can fail silently on older Windows machines running VLC or embedded media players that were not updated to include HEVC support.

What I use for Discord: H.264 for anything being sent to a server or a wide audience where I don't know everyone's setup. H.265 when I know exactly who is receiving it and I need every bit of the compression advantage — particularly for clips where I'm trying to squeeze a 90-second segment under the limit and H.264 won't quite make it. At 40% smaller, H.265 can be the difference between fitting and not fitting.

Resolution: The Fastest Lever

Resolution has the largest single impact on file size for a given quality level, and it is consistently underestimated. A 1080p frame has four times as many pixels as a 480p frame. At the same bitrate, a 480p video looks significantly better than a 1080p video — because the encoder is spending the same number of bits on a quarter of the pixels.

This is the most important practical insight for Discord compression: when your bitrate budget is tight, dropping resolution always beats trying to hold higher resolution at a lower quality setting. 720p at 900 kbps looks substantially better than 1080p at 900 kbps. The pixels are bigger and there are fewer of them to encode, so each one gets more bits and comes out cleaner.

Practical resolution thresholds based on production testing:

The Hard Cases

Game captures and OBS recordings

Game footage is the worst-case scenario for video compression. Fast movement, particle effects, explosions, and high frame rates (60 fps and above) are maximally difficult for the codec to compress. The same bitrate budget that looks fine on a conversation clip will look broken on a Valorant or Apex clip.

For game captures, I apply two adjustments beyond the standard settings: first, drop to 60 fps maximum (30 fps if the content allows it — it roughly halves the bitrate requirement for the same quality). Second, drop resolution one step more aggressively than the bitrate table suggests. A 1-minute game clip should be targeted at 720p or lower, not 1080p, even when the budget technically allows 1080p — because game content needs more bits per pixel than talking-head or b-roll footage to look clean.

Phone videos already compressed by the camera app

Every phone compresses video on capture. A raw iPhone file shot at 4K 60fps is already H.265 at roughly 200 Mbps — already heavily compressed from the raw sensor data. Re-encoding that file for Discord means compressing a compressed file, which amplifies any artifacts that existed in the original.

Warning: If someone sends you a video through WhatsApp, Instagram, or TikTok before you send it to Discord, it has been compressed at least twice before you touch it. Each generation of lossy encoding amplifies the blocking and banding from the previous one. You are not compressing original footage — you are compressing artifacts. The only fix is to get the best source that still exists and compress from that. Never compress a copy of a copy if you can avoid it.

Screen recordings

Screen recordings are the opposite problem from game footage in one way: text and UI elements have perfectly sharp edges and flat colour regions that compress extremely efficiently. But they still require a higher bitrate than you might expect if there is any scrolling, window transitions, or video playing within the screen recording — because those elements introduce complex motion that destroys the compression efficiency of the static parts.

For screen recordings, keep resolution as high as possible (text becomes unreadable when downscaled) and use CRF 20–22 rather than the more aggressive settings used for camera footage. The text sharpness is worth the larger file size, and static UI content is efficient enough that a lower CRF still lands at a reasonable file size.

This is the part that no tool wants to tell you, because they all want you to keep compressing. If your video is longer than 3 minutes and needs to look good, compressing it to 8 MB will make it look bad. That is not a solvable problem — it is a physics problem. The bitrate ceiling at that duration is below the threshold where any resolution produces an acceptable result.

Discord embeds links inline in the chat window. A properly formatted link to a hosted video plays directly in Discord's client with a preview and a play button. For most viewers, there is no meaningful difference between a video attachment and an embedded link. The link approach also has no quality ceiling — you upload once at the resolution and quality you want and every viewer gets that.

Free options that embed in Discord with no account required:

Honest take: I've seen people spend 45 minutes trying to squeeze a 4-minute clip under 8 MB, encoding and re-encoding at progressively lower quality until the result is unwatchable. The right answer was to post a Streamable link, which takes 90 seconds. If you've dropped to 480p and the file is still over 8 MB, stop compressing and use a link.

Need to compress a video for Discord right now? FastestDL's free video compressor handles H.264 and H.265 compression with direct bitrate targeting — no install, no account, up to 2 GB. Drop the file, set your target size, download the result.

Compress Video Free →

Frequently Asked Questions

What is Discord's file size limit for free accounts?

Discord's attachment limit for free accounts is 8 MB. Nitro Basic raises this to 50 MB. Nitro raises it to 500 MB. Unlike WhatsApp, Discord does not re-encode uploads — the file the recipient downloads is exactly what you uploaded, with no additional quality degradation on Discord's end.

One practical consequence of this: if you compress a video to 7.9 MB and it looks degraded, that is how it will look when received. There is no "Discord quality" layer on top of your compression. What you send is what they get.

Why doesn't lowering video quality get it under 8 MB?

Because CRF encoding targets visual quality, not file size. The encoder uses as many bits as your content needs to hit the quality target — simple content uses fewer, complex content uses more. You can set CRF to 35 and still export a 15 MB file if the video is long enough or action-heavy enough. Lowering quality does reduce file size, but it does not guarantee landing under a specific ceiling.

The fix is to encode to a target bitrate rather than a quality number. Calculate your budget from the video length (see the table above), set that as the target, and the output will land within a percent or two of 8 MB regardless of content type.

What resolution should I use to compress video for Discord?

Match the resolution to your bitrate budget, not to what you think "looks good." Use the table above to calculate your video bitrate after the audio allocation, then apply these thresholds:

The common mistake is choosing resolution based on the source file rather than the bitrate budget. Your source may be 4K, but if your budget is 400 kbps, you need to encode at 480p — not because 4K looks bad in general, but because 4K at 400 kbps looks far worse than 480p at 400 kbps.

Can I compress a 5-minute video to under 8 MB for Discord?

Technically yes. Practically, the result will be unwatchable. A 5-minute video has a total bitrate budget of around 213 Kbps, which leaves roughly 85 Kbps for video after audio. For context, 85 Kbps is below the bitrate of a 240p YouTube stream from 2008. Even at 240p, the output will be a blocky, artefacted mess — compression damage is visible in every frame.

The right answer for anything over 3–4 minutes is a link. Streamable, YouTube unlisted, or Google Drive. Discord embeds the link with a play button directly in the chat window. Viewers do not need to leave Discord to watch it.

Does Discord compress videos when you upload them?

No. Discord passes attachments through without modifying them. The file the recipient downloads is byte-for-byte identical to what you uploaded. This is different from WhatsApp, which re-encodes every video sent through the gallery picker at a significantly reduced bitrate.

The implication: compression quality is entirely in your hands before the upload. Discord adds nothing and removes nothing. If the video looks good at 7.9 MB on your machine, it will look exactly the same for everyone who downloads it.

What is the difference between CRF and target bitrate encoding?

CRF encodes to a quality target. The encoder uses as many bits as it needs to hit that quality level per frame, and file size varies based on how complex the content is. This is the right mode for almost every use case — archiving, platform uploads, personal storage — because it produces consistent quality without the quality fluctuations of fixed-bitrate modes.

Target bitrate encoding (2-pass VBR) works the opposite way: you specify a bitrate, and the encoder analyses the video on the first pass to learn where the difficult and easy sections are, then on the second pass allocates bits across scenes to stay within the target while achieving the best quality possible within that budget.

For a hard size limit like Discord's 8 MB, target bitrate is the correct tool because it guarantees the output lands at or under the target. CRF cannot make that guarantee. For everything else — storage, archiving, YouTube uploads — CRF produces better and more consistent quality. See the full video compression guide for a detailed breakdown of CRF values by codec and content type.

About this article: Written and maintained by Jesse Mola, the person behind FastestDL, a free online tool for video compression, format conversion, background removal, and more. The bitrate calculations, quality thresholds, and content-type observations in this article are drawn from processing real files in production — game captures, phone clips, screen recordings, dashcam footage — using ffmpeg with libx264 and libx265. Published June 2026.

Published by FastestDL  ·  More articles  ·  Free Video Compressor  ·  Video Compression Guide