Expected usable message count vs total messages received

I’m running dump1090 1.15 dev and its log file (/var/log/dump1090-mutability.log) provides stats on the incoming Mode-S messages.

Here’s a snippet from the log with contrived (but representative) values for ease of discussion:

100 Mode-S message preambles received
40 with bad message format or invalid CRC
45 with unrecognized ICAO address
3 accepted with correct CRC
2 accepted with 1-bit error repaired
5 total usable messages

So from a total of 100 messages received, only 5 (i.e. 5%) are actually usable which then get decoded and are counted as aircrafts and positions. Therefore I assume it would be fair to say that the higher the number of usable messages, the higher the number of aircraft and position counts.

What would be the expected percentage of usable vs total message received for an optimal setup?

In my example it’s 5%. I’ve checked through my actual logs over the past 3 days and I get around 1% but varies from below 1% to about 3%. FYI for reference my setup’s -3dBFS percentage is usually less than 3%.

What values do you get in your setup? Are there ways to improve the percentage? Optimizing antennas, LNAs, filters, cabling etc may improve the overall number of messages received but will it improve the percentage of usable messages?

Note that the preambles count is just the number of signals that the demodulator thinks looked like a Mode S preamble (it is a series of 4 pulses with particular spacing). This is the very first step and it has a lot of false positives, where it wasn’t really a preamble it was just noise. So it’s normal for the vast majority to be thrown away.