Skip to content
o.o
Go back

Thunder

Listen & Download

⛈ Thunder Sound

00:00.0 ELAPSED
bit
/
rate
/
ch
75%

Original volume: — adjust the slider to change playback volume

Ad Space

What Is This Sound?

This is a synthesized thunder sound created entirely using the Web Audio API — no recorded thunderstorms involved. The sharp initial crack, rolling mid-section, and deep sustained rumble are all generated mathematically by your browser.

Thunder is a dramatic, powerful natural sound used widely in sound design, game audio, and ambient soundscapes. This version captures the full lifecycle of a thunderclap — from the initial shockwave to the final low-frequency decay — using a three-phase synthesis approach.

How Is Thunder Sound Created with Code?

Thunder is fundamentally different from continuous ambient sounds like rain or wind. It’s an event-based sound with distinct temporal phases. We model it as three time-staggered noise bursts, each representing a different stage of the thunder lifecycle.

Phase 1: Initial Clap (White Noise Burst)

The sharp, bright crack of the initial lightning discharge is a short burst of white noise with a very fast attack and quick decay:

// White noise burst — sharp initial clap
const clapGain = audioContext.createGain();
clapGain.gain.setValueAtTime(0.8, startTime);
clapGain.gain.exponentialRampToValueAtTime(0.01, startTime + 0.3);

const clapFilter = audioContext.createBiquadFilter();
clapFilter.type = "highpass";
clapFilter.frequency.value = 1500;

Phase 2: Rolling Thunder (Pink Noise)

The mid-phase rolling sound — caused by the shockwave reflecting off clouds, terrain, and buildings — is pink noise with a slower envelope, starting slightly after the initial clap:

// Pink noise — rolling thunder, delayed onset
const rollGain = audioContext.createGain();
rollGain.gain.setValueAtTime(0.01, startTime);
rollGain.gain.linearRampToValueAtTime(0.5, startTime + 0.2);
rollGain.gain.exponentialRampToValueAtTime(0.01, startTime + 1.5);

const rollFilter = audioContext.createBiquadFilter();
rollFilter.type = "bandpass";
rollFilter.frequency.value = 600;
rollFilter.Q.value = 0.5;

Phase 3: Low Rumble (Brown Noise)

The sustained, deep rumble that lingers after the main event is brown noise through a lowpass filter, with the longest envelope of all three phases:

// Brown noise — deep sustained rumble
const rumbleGain = audioContext.createGain();
rumbleGain.gain.setValueAtTime(0.01, startTime);
rumbleGain.gain.linearRampToValueAtTime(0.3, startTime + 0.4);
rumbleGain.gain.exponentialRampToValueAtTime(0.01, startTime + 3.0);

const rumbleFilter = audioContext.createBiquadFilter();
rumbleFilter.type = "lowpass";
rumbleFilter.frequency.value = 200;
rumbleFilter.Q.value = 0.8;

Time-Staggered Signal Chain

The three phases overlap but are offset in time, creating the natural progression from crack to roll to rumble:

// Phase 1: 0.0s – 0.3s  (clap)
// Phase 2: 0.1s – 1.5s  (roll)
// Phase 3: 0.3s – 3.0s  (rumble)
// All → master gain → output

Ad Space

The Science Behind Thunder Sound

How Does Lightning Create Sound?

Lightning heats the air in its channel to approximately 30,000 Kelvin — five times hotter than the surface of the Sun. This extreme, instantaneous heating causes the air to expand at supersonic speed, creating a shockwave. The initial crack you hear is this shockwave arriving.

Because a lightning bolt is not a single point but an extended, branching channel (often several kilometers long), the sound from different parts of the bolt arrives at different times. Parts of the channel closer to you arrive first as a sharp crack. Sound from more distant sections arrives later, creating the characteristic rolling effect. The final low rumble is the most distant sound, heavily attenuated by atmospheric absorption of high frequencies — only the low-frequency energy survives the journey.

Frequency Spectrum

ParameterValue
Phase 1 (Clap)White noise, highpass 1500Hz, 0.3s decay
Phase 2 (Roll)Pink noise, bandpass 600Hz, 1.3s duration
Phase 3 (Rumble)Brown noise, lowpass 200Hz, 2.7s duration
Envelope ShapeFast attack, exponential decay per phase
Output LevelPeak -6dB, sustained -10dB

Common Uses

Technical Details

PropertyValue
FormatWAV (PCM 16-bit / 24-bit / 32-bit float)
Sample Rate44,100 Hz / 48,000 Hz
ChannelsMono / Stereo
Duration3 seconds (loopable)
GenerationWeb Audio API
LicenseFree for personal and commercial use

Ad Space

Frequently Asked Questions

Can I use this sound in my project?

Yes. The sound is generated by code in your browser. The output WAV file is yours to use freely in any personal or commercial project.

Why does thunder have a “crack then rumble” pattern?

The crack is the shockwave from the nearest point of the lightning channel. The rumble is sound arriving from progressively more distant parts of the same bolt. Because sound travels at ~343 m/s, a 3km lightning channel produces about 9 seconds of time-spread arrival — which we hear as rolling thunder.

How do I make it loop seamlessly?

The downloaded 3-second WAV file can be looped in most audio software or game engines. For seamless looping, import it into a DAW and apply a short crossfade at the loop point.

Can I make distant vs. close thunder?

Yes. For distant thunder, remove or reduce Phase 1 (the clap) and lower the filter frequencies. For close thunder, boost Phase 1 and increase the high-frequency content. Distance in real thunder is primarily heard as the loss of high frequencies and the delay before the sound arrives.


Related Sounds

Share this post on:

Previous Post
Explosion
Next Post
Coin Pickup