Back to Blog

The Clip Still Would Not Send

September 15, 2026
Share:
The Clip Still Would Not Send

I exported a screen recording. Discord said the file was too large.

The help article I opened still talked about 10 MB. The client I was looking at did not. I had a clip I wanted to send and a number I did not trust.

That is the product. A page that takes the clip, takes a cap you can edit, and hands you a file with a real byte count. The encode stays in the tab. There is no account. There is no queue.

I shipped it as the thirty-first free tool on Softery.io. Rank 59 of 1,761 on the research card I had open, editorial score 9.2. That score is an opinion from the ranking file, not a forecast of how many people will search for it tomorrow.

The Help Page Was Behind

On 13 August 2026 Discord said the free upload went from 10 MB to 20 MB. Nitro Basic stayed at 50 MB. Nitro stayed at 500 MB. I did not take those numbers from a screenshot of the client. I took them from the announcement as the press restated it that day, and I treated them as experimental the moment I wrote them down.

The File Attachments FAQ can still print 10 MB. I fetched it in this sitting and I did not get a clean page I could quote as current. A help article that lags a client is not a bug in my compressor. It is the reason the cap on this page is a set of buttons plus a box.

If the client bounced you at 8 MB, type 8. If a bot still wants 10, use 10. If you pay for Nitro Basic, use 50. I will not hard-code last year's free tier and call it "Discord's exact upload cap."

Caps change. The number on this page is yours.

That sentence is the spec. A compressor that ships a dead 10 MB button as the only choice is already wrong the next time Discord moves.


Twenty Megabytes Is Still a Cap

Twenty megabytes sounds generous until you record a desktop at 4K. A few minutes of that will not fit. The page will say it is making a smaller picture. That is the trade. It is not a quality score and I will not invent one.

I kept the old 8 MB and 10 MB buttons because some bots and some older phone clients still bounce those sizes. I kept 50 and 500 because those are the paid tiers Discord still publishes. I kept a custom box because I have been wrong about vendor numbers before.

SI megabytes, not mebibytes. 20 MB on this page is 20,000,000 bytes. Some operating systems will call that 19.1 MiB. Discord counts the bytes it received, not the label Finder printed. If you are arguing with a bounce, trust the byte count on this page and the byte count Discord shows, not the rounded megabyte in a file list.

The encode aims at 95 percent of the cap so the container and the sound have room. Then the page measures the file it actually wrote. If the encoder missed, you see the miss before you download.


Why Every Other Fix Wanted the File

The ranking file for this card said the usual answers are a command line or a server that melts under load. Phone apps exist too, with ads. I did not sit through those apps tonight. I have sat through enough upload forms to know the shape.

You drop a clip. They store it. They put you in a queue. Then they ask for an account before you can have your own file back. A screen recording of a bug is often a private thing. I do not want that file on someone else's disk so they can shrink it.

This page does not take the file. Once the JavaScript has loaded, the clip stays in memory here. Mixpanel and Google Analytics load with the rest of Softery.io. They see that someone opened the tool. They do not get the file name or the bytes. If you came here because a privacy page promised zero third-party scripts, that is not this site.


The License Argument I Did Not Want

The research card named a real risk. A common FFmpeg build for the browser ships GPL x264. A Hacker News thread about a browser video editor turned into a license fight over distributing that code to run in the client's tab.

I did not want that fight. The default encode here is WebCodecs, the encoder the browser already has. No extra license attaches to H.264 that Chrome or Edge already shipped. The muxer is Mediabunny, MPL-2.0. You can read its source. This page does not ship an x264 WebAssembly core.

If a browser cannot encode, the page says so and stops. It does not quietly POST the clip to my server. A silent server would have been the easy way to look like a working tool on Safari. I did not take it.


What the Page Actually Does

You drop an mp4, a mov, a webm, or another clip the tab can open. You pick a cap. Before anything encodes, you see the input size, the duration, and the picture size, including a phone that was held sideways.

If the file already fits, you download the original. There is no fake re-encode so a progress bar has something to do.

If it does not fit, the page walks a ladder. Same picture first, lower bitrate. Then a smaller picture. Then a lower frame rate. Sound stays on the file when this browser can encode audio. If the sound encoder is missing, the page stops rather than handing you a silent file and calling that a success.

The work can run in a worker so the tab stays usable. There is a cancel button. A file over 400 MB gets a warning before you start, because the encode shares RAM with the rest of the page. I have watched a tab die on a huge clip. I will not pretend this one cannot.


The Number You Can Edit

The default button is Free, 20 MB. Under it sit 10, 8, Nitro Basic at 50, Nitro at 500, and Custom.

Custom is a number from 1 to 500. Type the cap that actually bounced you. The settings stay in this browser. The clip does not. Close the tab and the file is gone. Open it tomorrow and the last cap you picked is still there.

I stored the preset on purpose. I did not store the video. A compressor that writes your recording into localStorage is a product I will not ship.


Sound and a Phone Held Sideways

A portrait clip from a phone often stores the pixels wide and puts a rotation flag on the track. Discord is not always kind to that flag. This page bakes the rotation into the pixels so the file stands the right way when you send it.

Sound is not optional on a clip you recorded to show someone a bug. The plan keeps an audio bitrate when the file has a track. The first try is 96 kbps. If the budget is tight it steps to 64, then 48. A silent clip does not get a fake soundtrack.

I cannot promise every phone browser can encode AAC. Chrome and Edge on a computer can. If yours cannot, the page names the missing encoder. That is a worse sentence than a silent download, and it is the true one.


When the Encoder Misses

Target size is a wish. Encoders miss. The first pass aims under the cap. If the file comes back over, the page tries once more at 80 percent of the cap. Then it stops and shows you the real size.

You can download a file that is still over. Discord will refuse it. You can also drop the cap and run again, or cut the clip shorter. I will not hide an over-cap result behind a green check.

The sample clip is small on purpose. It is two seconds of green and a beep. It already fits 20 MB. Use it to see the preview and the plan. Drop a real recording if you want to see a shrink.

A number that helps here: 41.2 MB in and 18.6 MB out is the kind of pair the OG card shows. Those two figures are a worked example, not a promise about your file. Your file gets its own measurement after the encode, and that measurement is what you download against.


When This Browser Cannot Encode

WebCodecs is not everywhere. Chrome and Edge on a computer are the path I tested against. Safari and some phones will show the warning and will not start an encode.

That is the honest gap. A server encode would close it. It would also mean I see the file. I will not close a browser gap by taking the recording.

After the first visit the rest of Softery.io still talks to Mixpanel and Google. I will not write "works offline forever" on a marketing site that loads analytics. Local-mode here means the encode does not need a second host once the page and the library have loaded.

I also will not tell you to install a desktop FFmpeg and paste a command. That path exists. It is a good path if you already have it. This page is for the person who has a clip in Downloads and a Discord window that just refused it. They should not have to open a terminal to send a two minute recording of a bug.


CapWho it is forWhat this page does
20 MBFree Discord, as of 13 August 2026Default button. Still a cap. A long 4K recording will get a smaller picture.
10 MB and 8 MBOlder bounce sizes, some bots, some phonesKept on purpose. Not the current free headline.
50 MBNitro BasicSame encoder, larger budget.
500 MBNitroSame encoder. A huge file can still run the tab out of memory.
CustomThe number that actually bounced youType 1 to 500. Believe the client over the help page.

I did not put a quality column in that table. Quality is the trade you already accepted when you picked a cap.


What I Will Not Promise

I will not promise the output looks like the input. A 20 MB cap on a long desktop recording is a smaller picture. You see that in the plan before you start.

I will not promise every container opens. The page reads common files. A broken file fails. A codec this browser cannot decode fails. The error stays on the screen.

I will not promise Discord will keep these numbers. They moved once in August 2026. They can move again. Edit the box.

I will not invent a Reddit quote, a world rank, or a weekly user count. The ranking file pointed at an old thread that asked Discord to auto-compress large images. I did not reopen it tonight to harvest a sentence. The product does not need a fake testimonial.


Nearby Tools

Phone photos that Discord will not open belong on HEIC to JPG. A stack of PDFs you want in one file belongs on Merge PDF. Both stay in the tab.

The compressor is at Compress Video for Discord. Drop a clip. Pick a cap. Read the plan. Download the file if the bytes fit.


What to do next

  1. Open the page and leave the free 20 MB button alone unless the client bounced you at another number.
  2. Drop the clip. Read the duration and the picture size before you press Compress.
  3. If the plan says the file already fits, send the original. Do not re-encode it for sport.
  4. If the result is still over, believe the byte count. Cut the clip or raise the cap. Do not argue with Discord about a file it can measure.

That is the whole tool. A cap you can edit. A file you can hold up to the number Discord printed today.


Last updated: September 15, 2026 | Reading time: 10 minutes

Written by Evgeniy Poznyak, who has watched a help page and a client disagree about the same upload.