Skip to main content

Batch Transaction | Bitcoin Glossary | Mapping Bitcoin

Batch Transaction

Protocol

Also known as: transaction batching, payment batching

A single Bitcoin transaction that combines multiple payments to different recipients into one transaction. Batching reduces the overall fee cost and block space usage compared to sending individual transactions for each payment.

Overview

Batch transactions allow a sender to pay multiple recipients in a single Bitcoin transaction rather than creating separate transactions for each payment. This technique is widely used by exchanges, payment processors, and businesses that need to send many payments efficiently.

How It Works

A standard Bitcoin transaction has overhead that is largely fixed regardless of the number of outputs. By combining multiple payments into one transaction, the fixed overhead is shared across all recipients.

Individual transactions (3 payments):
  TX1: [Input] ──→ [Output A] + [Change]     ~140 vbytes
  TX2: [Input] ──→ [Output B] + [Change]     ~140 vbytes
  TX3: [Input] ──→ [Output C] + [Change]     ~140 vbytes
  Total: ~420 vbytes

Batched transaction (3 payments):
  TX:  [Input] ──→ [Output A]
                   [Output B]
                   [Output C]
                   [Change]                    ~200 vbytes
  Total: ~200 vbytes (52% savings)

Fee Savings

The savings from batching come from two sources:

  1. Reduced overhead: Each transaction has a fixed overhead for version, locktime, and input metadata. Batching pays this cost only once.
  2. Fewer change outputs: Instead of creating a change UTXO for each individual transaction, a batched transaction creates only one.

Common Misconceptions

Some users worry that batching harms privacy by linking all recipients in one transaction. While this is a valid concern, the sender's identity is already known to themselves. The primary privacy impact is that recipients can see each other's addresses, which can be mitigated by careful UTXO management and timing.

Who Uses Batching

Most major Bitcoin exchanges and services use batching for withdrawals to reduce their operational costs. This practice also benefits the broader network by consuming less block space per payment.