How to remove dead air from podcast recordings — free, no upload
- Step 1Drop your episode master — Drag your recording onto the silence-stripper tool. It accepts audio or video (
acceptedInput: audio-or-video), so a WAV/MP3 master or a video call recording both work. Everything decodes and processes locally — nothing uploads. - Step 2Set the silence threshold (dB) — Threshold (dB) decides how quiet counts as silence. The default
-40 dBsuits a treated room with a clean signal. If your recording has a noticeable noise floor (laptop fan, room hum), a too-low threshold like-50will never trigger — raise it toward-35. The slider clamps to-80…-10in 1 dB steps. - Step 3Set the minimum silence (s) — Min silence (s) is how much quiet is left behind at each cut. The default
0.5 skeeps a natural half-second beat. Lower it to0.2–0.3for aggressive tightening; raise it to0.8–1.0for a relaxed, conversational pace. Range is0.1…5in 0.1 s steps. - Step 4Run the strip — Start processing. FFmpeg applies
silenceremovewithdetection=peak: leading silence is trimmed once (start_periods=1), and every internal and trailing silent region is tightened (stop_periods=-1). No re-EQ, no level change — only time is removed. - Step 5Listen back before you ship — Scrub the first 30 seconds and a few mid-episode pauses. If a first word sounds clipped, raise Min silence or lower the Threshold magnitude (e.g.
-40→-45). If pauses still feel long, lower Min silence. Re-running is free and lossless for WAV input. - Step 6Download the tightened episode — The output downloads as
yourfile-tightened.extin the same format you uploaded. Hand it straight to loudness-normalizer for the -16 LUFS podcast target, or chain the whole flow through podcast-master.
The two real controls
These are the only options the silence stripper exposes. Verified against the tool's client component and the FFmpeg filter built in the processor.
| Control | FFmpeg parameter | Default | Range / step | What it changes |
|---|---|---|---|---|
| Threshold (dB) | start_threshold + stop_threshold (with detection=peak) | -40 dB | -80 to -10, step 1 | How quiet a section must get to count as silence. More negative = stricter (only near-true-silence is cut); less negative = looser (quieter speech/room tone gets cut too) |
| Min silence (s) | start_silence + stop_silence | 0.5 s | 0.1 to 5, step 0.1 | How much silence is left behind at each cut. It is the cushion FFmpeg keeps, not a 'minimum gap to delete' — lower = tighter, higher = airier |
Threshold guide by recording condition
Starting points for podcast audio. Always confirm by ear — your mic, gain staging, and room set the real noise floor.
| Recording condition | Suggested threshold | Suggested min silence | Notes |
|---|---|---|---|
| Treated room, condenser mic, clean signal | -45 to -40 dB | 0.5 s | The default zone — cuts true gaps, keeps breaths |
| Untreated room with mild hum/fan | -38 to -35 dB | 0.5 s | Raise threshold so room tone above the noise floor still triggers a cut |
| Remote guest on a noisy line | -35 to -30 dB | 0.6–0.8 s | Higher cushion avoids choppy edits on a variable line |
| Quiet voiceover / ASMR-style | -50 to -48 dB | 0.4 s | Strict threshold so genuinely-quiet delivery is not mistaken for silence |
Tier limits for podcast-length files
The silence stripper requires the Pro tier or higher. Limits are per file; note the duration cap is separate from the size cap.
| Tier | Max file size | Max duration | Files per batch |
|---|---|---|---|
| Pro (minimum for this tool) | 200 MB | 120 min | 10 |
| Pro-media | 100 GB | Unlimited | 100 |
| Developer | 100 GB | Unlimited | Unlimited |
Cookbook
Real podcast scenarios with the exact two settings to use and what the cut does to runtime. The stripper changes only the time axis — it never re-EQs, re-levels, or re-encodes beyond what your format requires.
Default tighten on a clean solo episode
A solo episode recorded on a condenser mic in a treated room. The default settings remove the long thinking gaps while leaving a natural half-second beat after each sentence.
Input: solo-ep42.wav (58 min 12 s, 48 kHz WAV)
Settings: Threshold -40 dB · Min silence 0.5 s
FFmpeg applies:
silenceremove=start_periods=1:start_silence=0.5:start_threshold=-40dB:
stop_periods=-1:stop_silence=0.5:stop_threshold=-40dB:detection=peak
Output: solo-ep42-tightened.wav (50 min 03 s, 48 kHz WAV)
-> 14% removed, format unchangedAggressive tighten for a fast-paced news show
A daily news podcast where pace matters more than breathing room. Drop the cushion to 0.25 s for a snappier feel.
Input: daily-news.mp3 (22 min, 128 kbps MP3) Settings: Threshold -42 dB · Min silence 0.25 s Output: daily-news-tightened.mp3 (18 min 30 s) -> ~16% removed; pauses feel clipped-short by design
Conservative tighten that protects breaths
A narrative/storytelling show where pauses are part of the craft. Raise the cushion so the rhythm survives.
Input: story-s2e3.wav (41 min) Settings: Threshold -45 dB · Min silence 0.9 s Output: story-s2e3-tightened.wav (39 min 20 s) -> only ~4% removed; long dramatic pauses preserved, only true dead air between segments trimmed
Noisy untreated room
Recorded at a kitchen table with a fridge hum. The default -40 dB never triggers because the room tone sits above it. Raise the threshold.
First try (no cuts): Threshold -40 dB -> output length == input length (room hum is louder than -40 dB, so nothing reads as silent) Fix: Threshold -35 dB · Min silence 0.5 s -> 11% removed; the hum-floor gaps now register as silence
Two-pass: strip then normalise
The standard publishing chain. Strip silence first so the loudness measurement isn't skewed by long quiet stretches, then normalise to the podcast target.
Step 1 - silence-stripper: ep.wav -> ep-tightened.wav (-40 dB, 0.5 s) Step 2 - loudness-normalizer (/audio-tools/loudness-normalizer): ep-tightened.wav -> -16 LUFS, true-peak -1 dBTP Result: a tight, correctly-loud episode ready to publish.
Edge cases and what actually happens
Threshold lower than the noise floor — nothing is cut
By designIf the recording's room tone is louder than your threshold, FFmpeg never sees a 'silent' region and the output length equals the input. This is correct behaviour, not a bug: detection=peak compares peak level against the threshold. Raise the threshold (e.g. -40 → -35) until the gaps register.
First word clipped after the strip
ExpectedLeading silence is trimmed with start_periods=1. If a speaker starts very softly, the onset can sit below the threshold and get shaved. Lower the threshold magnitude (-40 → -45) so quiet onsets survive, or raise Min silence so more leading cushion is kept.
Speech sounds choppy or robotic
By designA too-low Min silence (e.g. 0.1 s) removes nearly all the gap, so consonant tails and breaths get clipped and the result sounds gated. This is the trade-off of aggressive tightening. Raise Min silence toward 0.5–0.8 s to restore natural spacing.
Soft music bed gets cut
ExpectedThe stripper can't tell intentional quiet music from dead air — both are just low-level audio under the threshold. If your episode has ambient beds, strip the spoken segments first and add music later, or use audio-trimmer for manual control over the musical sections.
No silence anywhere meets the threshold
By designA heavily-compressed or wall-of-sound mix may have no region quiet enough to qualify. The output is identical to the input. Strip silence on the raw multitrack/voice stem before compression, not on the finished master.
Cross-talk in a co-hosted episode
ExpectedWhen two hosts overlap, there's rarely true silence to remove, so cuts cluster in the single-speaker gaps only. That's correct, but it can make pacing uneven. Strip each host's track separately before mixing if you need even tightening.
File exceeds the Pro 200 MB / 120 min limit
RejectedA long, high-bitrate master can blow the Pro caps (200 MB size, 120 min duration — whichever hits first). Split the episode with audio-splitter, strip each part, then rejoin — or move to the Pro-media tier (100 GB, unlimited duration).
MP3 input is re-encoded to apply the cut
ExpectedBecause the tool writes the same format you uploaded, an MP3 in produces an MP3 out, which means one re-encode through libmp3lame. For the cleanest result, strip silence on a lossless WAV master and convert to MP3 only at the final publish step.
Frequently asked questions
Is the silence stripper really free and does my audio upload anywhere?
The tool runs FFmpeg 8.1 compiled to WebAssembly directly in your browser tab — your episode is decoded and processed on your own CPU and never uploaded. The tool itself requires the Pro tier (200 MB / 120 min per file); within that, processing is unlimited and local. An unreleased episode or NDA interview stays entirely on your device.
What threshold and minimum-silence should I start with for a podcast?
Start at the defaults: -40 dB threshold and 0.5 s minimum silence. That cuts thinking gaps while keeping a natural beat. For a clean treated-room recording you can go to -45 dB; for an untreated room with hum, raise toward -35 dB so the room tone above the noise floor registers as cuttable.
Will it cut my breaths or natural short pauses?
The Min silence value is how much quiet FFmpeg leaves at each cut, so at the default 0.5 s natural breaths and short beats survive. If speech starts sounding gated or choppy, raise Min silence to 0.7–1.0 s. If you want a tighter, faster show, lower it to 0.2–0.3 s.
Why didn't anything get removed?
Almost always the threshold is more negative than your noise floor, so FFmpeg never sees a silent region. Raise the threshold (e.g. -40 → -35 or -30) until the gaps register. If your mix is heavily compressed with no quiet regions at all, strip silence on the raw voice track instead of the finished master.
Does it change the loudness, EQ, or quality of my voice?
No. The stripper only removes time — it applies silenceremove and nothing else. It never re-EQs or re-levels. For WAV input the audio is bit-for-bit identical except for the cuts; for compressed formats there's one re-encode to write the result. Run loudness-normalizer afterward for level.
What output format do I get?
The same format you uploaded — there is no format selector on this tool. A WAV stays WAV at the same sample rate, an MP3 stays MP3, a FLAC stays FLAC. The file is named yourfile-tightened.ext. If you need a different output format, run the result through a converter such as wav-to-mp3.
Can I add padding or silence back in after a cut?
There's no separate padding control. The only cushion is the Min silence value, which is the amount of quiet left at every cut. If you need to insert deliberate silence (e.g. before an ad break), do the strip first, then use audio-trimmer or fade-in-out to shape the gaps you want.
How long does a full episode take to process?
It depends on length, your CPU, and whether the browser supports multi-thread WASM and SIMD (the engine uses both when available). A typical hour-long episode processes in seconds to a couple of minutes locally. There's no queue or server round-trip because everything runs in the tab.
Should I strip silence before or after editing music and ads?
Strip the spoken content first, on the voice-only track or raw recording, then add music beds, stingers, and ads. The stripper can't distinguish a soft music bed from dead air, so running it on a finished mix risks cutting intentional quiet musical sections.
Can I process a whole season at once?
The Pro tier allows up to 10 files per batch (Pro-media 100, Developer unlimited). Drop multiple episodes and they're processed locally one after another with the same threshold and min-silence settings. For per-episode tuning, run them individually.
Does it handle video recordings of my podcast?
Yes — the tool accepts audio or video input. It decodes the audio track, applies the silence strip, and writes audio out. If you need the audio extracted from a video first for a different workflow, video-to-mp3 and video-to-wav do that directly.
What's the difference between this and a full podcast master?
The silence stripper only tightens timing. A finished episode usually also needs noise removal, leveling, and loudness targeting. Chain it with ai-noise-reducer, speech-leveler, and loudness-normalizer — or do all of it in one pass with podcast-master.
Privacy first
Every JAD Audio tool runs entirely in your browser via FFmpeg (WebAssembly) and RNNoise. Your audio files never leave your device — verified by zero outbound network requests during processing.