The truth about Intersample Peaks!?!?
I've been doing a bit of deep diving (deep compared to the average person, at least) on Intersample Peaks (ISPs) in audio, to find out of I should actually worry about them or not.
What are Intersample Peaks (ISPs)?
Audio files are made up of samples, and these samples can only go up to 0dbfs (zero decibels full-scale). Any samples above 0dbfs will get clipped down to 0. Intersample Peaks is a colloquial term for soundwaves that go above 0dbfs (and get clipped off, causing distortion) when the digital signal is converted to analog for playback.
That probably wasn't a very good explanation, so I suggest going through the material that has helped other people (myself included) understand this:
AR Digital Show & Tell ("Monty" Montgomery @ xiph.org) (reupload of https://xiph.org/video/vid2.shtml)
Intersample Clipping - A Problem with Most Digital Playback Systems?
Issues with 0dBFS+ Levels On Digital Audio Playback Systems
You might have noticed that one of those is a 77-minute-long video. I know, that's a lot, but there are some really complicated concepts at play here. The first video shows us how digital samples, as long as they represent frequencies below nyquist, will translate into analog waves with 100% accuracy. The second video and the article show us that even though the translation of frequency and amplitude should be 100% accurate, wherever the soundwave goes above 0dbfs it will no longer be accurately translated unless the hardware has a workaround built into it.
The bottom line is this: some hardware is able to reproduce the digital waveform without clipping off the Intersample Peaks, presumably by implementing a DSP component before the DAC (digital to audio converter) that turns down the gain of the digital signal so that the resulting waveform will not have ISPs above 0dbfs; other hardware will not have such capabilities, so it's worth worrying about it in the mastering stage so the people who own such hardware can also enjoy your music with minimal distortion.
How do you prevent ISPs?
Well, the simplest and most excessive method is to set the ceiling of your track at -3dbfs, so that there's basically zero chance for ISPs to distort. But three whole decibels is a big ask in the world of music, where loudness is king. So my suggestion would be to limit your tracks to -1dbfs, as this should prevent many instances of distortion, while the ones that do get through will be small enough to not be noticeable. You can also use a True Peak limiter to skip the guesswork and limit based on your track's highest intersample peak instead, in which case you can get away with setting your ceiling to 0dbfs instead of -1dbfs (a limiter with high oversampling would also achieve the same result).
But normalizing to 0dbfs without causing issues is a theoretical best case scenario. There's also the problem of streaming service converting your files into a compressed format and introducing higher peaks in the process. I've not seen any hard evidence for this but many people do say that it happens. If you want to REALLY play it safe, then use a True Peak limiter and set the ceiling to -0.5 or even -1dbfs to eliminate any probability of file conversion inaccuracies causing ISPs to go over 0dbfs.
Conclusion?
Now, you can just disregard all I've said. It is not my intention to fear-monger and make people start to doubt whether their songs are distorting or not. There's plenty of professionally mastered music out there that's normalized to 0db and has ISPs even above 2dbfs, and you don't see anyone complaining that they sound broken or completely distorted. If you're getting paid thousands of dollars for your work, you can obsess over ISPs all you want: limit to -1dbfs True Peak, whatever, go crazy; but as a bedroom producer, it's not even worth thinking about— just set your ceiling a little bit under 0dbfs (True Peak or digital peak) and you'll be fine. No one is going to notice anyway.
P.S.: I've noticed that people are associating the em dash (—) with ChatGPT because it tends to use it a lot. Rest assured, I do not use ChatGPT or any other LLM, I just like using the em dash.