because only limited number of transactions will get place in the block (~4MB).
A block (at present) can never contain 4 MB worth of transactions.
The limit on a block at present is 4,000,000 weight units. See my
reply on the previous page for a brief explanation of what weight units are. Legacy transactions are only non-witness data, so take up 4 weight units per byte, and a block could fit a maximum of 1 MB. Witness data takes up 1 weight unit per byte, so if a block contained nothing but witness data, it would be 4 MB.
There are no transactions which are
just witness data, though. SegWit transactions contain both non-witness (at 4:1) and witness (at 1:1) data. A block filled with regular SegWit transactions and no legacy transactions has an upper limit of somewhere around 2.5 MB. The biggest block we've ever seen so far was block number 566575, at 2.377 MB.