How to Compress a Video for Discord (Under 25 MB, No Upload)

Discord's free tier caps a single upload at 25 MB and it does not re-encode an oversized video to fit, so the upload is simply refused. Compress the file before you send it: lower the resolution, drop the frame rate and pick a quality level, in a browser tab that never uploads the video anywhere.

The usual culprit is a 1080p 60 fps recording, which runs at roughly 30 to 60 MB per minute. Moving it to 720p at 30 fps and a medium quality level typically cuts the file by 60 to 80 percent, which clears 25 MB for most gameplay clips, bug recordings and voice channel highlights under a minute. Size depends on how much motion is in the frame, so the tool reports the result size before you download anything, and you can re-run it with different settings as often as you like.

What makes this annoying is that the failure is silent until it is not: the file uploads to about ten percent, then Discord tells you it is too large and you start guessing. The sections below cover what Discord will actually accept, the exact settings that get a clip under the limit, and the places where a browser compressor stops being the right tool.

Video Compressor

Set resolution, frame rate and quality, then download an MP4 that plays inline in Discord. The file never leaves your device.

Open the compressor

What Discord actually accepts

Discord applies one file size limit per upload, and it is the same limit for every file type rather than a video-specific one.

AccountLimit per file
Free25 MB
Nitro Basic50 MB
Nitro500 MB

Those numbers are Discord's and they have moved in both directions over the years, so the practical advice is to check the figure your own client shows rather than trusting a number from an article, including this one. A server that has reached a boost level also raises the limit for everyone posting inside it, which is why the same clip uploads in one community and is refused in another.

Two details matter more than the exact ceiling. First, Discord does not shrink a video to fit. It serves the file you sent, so an oversized clip is rejected instead of being quietly transcoded. Second, the player needs the index at the front of the file. MP4 files store a small table of contents called the moov atom, and Discord only shows an inline player when that table sits at the beginning. Files written with it at the end often appear as a plain attachment you have to download, which defeats the purpose of posting a clip in a chat. This is a real difference between compressors: many produce a valid MP4 that will not preview.

FormatWhat Discord does with it
MP4, H.264 video with AAC audioPlays inline. The safe choice for a clip.
MOV, WebMUsually accepted and usually playable.
AVI, MKVUploads, but shows as a download link with no preview.

How to compress a video for Discord

  1. Add your video. Drop the file into the compressor. It is read from your disk into the page, so the video is never uploaded, and there is no file size limit other than your own memory.
  2. Set resolution, frame rate and quality. Start with 720p, 30 fps and the quality slider in the Small or Balanced band, then look at the size the tool reports. If it is still over your limit, go down one more step.
  3. Download the MP4 and post it. The output is written with the index at the front, so it plays inline in Discord rather than appearing as an attachment.

Each run gives you a before and after size, so the loop is quick: adjust, compress, read the number. Nothing is destructive and your original file is untouched.

Which settings to use

The quality slider is not a percentage or a size target. It maps to a video quality value called CRF, where lower numbers mean better quality and a larger file. Knowing the mapping takes the guessing out of it:

Slider labelSlider rangeCRFWhat it is for
Best10020Large Nitro uploads, or a very short clip you want clean
High75 to 9928 to 20Clips that should look sharp at full screen
Balanced50 to 7436 to 28The default. A sane starting point for most clips
Small25 to 4943 to 36Fitting a 25 MB cap on longer or busier footage
Smallest1 to 2451 to 44Last resort. Blockiness becomes visible on motion

Resolution and frame rate usually do more work than the quality slider. Halving the resolution cuts the pixel count to a quarter, and halving the frame rate roughly removes half the frames the encoder has to describe. Both are also easier to spare than sharpness, because a 720p clip at good quality reads as clean while a 1080p clip at low quality reads as blocky.

Your footageResolutionFrame rateQuality
Gameplay or action, 1080p 60 fps720p30 fpsSmall
Screen recording or tutorial720p30 fpsBalanced
Short clip under 30 secondsOriginal30 fpsBalanced
Talking head, mostly static720p24 fpsSmall

Two rough numbers help when you are estimating before you start. At 720p and 30 fps, expect somewhere between 5 and 15 MB for every minute of video. At 1080p and 30 fps, expect 15 to 35 MB per minute. Footage with heavy motion or fine detail sits at the top of those ranges, and screen recordings with large unchanging areas sit at the bottom.

What this compressor does not do

Worth knowing before you start, because these are the cases where a different tool is the right answer.

  • It has no "make it exactly 25 MB" field. The compressor is quality-first, so you choose a quality level and the size follows. Hitting a precise number requires two-pass encoding with a calculated bitrate, which is a desktop FFmpeg job rather than a browser one.
  • Audio is fixed at 128 kbps. There is no audio bitrate control. That is fine for voice and acceptable for music, but it is not adjustable here, so a music clip will not get smaller through the audio track.
  • WebM output uses VP8, not VP9. The WebM path exists for compatibility, but H.264 in MP4 produces a smaller file at the same visual quality, so MP4 is the better default for Discord.
  • Resolution only goes down. Choosing 1080p will not upscale a 720p source. It only stops anything taller than 1080p from passing through.
  • The first run downloads about 30 MB. That is the video engine, which is cached afterwards. It is the cost of doing the encoding on your machine instead of someone else's.
  • Long files are slow. A few minutes or a couple of hundred megabytes will take a while, because the work happens on your device. Trimming first is always faster than compressing footage you are going to cut anyway.

If the file is still too large

Work down this list in order. The first two items usually decide it on their own.

  1. Halve the resolution. 1080p to 720p roughly quarters the pixel count, and 720p to 480p does it again. This is the single biggest lever.
  2. Halve the frame rate. 60 fps to 30 fps removes about half the frames. Only keep 60 fps if the clip is very short or the motion is the point.
  3. Move the quality slider down one band. From Balanced to Small is a real step, and it is the one that costs the least visually if the resolution is already reasonable.
  4. Trim the clip. A 90 second recording that needs to be 40 seconds is carrying more than half a file you do not need. The video trimmer cuts it without re-encoding the parts you keep if you use the stream copy mode.
  5. Send a link instead. If the video genuinely needs to be 1080p 60 fps and three minutes long, compression is the wrong tool and a cloud link is the right one.

Why compress in the browser instead of uploading

The obvious alternative is a converter site: send the video to a server, get a smaller one back. That works, and it is a reasonable choice for a clip you do not mind handing over. It is a poor choice for the kind of footage people actually post to Discord, which tends to be an internal screen, a private voice channel, a bug repro from a work project or a game in closed beta.

AihangsoftUpload-based converter
Where the video goesStays in the browser tabSent to their servers
Size and daily limitsNone beyond your own memoryOften capped, sometimes watermarked
Setting controlQuality, resolution, frame rate, formatUsually a preset or a slider
Works offlineYes, after the first loadNo
AccountNot neededSometimes required for larger files

The trade-off is speed and file size. A server with real hardware encodes faster than your laptop, and browser memory puts a practical ceiling on how long a video you can process. For the 20 second to 2 minute clips that Discord limits actually apply to, that trade-off is usually worth taking.

Frequently asked questions

Free Discord accounts can upload a single file of up to 25 MB. Nitro Basic raises the per-file limit to 50 MB, and full Nitro raises it to 500 MB. The limit applies to every file type, not just video, and it applies in direct messages, group chats and server channels alike. Servers that have reached a boost level also lift the limit for everyone posting inside that server, which is why a clip can upload in one community and be refused in another. Discord has changed these numbers more than once, and it has moved them downward as well as upward, so the figure in your own client is the one that decides whether an upload goes through. If you are unsure, compress to a little under your tier limit rather than aiming exactly at it, because a file that is a fraction over is still refused.
Because the file is over your account per-file limit, and Discord does not re-encode uploads to make them fit. It serves the file you send, so there is no background process quietly shrinking an oversized video. A 30 second recording from a modern phone can easily reach 60 to 100 MB at 1080p and 60 fps, which is several times the free tier limit. The fix is to reduce the file before uploading rather than retrying the same upload, because a retry produces the same error until the size changes. Compressing to 720p at 30 fps usually brings a clip of that length under 25 MB while keeping it watchable in Discord's inline player. Leave a small margin rather than aiming at the number exactly. One more thing worth knowing is that the limit counts the whole file, so trimming a long recording is usually faster than compressing all of it.
No. Discord does not transcode uploaded video to fit your limit. It stores and serves the file you sent, which is why an oversized clip is refused instead of being quietly shrunk. This is also why the container matters: an MP4 written with its index at the front plays inline, while some other containers appear only as a download attachment. Images are handled differently from video in some cases, but for video the practical rule is that whatever you upload is what gets served. Compressing before upload is therefore the only reliable route, and it has a second benefit: you decide the quality and the resolution instead of hoping the platform is generous. A server boost changes whether the upload is accepted, not the file itself. Discord's own help pages describe the upload limit itself, not any size reduction on their side, which matches what you see in practice.
MP4 with H.264 video and AAC audio is the safest choice, and it is what this compressor produces by default. Discord plays it inline in the channel, and every desktop and mobile client handles it. MOV and WebM files are usually accepted as well. AVI and MKV files will upload, but Discord tends to show them as a download link with no preview, which loses most of the point of posting a clip in a chat. The other factor is how the file is written: the index needs to sit at the front so the player can start before the whole file arrives. This compressor writes MP4 with that layout by default, so clips play inline instead of appearing as an attachment. If you need WebM for another destination, the tool can produce it, but H.264 in MP4 gives a smaller file at the same quality, so there is rarely a reason to pick it for Discord.
Yes, because the file never leaves your device. The compressor is FFmpeg compiled to WebAssembly and it runs inside the browser tab. Your video is read from local storage into the page memory, encoded there, and handed back to you as a download. Nothing is transmitted to a server, there is no background upload step, and no account is involved. That matters when the clip contains private voice channels, an internal screen, a customer screen, unreleased product footage or a home recording. You can confirm it yourself by opening your browser developer tools, switching to the network panel and watching that no request carries the video while it compresses. The first run does download the encoding engine, which is about 30 MB of code rather than your file. Compare that with a converter site, where the file sits on someone else's disk for as long as their retention policy allows.

Get your clip under the limit

Free, private and unlimited. No account needed.

Open Video Compressor