Great breakdown — and the part most people miss is that this doesn’t even require two different
phones. Two identical handsets, same model, same site, can still split 320 vs 80, and that’s where
it gets interesting for operators:
Thermal + battery state. A warm phone or one in battery-saver throttles its modem and drops MIMO
layers / CA SCells to save power. Same silicon, half the throughput — and it won’t show in RSRP.
Rank, not RSRP. 4x4 capable ≠ 4 layers delivered. Rank depends on the channel — indoors, hand
grip, orientation, low scattering all collapse a 4x4 phone to Rank 1. Two users a metre apart can
sit on different ranks. Check the rank distribution, not just the MIMO spec sheet.
Grip and orientation. Hand position over the antenna array costs real dB and layers on mmWave and
mid-band alike. The “slow” phone is sometimes just being held differently.
SCell/PSCell selection. In CA/EN-DC the phone can be aggregating a weak secondary carrier that
caps it at Rank 1 while the other phone got a strong one — same capability, different carrier the
network handed them.
Which is the operator takeaway on top of your point: it’s not always “the device instead of the
network” — sometimes it’s the network choosing a worse carrier/rank FOR an equally-capable device.
The only way to tell capability-limited from state-limited from network-choice is to read the UE’s
actual reported rank, CA config and serving carriers, not the RSRP or the datasheet.