The Drop · October 20, 2026
Beat sensitivity: why your visualizer flashes too much, or barely at all
It is the first control people drag and the last one they understand. Mostly because the number on it looks like a volume, and it is not one.
Photo via Unsplash
What the number is actually comparing
Beat sensitivity runs from 1.05 to 2.00 and sits at 1.35 when you open the page. It is a multiplier, and what it multiplies is a rolling average of the last 43 frames of audio energy, which is about seven tenths of a second at 60 frames a second.
Sixty times a second the app reads 27 FFT bins, squares them, averages them, and asks one question: is this frame louder than the recent average times your number? At 1.35 a frame has to beat the last three quarters of a second by 35 percent to count as a hit. Those bins cover roughly 94 Hz to 2.6 kHz on a 48 kHz audio context, so it is not strictly bass. Snares and a loud vocal are in there too.
That is the whole mechanism, and it explains the thing that trips everybody up. The slider has no idea how loud your track is, only how far above its own recent self each moment gets. How beat detection works has the longer version.
Three other gates sit behind it, and none of them move when you drag:
- A warmup. The first 12 frames fill the history untested, so nothing can flash in roughly the first fifth of a second.
- A silence gate. A fixed floor sits under the comparison, low enough that it only catches near silence. None of the test tracks below went under it.
- A 90 millisecond cooldown. After a flash, nothing can fire for 90 milliseconds, capping the whole thing at 11 flashes a second.
Loud is not the same as easy to detect
To get numbers rather than opinions, I built three 16 second test tracks at 120 BPM, 32 kicks each, and ran them through the actual app in a browser while recording every flash. The first is a dry kick with near silence between the hits. The second is the same kicks over a loud sustained bass drone, a crude stand in for a heavily limited master. The third is the first file turned down 12 dB. Flash counts out of 32 kicks:
| Setting | Dry kicks | Kicks on a loud drone | Dry kicks, 12 dB down |
|---|---|---|---|
| 1.05 | 53 | 24 | 48 |
| 1.20 | 31 | 15 | 32 |
| 1.35 | 30 | 0 | 31 |
| 1.50 | 15 | 0 | 31 |
| 1.70 | 0 | 0 | 15 |
| 2.00 | 0 | 0 | 15 |
Read the default row. The loudest of the three files, around 9 dB hotter than the dry one and 21 dB hotter than the quiet one, produced zero flashes. The quietest file produced 31, which is effectively one a beat. If the slider were a loudness threshold that result would be backwards.
The reason the loud file fails is worth knowing. The analyser reports each frequency bin on a scale that tops out at minus 30 dB, and on the loud file a bin was pinned at the top of that scale on every single frame. A kick landing on a low end that is already maxed out cannot raise the number, so there is no rise to detect. On the dry file that happened on 19 percent of frames, on the quiet file 5 percent.
Which gives an annoying but useful rule: if you are feeding it your own mix, a quieter, less limited bounce detects better than the loud master. Reverb does the same damage from the other side, by filling the gaps the average is measured across, which the piece on slowed and reverb edits covers.
Too many flashes
Look at the 1.05 row: 53 flashes on a file with 32 kicks. The extras are the decay tail and the pad crossing a bar set barely above the average. Drag toward 1.05 and you are not asking for more beats, you are asking for anything with a pulse.
Fix it by going up in small steps. The useful range on that file was 1.15 to 1.35, two tenths out of a slider nearly a full point wide. Most of the travel either side of that band does nothing, which is why the control feels dead until suddenly it is not.
If it still fires on everything at 1.50 and above, the track is busy rather than punchy, and the honest answer is that you do not want beat detection at all. Switch Trigger mode to Fixed interval and pick a time, as the ambient and cinematic guide gets into.
Barely any flashes, or exactly half of them
Going the other way has two distinct failure shapes and the table shows both.
The first is simple. Push past what the track can clear and everything stops: the loud drone file hits zero at 1.30 and never recovers. Nothing in that track ever reaches 1.30 times its own rolling average, so no setting above it can fire.
The second is stranger and far more common on real music. Watch the dry file drop from 30 at 1.35 to 15 at 1.50. It did not go quiet, it started flashing on every other kick. A kick that fires leaves its energy in that 0.7 second history, so at 120 BPM the next one is measured against an average the previous one just lifted. Set the bar high enough and the beats pass and fail alternately.
So if your render is landing on the half bar when the track is clearly four to the floor, do not reach for the content change rate. Come down five or ten hundredths on sensitivity first. The render troubleshooting post covers the other ways flashes go wrong.
What the slider cannot do
It does not touch the per drum image triggers, which run on their own fixed thresholds and cooldowns, so an image set to Kick or Snare keeps its timing whatever you do here. It does not touch the bass drop detector either, which has its own slider and ships at zero. And it cannot beat the 90 millisecond cooldown: past a point, turning sensitivity down stops adding flashes because that floor has taken over.
Which matters for a different reason. The WCAG threshold is content that does not flash more than three times in any one second, and 53 flashes across 16 seconds averages 3.3 a second. The low end of this slider can take you over a real safety line, and the cooldown only stops you at 11 a second. Fast full frame flashing can trigger seizures in people with photosensitive epilepsy, so keep the warning on anything you post. The guide to making a strobe video safely treats it properly.
Setting it in about a minute
The app re-reads the slider on every frame, so it is live and you never have to stop and restart to hear a change:
- Hit Preview and let the track reach a busy section, not the intro.
- Drag to 1.05. That is the everything-is-a-beat end.
- Walk up about five hundredths at a time until flashes stop landing between the hits.
- Keep going until you lose a beat you wanted, then come back one step.
- Check a quiet section too. A setting tuned on the drop goes silent in the verse.
There is no correct value to write down, because what it measures is relative to the song it is measuring. A sparse beat wants a higher number than a dense one, and the same song remastered louder wants a lower one.
One caveat on the test: those were synthetic tones built to isolate a single variable, not real records. The flashes were counted from live playback, so the behaviour is the app's own, but your track sits somewhere between the dry file and the drone.
Go and find your number
Free, in the browser, no account and no watermark. Load a track, hit Preview and move the one slider. New here? Start on the home page.
Open the visualizer