An approaching siren sounds sharper; after it passes, the pitch drops. The siren has not suddenly changed its own frequency. Motion has changed the spacing of the sound wavefronts and the rate at which they reach the listener.
That distinction is the key to the Doppler effect. Motion of the source changes wavelength in the medium. Motion of the observer changes the wavefront encounter rate. The classical sound equation combines those two mechanisms, so ordinary source–observer relative speed is not enough by itself.

fo = fs (v + vo) / (v − vs)Use signed radial velocities relative to the medium: motion toward the other party is positive; motion away is negative.
The variables need a medium and a direction
The formula is for sound propagating through a uniform medium. Every velocity must therefore be measured relative to that medium, not mixed between air, road, and vehicle frames.
Only line-of-sight components belong in this longitudinal formula. Let n̂ point from the source toward the observer along the sound ray. For medium-relative velocity vectors Vs and Vo, define
vs = Vs · n̂vo = −Vo · n̂The opposite signs are deliberate: the source approaches along +n̂, while the observer approaches along −n̂.
NOAA’s definition of radial velocity captures the same geometry: motion perpendicular to the sensing beam has no instantaneous longitudinal component. A fast object crossing the line of sight at right angles can have zero radial velocity at that event.
The ratio is dimensionless:
fo/fs = (v + vo)/(v − vs)speed / speed → no unitAll four velocities in the sums and differences must use the same unit. Convert kilometres per hour to metres per second before combining them.
The BIPM SI Brochure identifies hertz as the SI derived unit of frequency and metres per second as the coherent unit of speed.
Derive the equation from crests, not memorized signs
Let the source emit fs crests each second. The time between crests is
Ts = 1/fsOne new crest is emitted every source period.
λ = (v − vs)Ts = (v − vs)/fsAn approaching source moves toward the earlier crest before emitting the next one.
vencounter = v + voAn approaching observer moves into the oncoming train of crests.
fo = vencounter/λ = fs(v + vo)/(v − vs)Frequency is crests encountered per second.
For a source moving forward at unsigned speed u, this also exposes the wavelength asymmetry:
λfront = (v − u)/fscompressed wavefrontsλ0 = v/fsuniform wavefrontsλbehind = (v + u)/fsstretched wavefrontsThis wavefront construction is derived in OpenStax University Physics §17.7 and visualized by NASA Glenn.
Source motion and observer motion are not interchangeable
When the source is stationary, set vs=0:
fo = fs(1 + vo/v)Wavelength stays fixed; encounter rate changes.
fo = fsv/(v − vs)Wavefront spacing changes in the medium.
The difference is small at ordinary speeds but real. With v=343 m/s and a 20 m/s closing speed, a moving source produces the factor 343/(343−20)=1.06192. A moving observer produces (343+20)/343=1.05831. The same relative closing speed does not give the same exact sound shift, because the air supplies a preferred propagation frame.

A sign table that survives both approach and recession
Use the signs defined beside the equation; do not choose an unexplained pair of plus-or-minus symbols.
| Motion | Signed input | Equation effect | Expected pitch |
|---|---|---|---|
| observer toward source | vo > 0 | numerator increases | fo > fs |
| observer away from source | vo < 0 | numerator decreases | fo < fs |
| source toward observer | vs > 0 | denominator decreases | fo > fs |
| source away from observer | vs < 0 | denominator increases | fo < fs |
Two quick checks catch many sign errors: setting both motion terms to zero must return fo=fs, and approach must increase the received frequency in the subsonic domain.
Rearrangements for inverse problems
Let r=fo/fs. Then the forward equation can be rearranged without changing its assumptions:
fs = fo(v − vs)/(v + vo)vo = r(v − vs) − vvs = v − (v + vo)/rv = (fovs + fsvo)/(fo − fs)One measured frequency ratio cannot determine both motion terms. The wave-speed form is undefined when fo=fs, and inverse estimates become unstable near a zero denominator. Algebra cannot replace missing measurements.
Worked example 1: the pitch change as a source passes
A source emits 700 Hz and moves at 25.0 m/s first toward and then away from a stationary observer. Use v=343 m/s, appropriate for dry air near 20 °C.
vo = 0fo = 700(343)/(343 − 25.0) = 755.0314 Hz ≈ 755 Hzλfront = (343 − 25.0)/700 = 0.4542857 m343/0.4542857 = 755.0314 Hzfo = 700(343)/(343 − (−25.0)) = 652.4457 Hz ≈ 652 Hzλbehind = (343 + 25.0)/700 = 0.5257143 m; 343/λ = 652.4457 HzThe checks have the right direction: 755>700>652. The changes are not symmetric: the approach shift is +55.03 Hz, while the recession shift is −47.55 Hz. Setting the source speed to zero would return exactly 700 Hz.
Worked example 2: both source and observer move
A source emits 500 Hz. The observer moves toward it at vo=+10.0 m/s, while the source moves toward the observer at vs=+20.0 m/s. Again use v=343 m/s.
fo = 500(343 + 10.0)/(343 − 20.0)r = 353/323 = 1.092879257fo = 546.4396 Hz ≈ 546 Hzλ = (343 − 20.0)/500 = 0.646000 m(343 + 10.0)/0.646000 = 546.4396 Hzvs = 343 − 353/r = 20.0000 m/sThe forward wavelength check and inverse recovery agree with the original inputs. Rounding only the final reported frequency preserves that consistency.
Sound speed is an assumption, not a universal constant
The familiar 343 m/s is a property of dry air near 20 °C. Sound speed depends on the medium and its thermodynamic state. OpenStax gives v=√(B/ρ) for a fluid and v=√(γRT/M) for an ideal gas in its speed-of-sound treatment.
For uniform wind velocity U, convert ground-frame motion to the medium frame before taking radial components:
Vs,med = Vs,ground − UVo,med = Vo,ground − UDo not add wind to the sound speed in one part of the equation while leaving the source and observer in the ground frame.
Temperature gradients, wind shear, refraction, and dispersive media can bend the ray or vary its speed along the path. Then the single uniform-medium equation is only an approximation.
Fly-bys, echoes, and other cases that need more geometry
For a fly-by, constant vehicle speed does not imply constant radial speed. The line of sight rotates, so the received frequency sweeps from approach through a zero radial component to recession. Propagation delay matters too: the sound heard when the vehicle is visually abreast was emitted earlier.
The timing relation makes that delay explicit. If a crest leaves the source at time te and reaches the observer at the later time tr, then in a uniform stationary medium v(tr−te) = |ro(tr)−rs(te)|. The source velocity belongs to the emission event; the observer velocity belongs to the reception event. Differentiating this arrival-time relation produces the instantaneous Doppler factor.
This distinction matters when direction or speed changes appreciably during the sound’s travel time. A constant-velocity, fixed-line answer may be a useful local estimate, but it is not a complete fly-by model. An accelerated source normally produces a chirp, while an offset straight path changes its radial component even at constant speed.
An echo is a two-stage shift. A moving reflector first receives a shifted wave, then behaves like a moving secondary source on the return path. For a collinear target approaching a colocated stationary acoustic transmitter and receiver at speed u,
freturn/ftx = (v + u)/(v − u)The low-speed approximation is Δf/ftx ≈ 2u/v. The factor of two comes from the outbound and return legs.
NIST’s speed-radar calibration study likewise identifies the round-trip factor and radial component for monostatic radar. Oblique or separated transmitter–receiver geometry needs distinct projections for the two legs.
The Mach boundary is not an infinite pitch
As an approaching source’s radial speed approaches v, the denominator v−vs approaches zero. The equation’s mathematical blow-up does not predict an ordinary tone of infinite frequency. It announces that the subsonic, separated-wavefront model has reached its boundary.

At Mach 1 the fronts pile up; above it the source outruns earlier fronts and forms a shock cone. OpenStax’s shock-wave section shows why the subsonic expression becomes singular or physically meaningless. A robust implementation should reject v−vs≤0 for this formula rather than return infinity or negative hertz. It should also reject v+vo≤0 when a receding observer outruns the incoming fronts.
Light uses a different Doppler equation
Light in vacuum has no material-medium rest frame, so replacing v with c in the sound equation is wrong. For longitudinal light, let β=u/c, with u>0 for approach and |u|<c:
fo = fs √[(1 + β)/(1 − β)]Approach raises frequency and recession lowers it. The formula depends on relative motion and incorporates relativity, not a sound medium.
See OpenStax University Physics §5.7. Even this is specifically longitudinal: relativity also permits a transverse Doppler effect. Cosmological expansion and gravitational redshift are different mechanisms again; they should not be converted into a velocity with this one formula.
Common failures and their repairs
| Failure | What it changes | Repair |
|---|---|---|
| Use unsigned speeds | Approach and recession can receive the same answer or the wrong sign. | Define positive directions before substitution. |
| Use total speed instead of radial speed | Transverse motion is falsely counted. | Project velocity onto the propagation direction. |
| Use only relative speed | Source wavelength change and observer encounter rate are conflated. | Keep separate medium-relative source and observer terms. |
| Mix km/h and m/s | The speed sums and ratios lose meaning. | Convert every velocity to one unit first. |
| Treat 343 m/s as universal | Temperature and medium errors propagate directly into the shift. | State the medium and sound-speed assumption. |
| Ignore propagation delay | A fly-by uses the wrong emission geometry. | Relate emission time to later reception time. |
| Apply one shift to an echo | The return-leg transformation is omitted. | Model outbound and inbound legs separately. |
| Accept a zero or negative denominator | The subsonic model reports infinity or negative frequency. | Switch to shock/arrival analysis at the domain boundary. |
Insert c into the sound formula | Relativistic physics is replaced by a medium model. | Use the appropriate light Doppler relation. |
The safest way to remember the classical sound equation is not as a pattern of signs. Remember the two physical operations: the source sets the spacing between crests, and the observer sets how quickly those crests are met. The algebra then follows the wavefronts.