MIXPROTOOLSBook
Post · · 11 min read

Why your master sounds different on Spotify

It is not the normalisation, or not only. Something happens to your file between upload and playback, and you can hear it in advance.

You upload the master you approved. You play it back from the app a week later and something has gone. The top end is glassier, the cymbals have a faint fizz, the vocal sibilance is sharper than you remember. Nothing is dramatically broken, but it is not the file you signed off.

Most people put this down to playback normalisation, which is the wrong explanation. Normalisation applies gain and nothing else. What actually changed your record is the encoder.

What happens to the file

Streaming platforms do not serve your WAV. They transcode it into a lossy format — AAC at various bitrates on most services, Ogg Vorbis on others — and that transcode is a lossy approximation of your audio, re-synthesised at playback.

Lossy encoding is very good. On most material at the bitrates now in use, it is genuinely difficult to hear the difference in a controlled test. But it is an approximation, and approximations have error, and the error is not evenly distributed. It concentrates exactly where your master is already under stress.

The encoder does not damage your record evenly. It damages the parts you pushed hardest.

The overshoot problem

Here is the mechanism that matters most, and it connects directly to true peak.

A lossy encoder reconstructs the waveform from a frequency-domain description. The reconstruction does not land exactly on your original samples — it lands near them, and sometimes above them. A file that peaks at exactly zero dBFS on a sample meter can come out of an AAC encoder peaking meaningfully above zero, and everything above zero clips in the decoder.

That clipping is not a gentle limiter. It is hard digital clipping happening on the listener's device, after every decision you made, and it sounds like grit on transients and a hardness on loud vocals.

This is the real argument for a true peak ceiling below zero. Minus one dBTP is not caution for its own sake. It is room for the encoder to overshoot into without anything clipping. On very dense or very loud masters, minus one point five or minus two is a reasonable choice.

Why loud masters suffer more

Two effects compound on a heavily limited record.

The first is the overshoot above, which scales with how close to the ceiling the file sits and how much energy is packed against it. A record with a dozen transients per second all pressing at the limit gives the encoder a dozen opportunities per second to overshoot.

The second is subtler. Lossy encoders allocate bits according to a psychoacoustic model — roughly, they spend detail where you will notice and save it where masking hides it. Heavy limiting raises the average level of everything, which reduces masking, which means more of the signal is perceptually exposed, which means the encoder has more to encode with the same budget. Quality per element drops.

The practical effect is that the loudness you paid for in dynamics gets charged again at the encoder, and this time you do not see the bill until the record is out.

Hearing it before they do

You can encode your own master and listen. This is worth doing on every release and it takes about a minute.

Encode the approved master to AAC at the bitrate the platform uses, decode it back to WAV, then level-match the two and compare. Listen to cymbals, to sibilance, to the decay of reverb tails, and to anything with a sharp transient. Those are where the error lives.

Better still, null the two files against each other — invert one, sum them, and listen to what is left. What you hear is precisely what the encoder discarded or added. On a well-made master that residual is quiet and unstructured. On an over-limited one it is loud and you can identify instruments in it.

If you can hear the song in the null, the encoder is working too hard.

What to change

There are four adjustments, in order of how much they help.

  • Lower the true peak ceiling. Minus one dBTP as a default, lower on dense material. This alone removes most encoder-induced distortion.
  • Back the limiter off. Not to a target number — just until the record stops pressing continuously against the ceiling. Peaks with space between them encode cleanly; a solid wall does not.
  • Watch the extreme top end. Content above sixteen kilohertz is where encoders economise first, and aggressive air-band boosts mostly do not survive the trip.
  • Upload the highest-quality source you have. Twenty-four bit at the session rate. Never upload an MP3 or a sixteen-bit dither to a service that is going to transcode again — you pay the lossy penalty twice.

What not to do

Do not make a separate, quieter master for streaming. One master, made at the level the record wants, with a sane peak ceiling, is the right deliverable — platform-specific masters multiply the versions you have to track and solve a problem the ceiling already solved.

And do not chase the target loudness number. The number determines how much gain gets applied on playback. The peak ceiling determines whether the record arrives intact. Only one of those is a technical constraint, and it is not the one everybody talks about.

Encode your master, listen to it, and adjust. The people hearing your record are hearing the encoded version. You may as well hear it first.

More notes

Keep reading