In my experience, the Linux-based devices tend to be low-unit-number type devices such as gateways (or prototypes).
Also, that point 4 in the link does not have the most common type of embedded OS... i.e. "None". Bare metal is very common.
Another point here is that (according to that link), Raspbian is the most common. That indicates the data is coming from the "Maker" community, not the professional embedded developers... we don't tend to use RPi's for much.
Anything that will be remotely cost-sensitive (as anything produced in large numbers will be) will tend to be microcontroller-based.
Like you say, part of the solution is only sending the data that is needed. I would imagine another part of the solution that you could implement is some sort of shared string-table and hence transmitting only event-codes.