BitcoinMachine
TERM_DEF // TRANSACTION / COINBASE_TRANSACTION
COINBASE
TRANSACTION
transaction/">Coinbase Transaction. The first transaction in every block; has one input with no outpoint and creates the block subsidy plus fees.

This page sits in the Transaction section — How money moves: inputs, outputs, fees, signatures, sighash flags, and the formats that wrap them. Read on for what it is, why it exists, how it works under the hood, and what to watch out for.
Coinbase Transaction — at a glance
TRANSACTION
Coinbase Transaction is part of the COINBASE sub-family of transaction-level concepts. The first transaction in every block — has no real inputs, creates new bitcoin out of nothing equal to the block reward. The first transaction in every block; has one input with no outpoint and creates the block subsidy plus fees.
Why it exists
DESIGN
New bitcoin has to come from somewhere — there's no central issuer. The coinbase tx is how the protocol mints the block subsidy + collects miner fees: a special tx where the miner names themselves as the recipient, with no prior outpoint to consume.
Mechanism
HOW IT WORKS
The single input has a prev_txid of all zeros and vout=0xffffffff. The scriptSig (legacy) or witness (SegWit) contains arbitrary data — typically the block height (BIP-34) plus an extranonce + miner-vendor signature. Outputs pay the subsidy + fees to addresses the miner controls.
1. Wallet selects UTXOs whose total value covers the spend amount + estimated fee (coin selection). 2. Wallet builds the transaction body: version, inputs (each with prev txid + vout + sequence), outputs (each with value + scriptPubKey), locktime. 3. Wallet computes the sighash for each input (which parts of the tx the signature commits to — controlled by the SIGHASH flag). 4. Wallet signs each input with the right private key. Witness/scriptSig is populated with the resulting signatures + pubkeys. 5. Tx is broadcast to peers. Mempool propagation: tens of seconds globally. 6. A miner includes it in a block. Confirmation count grows by 1 per block; after ~6 the tx is effectively final.
Coinbase Transaction — COINBASE
EXAMPLE
Block 840,000 coinbase (the 2024 halving block): Input: prev_txid : 0000…0000 (32 bytes, all zeros — "no prevout") vout : ffffffff (4 bytes, special) scriptSig : sequence : ffffffff Outputs: value 1 : 3.125 BTC + total fees → miner address value 2 : 0 → OP_RETURN with witness commitment (required for SegWit-enabled blocks) Subsidy schedule: 50 → 25 → 12.5 → 6.25 → 3.125 → … (halves every 210k blocks)
NO PRIOR INPUT
Only the coinbase tx is allowed to create new bitcoin. Any other tx whose input sum < output sum is rejected as invalid.
ATOMIC
A transaction is either fully accepted into a block or fully rejected. There is no partial spend.
IMMUTABLE INPUTS
A UTXO can only ever be spent once. After that, it is permanently consumed.
NO BALANCES
Bitcoin tracks UTXOs, not balances. Your wallet computes a balance by summing the UTXOs it controls.
Things that catch people out
PITFALLS
  • Coinbase outputs are NOT spendable for 100 blocks (BIP-2/-30 maturity rule). Miners can't spend their own reward immediately.
  • address-reuse/">Address reuse degrades privacy — every reuse links more of your UTXOs together publicly. Modern wallets generate a fresh address per receive.
  • Fee estimation matters: under-pay and your tx sits in the mempool for hours; over-pay and you tip the miner more than necessary. Use a fee estimator.
  • "Change outputs" must go back to a fresh address you control. A missing output/">change output sends the difference to the miner as fee — a known footgun.

TERMINOLOGY
Coinbase Transaction
The first transaction in every block; has one input with no outpoint and creates the block subsidy plus fees.
Transaction (Tx)
A signed payload spending one or more UTXOs and creating new ones; every state change in Bitcoin is a tx.
Raw Transaction
The hex-serialized bytes of a transaction, ready to broadcast or analyze.
Transaction ID (TXID)
HASH256 of a transaction's pre-witness serialization; used to reference outputs by (txid, vout).
wTXID (Witness TXID)
HASH256 of the full transaction including witness data; commits to signatures and used in the witness commitment.
Input
A reference to a previous output being spent, plus the data (scriptSig/witness) authorizing the spend.
Output
An (amount, scriptPubKey) pair created by a transaction; spendable later by a tx whose input references it.
UTXO (Unspent Transaction Output)
An output that hasn't been spent yet; your "balance" is the sum of UTXOs you can sign for.