Batching is a method used to place as many transactions as possible into the limited block space available on Bitcoin’s blockchain. Batching is important because combining multiple outputs and payments into a single operation is space and cost efficient.
Batching multiple transactions into one transaction, therefore, creates cheaper and lower fees for everyone on the network. While per-transaction fees never exceeded 31 cents on a weekly average from January 2014 to January 2017, due to the sheer demand of the network, batching became a popular concept when these fees crept to almost $50 by the end of 2017.
Crypto exchanges were under pressure to start batching transactions. While some have batched for years, others ended up implementing a batching system. When the cryptocurrency recession kicked in after December 2017, these fees quickly reduced, so the pressure to batch soon faded.
Bitcoin uses an Unspent Transaction Output (UTXO) model. According to Hasufly on Medium, “In Bitcoin, a user has no balances, only UTXOs that they control. If they want to transfer money to someone else, their wallet selects one or more UTXOs as inputs that in sum need to add up to the amount they want to transfer. The desired amount then goes to the recipient, which is called the output, and the difference goes back to the sender, which is called change output.”
So, when it comes to keeping transactions as small as possible, there are two approaches. Users can consolidate their UTXO or inputs and use as few inputs as possible by continuously sending smaller UTXOs to themselves when the fees are low and receive one large UTXO in return. Alternatively, if the user makes transfers often, they can make almost an unlimited number of outputs to different people in one transaction. The second option is known as batching.
Batching is a great way to reduce the number of transactions because a Bitcoin transaction can aggregate thousands of single transfers. Batching is therefore very common with mining pools or cryptocurrency exchanges where there are frequent transfers who are willing to trade immediacy or more efficiency.
To use an analogy, think of transaction batching as a mail truck full of boxes. The truck which represents the transaction contains boxes (outputs). In each box, there is a certain amount of letters (satoshis). Hasufly recommends that when you analyze the transaction count to assess Bitcoin’s performance in the market, it’s like counting mail trucks to determine how many letters are being sent, even if the number of letters can change significantly.