When we break down fees a bit, we first need to understand where they come from and why. The fee is primarily determined based on two things: the size of the information being sent and the congestion of the mempool.
The size of the information is determined by the number of outputs (coins), inputs.
The congestion of the mempool is determined by the number of transactions being made at that moment. The price in sats is calculated based on virtual Bytes (vB). Right now, it's approximately at 8 sat/vB.
Now, let's see it with a practical example.
Right now, the high priority, as you can see in the photo, is at 8 satoshis per vB. But how many vB am I sending with a transaction? Well, it depends, as I mentioned earlier.
In this specific case, we have a transaction where they have paid 16,977 (11.25$) in fees, paying 14.7 sats/vB. They are paying double what they should, as with half they would already be at high priority, as we have seen before.
In this specific case, in the transaction flow, we can see that it has 4 inputs. That is, 4 unconsolidated coins. And it also has 4 outputs, meaning destination addresses.
In this case, it has a 2-of-3 multisig, which we will discuss another time. Down here, we can check the size in kvB, based on the information being moved. It's moving information with a weight of 1.15 kvB * 14.7 sats/vB = 16,900 sats, which is approximately the fee we saw earlier.
In this particular transaction, they are sending 45,311 sats and paying a fee of 16,900 sats. So, for this transfer, they are paying a 37.5% fee... π±
I hope you enjoyed it! If you have any questions, as always, don't hesitate to leave them down below, and I'll be happy to answer them! π