The derivative of white noise. Differentiation multiplies the spectrum by \((2\pi f)^2\). Sounds like a thin, piercing hiss with almost nothing below a few kilohertz. The thermal agitation of water produces an acoustic noise floor of this shape, which is why it dominates hydrophone recordings at very high frequencies.[1]
Playground
Every source is generated at the same RMS level, so the faders compare like with like. The dashed line in each plot is the exact spectrum the generators were built to have; the coloured line is what the analysers actually measure from the audio. Start quietly: brown noise keeps most of its energy below 100 Hz, where small speakers fall silent and headphones do not.
Power spectral density log–log, dB re 1 FS²/Hz
Measured with the browser's 8192-point Blackman-windowed FFT[16], converted to a one-sided density and averaged in power. The fitted β is minus the least-squares slope between 100 Hz and 10 kHz. Faint guides show β = −2…2 through the mix at 1 kHz.
Spectrogram log frequency, 20 Hz–20 kHz
Waveform auto-scaled
Amplitude distribution
Samples in units of σ, against the Gaussian density. Gaussian kurtosis is 3.
Autocorrelation ρ(τ)
Dashed: the Fourier transform of the target spectrum (Wiener–Khinchin).
Power per octave band
Pink noise is the flat one. White rises 3 dB per octave.
Field guide
Each trace below is 43 ms of the actual generator at 48 kHz, drawn at the same RMS. The names borrow from light: white light has equal power per unit frequency, and "redder" noises lean toward the low end.[1]
A half-derivative of white noise. Power grows in proportion to frequency, so each octave carries twice the power of the one below it. Blue-noise patterns are prized for dithering: they push quantisation error toward high frequencies, where it is least visible or audible.[11]
Equal power per hertz, no memory. Successive samples are independent, so the autocorrelation is a single spike. Thermal noise in a resistor[3][4] and shot noise in a current are white to a very good approximation. Because the upper octaves are so wide, white noise sounds bright and hissy.
Equal power per octave. The scale-free middle ground between white and brown, found as flicker noise in electronics and in the slow fluctuations of music and speech.[6][7] It is the audio engineer's test signal because an octave or third-octave analyser shows it as flat.
Integrated white noise, the random walk. Named after the botanist Robert Brown, not the colour. The waveform wanders; the sound is a deep rumble like distant surf. Pure integration is unbounded, so this generator flattens below 15 Hz, which is the Ornstein–Uhlenbeck fix described below.
Shaped for the ear rather than for mathematics. Grey noise follows the inverse of an equal-loudness contour[14], aiming to sound equally loud at every frequency. This one inverts the A-weighting curve[15] with the boost capped at +30 dB, an approximation that is only right at one listening level.
Same colour, different texture. One ±1 impulse at a random position in each 0.5 ms slot, zeros elsewhere. At around 1500–2000 pulses per second it sounds smooth, even smoother than Gaussian noise, and convolving with it needs no multiplications, which makes it popular in artificial reverberation.[12][13] Compare its histogram with white.
Any exponent you like. The power-law family is continuous; the named colours are just its integer points. Exponents above 2 are sometimes called "black", though no naming standard exists. Set β in the Sources panel and this trace follows.
The mathematics
From autocorrelation to fractal surfaces: the theory behind the playground, with the figures you need to check it.
A noise is a random process
A noise signal is one realisation of a stochastic process \(x(t)\). The useful class is the wide-sense stationary processes: the mean is constant and the autocorrelation depends only on the lag \(\tau\),
\[ R_x(\tau)=\mathbb{E}\,[\,x(t)\,x(t+\tau)\,]. \]The Wiener–Khinchin theorem[2] says the power spectral density (PSD) is the Fourier transform of the autocorrelation, and that the variance is the area under it:
\[ S_x(f)=\int_{-\infty}^{\infty}R_x(\tau)\,e^{-i2\pi f\tau}\,d\tau,\qquad \sigma^2=R_x(0)=\int_{-\infty}^{\infty}S_x(f)\,df. \]The PSD says how the power is distributed over frequency, and the colour of a noise is a statement about \(S_x(f)\) and nothing else. The plots above show the one-sided density \(S_1(f)=2S_x(f)\) for \(f\ge 0\); the autocorrelation panel shows \(\rho(\tau)=R_x(\tau)/R_x(0)\).
For white noise \(R_x(\tau)=\sigma^2\delta(\tau)\), so \(S_x\) is constant. In continuous time this is an idealisation with infinite total power; any real white noise is band-limited. In discrete time it is simply a sequence of independent, identically distributed samples, whose spectrum \(S(e^{i\omega})=\sigma^2\) is flat on \([-\pi,\pi]\).
Power laws
The named colours form the family
\[ S(f)=\frac{C}{f^{\beta}}, \]a straight line of slope \(-\beta\) on log–log axes, since \(\log S=\log C-\beta\log f\). Each doubling of frequency changes the density by
\[ \Delta L_{\text{oct}}=10\log_{10}\frac{S(2f)}{S(f)}=-10\,\beta\,\log_{10}2\approx-3.01\,\beta\ \text{dB}. \]| Colour | β | Density per octave | Power per octave band | Filter on white noise |
|---|---|---|---|---|
| Violet | −2 | +6.02 dB | +9.03 dB | \(i2\pi f\) |
| Blue | −1 | +3.01 dB | +6.02 dB | \((i2\pi f)^{1/2}\) |
| White | 0 | 0 dB | +3.01 dB | \(1\) |
| Pink | 1 | −3.01 dB | 0 dB | \((i2\pi f)^{-1/2}\) |
| Brown | 2 | −6.02 dB | −3.01 dB | \((i2\pi f)^{-1}\) |
The power in a band \([f_1,f_2]\) follows by integration:
\[ P(f_1,f_2)=\int_{f_1}^{f_2}\frac{C}{f^{\beta}}\,df=\begin{cases}C\,\dfrac{f_2^{\,1-\beta}-f_1^{\,1-\beta}}{1-\beta}, & \beta\neq1,\\[2ex] C\,\ln\dfrac{f_2}{f_1}, & \beta=1.\end{cases} \]An octave band \([f,2f]\) therefore holds power proportional to \(f^{\,1-\beta}\). For pink noise every octave carries exactly \(C\ln 2\); for white noise each octave carries twice the power of the one below. That is the whole reason white noise sounds bright despite being "flat".
Colour by filtering
Every power law can be made by passing white noise through a linear time-invariant filter \(H\), because
\[ S_y(f)=|H(f)|^2\,S_x(f). \]An integrator \(H(f)=1/(i2\pi f)\) gives \(|H|^2=1/(4\pi^2f^2)\): brown. A differentiator \(H(f)=i2\pi f\) gives violet. Pink needs \(|H|^2\propto 1/f\), a half-integrator \(H\propto(i2\pi f)^{-1/2}\). That is not a rational function, so no finite set of poles and zeros produces it exactly; practical pink filters stagger poles and zeros about one per octave and accept a small ripple.
In discrete time, Kasdin's fractional differencing[10] realises any exponent with an infinite impulse response whose taps obey a one-line recursion:
\[ H(z)=(1-z^{-1})^{-\alpha/2}=\sum_{k\ge0}h_kz^{-k},\qquad h_0=1,\quad h_k=h_{k-1}\,\frac{k-1+\alpha/2}{k}. \]Its spectrum is \(|2\sin(\pi f/f_s)|^{-\alpha}\), which equals \((2\pi f/f_s)^{-\alpha}\) to first order at low frequency.
Brown noise and the random walk
Integrating white noise \(\xi\) of intensity \(\sigma^2\) gives the Wiener process, the mathematical model of Brownian motion:
\[ W(t)=\int_0^t\xi(s)\,ds,\qquad \mathbb{E}\big[W(t)^2\big]=\sigma^2t. \]The variance grows without bound, so Brownian motion is not stationary and has no PSD in the strict sense. The \(1/f^2\) law describes it through the filter picture above, or through the spectrum estimated over a finite window. Real systems leak, and the Ornstein–Uhlenbeck process[5] adds the leak as a restoring force:
\[ dX=-\theta X\,dt+\sigma\,dW,\qquad R(\tau)=\frac{\sigma^2}{2\theta}e^{-\theta|\tau|},\qquad S(f)=\frac{\sigma^2}{\theta^2+4\pi^2f^2}. \]This Lorentzian is white below the corner \(f_c=\theta/2\pi\) and brown above it. In discrete time it is the leaky integrator \(y[n]=\lambda\,y[n-1]+x[n]\) with \(\lambda\) just below 1. The brown generator here has its corner at 15 Hz; set the autocorrelation panel to 10 ms to see the slow exponential decay.
Why pink noise is everywhere
Fluctuations with \(1/f\) spectra turn up in resistors and transistors, in the loudness and pitch contours of music and speech[6], and across physics and biology[7][8]. A classic mechanism is a superposition of many relaxation processes whose time constants are spread uniformly in \(\log\tau\), that is with density \(p(\tau)\propto1/\tau\). Each contributes a unit-variance Lorentzian, and
\[ \int_{\tau_1}^{\tau_2}\frac{1}{\tau}\,\frac{4\tau}{1+(2\pi f\tau)^2}\,d\tau=\frac{2}{\pi f}\Big[\arctan(2\pi f\tau)\Big]_{\tau_1}^{\tau_2}\approx\frac{1}{f}\quad\text{for}\quad\frac{1}{2\pi\tau_2}\ll f\ll\frac{1}{2\pi\tau_1}. \]A pure \(1/f\) law cannot hold at all frequencies: \(\int_{f_1}^{f_2}df/f=\ln(f_2/f_1)\) diverges at both ends, so the spectrum must flatten somewhere. The divergence is remarkably gentle, though. Stretching a \(1/f\) spectrum from one cycle per age of the universe (about \(2\times10^{-18}\) Hz) to the Planck frequency (about \(2\times10^{43}\) Hz) only gives \(\ln(10^{61})\approx140\) times the power found in a single factor of \(e\) in bandwidth.
Fractional Brownian motion
Mandelbrot and Van Ness[9] unified the family. Fractional Brownian motion \(B_H\) with Hurst exponent \(0 < H < 1\) is the Gaussian process with stationary increments and
\[ \mathbb{E}\big[(B_H(t)-B_H(s))^2\big]=|t-s|^{2H},\qquad B_H(at)\overset{d}{=}a^{H}B_H(t). \]Its windowed spectrum is \(S\propto1/f^{\,2H+1}\), covering \(1<\beta<3\). Its increments, fractional Gaussian noise, are stationary with \(S\propto1/f^{\,2H-1}\), covering \(-1<\beta<1\), and autocorrelation[17]
\[ \rho(k)=\tfrac12\big(|k+1|^{2H}-2|k|^{2H}+|k-1|^{2H}\big)\;\sim\;H(2H-1)\,k^{2H-2}. \]\(H=\tfrac12\) gives ordinary Brownian motion and white increments. \(H>\tfrac12\) means persistence and long-range dependence (the correlations are not summable); \(H<\tfrac12\) means anti-persistence, the blue side. Pink noise sits exactly on the boundary \(\beta=1\) between the two branches.
Noise in two dimensions
Spectral synthesis works in any dimension. Fill a 2D Fourier plane with Gaussian coefficients of amplitude \(|\mathbf k|^{-\beta/2}\) and invert, and you get a random field with \(S(\mathbf k)\propto|\mathbf k|^{-\beta}\). Two subtleties appear. An annulus of radius \(k\) in \(d\) dimensions has measure \(\propto k^{d-1}\), so equal power per octave of \(|\mathbf k|\) needs \(\beta=d\): in 2D, \(1/k^2\) is the pink field. And a straight transect through an isotropic 2D field has the 1D spectrum
\[ S_{1}(k_x)=\int S_2\!\left(\sqrt{k_x^2+k_y^2}\right)dk_y\;\propto\;k_x^{\,1-\beta}. \]For \(2<\beta<4\) the field is a fractal surface with \(H=(\beta-2)/2\) and dimension \(D=3-H=(8-\beta)/2\): the textures of terrain, clouds and coastlines.
How the generators work
Every source on this page except velvet uses spectral synthesis. Draw independent Gaussian pairs \(g_k,g_k'\), scale them by the target amplitude, enforce Hermitian symmetry so the result is real, and take one inverse FFT:
\[ X_k=\sqrt{S(f_k)}\,\big(g_k+i\,g_k'\big),\qquad X_{N-k}=X_k^{*},\qquad x[n]=\frac1N\sum_{k=0}^{N-1}X_k\,e^{i2\pi kn/N}. \]The output is Gaussian, has the target PSD in expectation, and is exactly periodic, so it loops without a seam. Each source here is \(N=2^{18}\) samples, about 5.5 s at 48 kHz, computed in your browser when you first press play. The free-β source keeps its random coefficients and only rescales their magnitudes when you move β, which is why the sweep sounds continuous rather than like a series of different noises.
The Voss–McCartney method approaches pink noise from the other side. Keep several random generators; refresh row \(j\) only every \(2^j\) samples and output the sum. Each row is a sample-and-hold, a low-pass process with its corner one octave below the previous row, so the sum is the octave-spaced superposition you saw in the Lorentzian figure.
The spectrum is not the whole story
A PSD is a second-order statistic: it fixes \(R(\tau)\) and nothing more. A Gaussian process is completely described by its mean and autocorrelation, but most signals are not Gaussian. Velvet noise[12] is a sparse sequence in which only a fraction \(p\) of samples are non-zero, each \(\pm1\). Its spectrum is close to white, yet
\[ \kappa=\frac{\mathbb{E}[x^4]}{\mathbb{E}[x^2]^2}=\frac{p}{p^2}=\frac1p, \]so at 2000 pulses per second and 48 kHz, \(\kappa=24\) against 3 for Gaussian noise. Play velvet and white side by side in the playground: identical slopes, entirely different histograms. In the other direction, randomising the Fourier phases of any recording preserves its PSD exactly while destroying its waveform structure.
Where noise comes from
Thermal agitation of charge carriers in a resistor produces Johnson–Nyquist noise[3][4] with one-sided voltage spectrum
\[ S_V(f)=4k_BTR\quad\text{for } hf\ll k_BT,\qquad S_V(f)=\frac{4Rhf}{e^{hf/k_BT}-1}\ \text{in general}, \]white up to roughly \(k_BT/h\approx6\) THz at room temperature. Shot noise, from the discreteness of charge, is white with \(S_I=2qI\). Flicker noise in semiconductors and carbon resistors is pink.[8] Displacement of a particle in a fluid is brown. The acoustic thermal noise of water is violet, and Cherenkov radiation is cited as a natural example of blue.[1]
How noise is heard
The ear does not analyse on a linear frequency axis. Above a few hundred hertz its auditory filters have roughly constant relative bandwidth, so pink noise feeds them roughly equal power and sounds balanced, while white noise sounds tilted toward hiss. That is also why audio engineers measure rooms and loudspeakers with pink noise and a constant-percentage-bandwidth analyser: pink reads flat. Sensitivity further varies with frequency and with level, as the equal-loudness contours of ISO 226 describe[14], and grey noise is the attempt to undo that.
References
Sources for the claims above, in the order they are numbered.
- Colors of noise, Wikipedia.
- Wiener–Khinchin theorem, Wikipedia.
- J. B. Johnson, "Thermal agitation of electricity in conductors," Physical Review 32, 97 (1928). doi:10.1103/PhysRev.32.97
- H. Nyquist, "Thermal agitation of electric charge in conductors," Physical Review 32, 110 (1928). doi:10.1103/PhysRev.32.110
- G. E. Uhlenbeck and L. S. Ornstein, "On the theory of the Brownian motion," Physical Review 36, 823 (1930). doi:10.1103/PhysRev.36.823
- R. F. Voss and J. Clarke, "'1/f noise' in music and speech," Nature 258, 317 (1975). doi:10.1038/258317a0
- M. S. Keshner, "1/f noise," Proceedings of the IEEE 70, 212 (1982). doi:10.1109/PROC.1982.12282
- P. Dutta and P. M. Horn, "Low-frequency fluctuations in solids: 1/f noise," Reviews of Modern Physics 53, 497 (1981). doi:10.1103/RevModPhys.53.497
- B. B. Mandelbrot and J. W. Van Ness, "Fractional Brownian motions, fractional noises and applications," SIAM Review 10, 422 (1968). doi:10.1137/1010093
- N. J. Kasdin, "Discrete simulation of colored noise and stochastic processes and 1/f^α power law noise generation," Proceedings of the IEEE 83, 802 (1995). doi:10.1109/5.381848
- R. A. Ulichney, "Dithering with blue noise," Proceedings of the IEEE 76, 56 (1988). doi:10.1109/5.3288
- M. Karjalainen and H. Järveläinen, "Reverberation modeling using velvet noise," AES 30th International Conference (2007). AES E-Library; see also Fagerström et al., 2024 on pulse densities.
- V. Välimäki, B. Holm-Rasmussen, B. Alary and H.-M. Lehtonen, "Late reverberation synthesis using filtered velvet noise," Applied Sciences 7(5), 483 (2017). Open access
- Equal-loudness contour (ISO 226), Wikipedia.
- A-weighting, Wikipedia.
- W3C, Web Audio API, AnalyserNode: Blackman window and FFT normalisation.
- Fractional Brownian motion, Wikipedia.