Back in the day my company had a regionally-slightly-popular Linux distro. Every couple months we'd burn 500-700 discs. We were small enough that it didn't make sense to mass produce, so we burned them ourselves.
We would occasionally get reports from people of being unable to read the discs, and so we went through ~6 months of investigation, test shipping to relatives, paying our customers to ship the discs back so we could check them.
Eventually I found that while every disc would validate by checksum of the entire disc (part of our burn process), if I tracked the time required to read every block, the discs that people had problems with would tend to have some spikes in the time it took to read some blocks. The drives we were using would read them, sometimes taking an amazingly long time to do so (like 30 minutes instead of 2), but users drives would just fail them.
Eventually I wrote a new validation process that in addition to the checksum used the timing information as well to determin if the disc failed, and at that point our failures in the field basically went to 0.
But, we got really sensitive to vendors of discs. Basically it was Taiyo Yuden or nothing. Some big brands would give us 20% failures to burn, where Taiyo Yuden was <1%.