Transaction costs are calculated based on the transaction's data volume and network congestion.
As a block can only hold 4 MB of data, the number of transactions that can be executed in one block is limited. Therefore, more block data is required for a larger transaction. As a result, more significant transactions are usually charged on a per-byte basis.
When you use a BTC wallet to send a transaction, the wallet will typically provide you with the option to choose your Bitcoin fee rate. This charge will be determined in satoshis per unit of data (there are 100,000,000 satoshis in one Bitcoin) consumed on the blockchain by your transaction, abbreviated as sats/vByte. This rate will then be multiplied by the size of your transaction to get the total fee you'll pay.
If you want your transaction to be confirmed right away, your optimal fee rate may vary significantly. If you don't mind waiting, spending 2 sats/vByte will usually allow you to confirm your transaction within a day or a week.
Transaction fees also reflect the speed with which the user wants to have the transaction validated. When a user initiates a transaction, it goes into the mempool (transactions that have not yet been put to the blockchain and are being stored in volatile memory).
Upon validation, it is included in the block. Miners choose which transactions to validate and include in the block. When there is a backlog of transactions waiting to be validated, it creates an incentive for miners to process transactions with higher fee rates first. Most miners target transactions with high fee to byte ratios. When network transactions begin to reduce, transaction fees will fall.
Bitcoin exchanges, which connect buyers and sellers, calculate their fees in two ways: either a fixed fee per transaction or a percentage of total transaction volume over the previous 30 days. Exchanges use a tiered fee structure, depending on the total dollar volume transacted in both circumstances.
Fee arrangements are designed to encourage traders to trade frequently. As a result, costs for high-value and high-frequency transactions are correspondingly reduced. Fees for small, infrequent transactions are frequently higher.