How to remove silence from a screen recording
To remove silence from a screen recording on macOS, use ffmpeg’s silencedetect filter to find the gaps free, Descript to edit video by editing its transcript, or SnapShelf’s Auto-Edit ($49 one-time) to cut silent gaps in one click.
Last updated
Product screenshot coming soon
Auto-Edit in the SnapShelf timeline, with detected silent gaps marked for removal across a screen recording.
Silence is why your demo feels twice as long as it is
Record yourself walking through a feature and play it back. The content is probably fine. What is not fine is the three seconds where you waited for a build, the two seconds where you found the right tab, the pause where you said "um, so" and then restarted the sentence, and the four seconds at the end where you were looking for the stop button.
Individually none of those matter. Added up across a ten-minute walkthrough they are routinely two to four minutes of nothing. Viewers do not experience that as "a bit slow" — they experience it as the video being low effort, and they scrub or leave.
Cutting silence is the single highest-leverage edit you can make to a screen recording, and it is almost entirely mechanical. That is exactly the kind of work worth automating.
One caveat before you automate it. Not all silence is dead air. A deliberate beat after an important point, or a pause while something visibly loads on screen, is doing work. Every tool below will happily cut both, so review the result rather than exporting blind.
How silence detection actually works
Every tool here does the same two things: it measures the audio amplitude over time, and it marks any run where the amplitude stays below a threshold for longer than a minimum duration. Those two numbers are the whole model, and understanding them is the difference between a clean cut and a mangled one.
The threshold is in decibels relative to full scale, so it is a negative number. Around -30dB is a common default. Set it too aggressive — closer to zero, say -20dB — and it will start cutting your quieter words. Set it too permissive at -50dB and room tone, fan noise, and a nearby air conditioner all register as speech, so nothing gets cut.
The minimum duration stops the tool from cutting the natural micro-gaps between words, which would make you sound like a badly spliced tape. Somewhere between 0.5 and 1 second is usually right. Below 0.4 seconds you are cutting normal speech rhythm.
If a tool is cutting too much or too little, one of those two numbers is wrong. That is almost always the fix — assuming the tool lets you reach them, which plenty do not, having picked a pair and fixed them.
The free route: ffmpeg silencedetect
ffmpeg will not remove the silence for you in one command, but it will tell you exactly where it is, which is most of the work.
Run: ffmpeg -i recording.mov -af silencedetect=noise=-30dB:d=0.75 -f null -
It prints nothing to a file — the -f null - means "decode but discard" — and writes a list of silence_start and silence_end timestamps to stderr. You now have a precise map of every gap longer than 0.75 seconds.
From there you have two options. Paste those timestamps into whatever editor you already use and cut manually, which is tedious but exact. Or generate a filter that concatenates only the loud segments — this is doable with ffmpeg’s select and aselect filters, but the expression gets unwieldy fast and one wrong timestamp desynchronises audio from video for the rest of the clip.
Be honest with yourself about which one you are. If you cut silence from one recording a quarter, silencedetect plus manual cuts is completely reasonable and costs nothing. If you do it weekly, you will build a script, and then you will maintain a script.
- 1Install ffmpeg: brew install ffmpeg
- 2Run: ffmpeg -i recording.mov -af silencedetect=noise=-30dB:d=0.75 -f null -
- 3Read the silence_start and silence_end timestamps printed to the terminal
- 4If too many gaps are flagged, lower the threshold to -35dB; if too few, raise it to -25dB
- 5Cut at those timestamps in your editor, or script a select/aselect filter to concatenate the loud segments
Descript, and what it is genuinely better at
Descript is the tool most associated with this, and its reputation is deserved. It transcribes your recording and then lets you edit the video by editing the transcript — delete a sentence in the text and the corresponding video disappears. Removing filler words and silences is a checkbox, and it is very good at it.
Where Descript clearly wins: it cuts on words, not just amplitude. It can remove every "um" and "you know" specifically, because it knows what was said. Amplitude-based detection cannot do that — a filler word is not silence, it is sound. It also handles multi-person recordings, has strong overdub and correction features, and if your work is fundamentally podcast- or talking-head-shaped, it is built for exactly that.
The trade-offs are real too. It is subscription-priced rather than one-time, it is transcription-driven so it uploads your media for processing in the normal cloud workflow, and it is a full editing environment you switch into rather than a step in a capture workflow. For a recording of a customer’s staging environment or an unreleased feature, the upload is a genuine consideration.
If you need word-level editing and filler-word removal, use Descript. This guide is not going to pretend otherwise.
One-click Auto-Edit in SnapShelf
SnapShelf includes Auto-Edit: it detects silent gaps in a recording and cuts them out in one click. A rambling ten-minute walkthrough becomes a tight three. It is amplitude-based, so it removes pauses rather than filler words, and both of its numbers are fixed — a -30dB threshold over a 600ms minimum silence, with no setting to tune either one.
The reason it is convenient is that it lives where the recording already is. You record from the menubar panel, the recording lands in the shelf, you open it, and Auto-Edit is a button in the same editor you would trim in anyway. There is no import, no upload, no round trip, and the whole thing stays on your Mac — SnapShelf is local-first, with no upload of captured content and no telemetry on what you capture.
Two things to know before you press it. It analyses the first clip only, and it replaces every clip in the project with the result — which is why the app puts a confirmation in front of you rather than just doing it.
After Auto-Edit runs, you are in a full multi-track editor rather than looking at a finished file. So the workflow that actually works is: let it make the mechanical cuts, then scrub through and restore the two or three pauses that were load-bearing. That is a minute of work instead of twenty.
It will not remove filler words, and it does not transcribe. If "um" removal is the requirement, Descript is the tool. If the requirement is that your demo stops having four minutes of dead air in it, this is one button.
- 1Record your screen from the Record tab in the SnapShelf menubar panel
- 2Open the finished recording in the editor
- 3Click Auto-Edit — silent gaps are detected and removed
- 4Scrub the timeline and restore any deliberate pause that was doing real work
- 5Export as MP4, or as a GIF if the clip is short enough
Try SnapShelf
$49 once — 2 years of free updates, no subscription, and everything stays on your Mac. 30-day money-back guarantee.
macOS 13+ · Apple Silicon & Intel
FAQ
Questions, answered
Everything you need to know before buying.
No. QuickTime Player on macOS offers trimming from the start and end of a clip only — there is no silence detection and no way to cut a gap out of the middle without splitting and rejoining clips manually. You need ffmpeg or a dedicated editor.
Stop hunting for screenshots. Start shipping.
Every capture filed, annotated, recorded with cursor auto-zoom, and one right-click away from your Claude Code session. One-time $49, yours forever.
30-day money-back guaranteeOne-time purchase2 years of free updatesLocal-only datamacOS 13+ · Apple Silicon & Intel