Another case depended on your speed transaction, faster transactions mean higher fees could be paid.
This part is not correct.
Transaction speed depends on;
1. How quick a block is confirmed
2. The size of unconfirmed transaction in the mempool.
I could pay a very low fee, when the mempool is almost empty and within seconds a block containing my transaction gets confirmed while you would pay a very high fee but the next block that could contain your transaction takes 40 minutes to get confirmed.