Skip to content
DonateБГ

Transactions

VOUT

A Bitcoin VOUT is the index of the output an input spends, counted from 0 and stored as 4 little-endian bytes. Learn how it pairs with a TXID.

By Dimitar Zurnov · Updated 4 Nov 2026
Adapted from Learn Me a Bitcoin by Greg Walker.

A VOUT is the index number of an output in a transaction. The first output is VOUT 0, the second is VOUT 1, and so on. An input uses it together with a TXID to say exactly which output it spends. The pair is an outpoint, and each outpoint on the chain is unique.

In raw data the VOUT is a 4-byte integer in little-endian order. The value 03000000 means output 3.

How does a VOUT select an output?

A transaction can create many outputs, and each one needs its own label so a later input can point at it. The TXID finds the transaction, and the VOUT finds the output inside it. An input can only spend one output, so it always names one TXID and one VOUT.

Outputs stay numbered in the order the transaction creates them, and that order does not change once the transaction is mined. An output can be spent only once. Once an outpoint is spent, any later transaction that names it is invalid.

The outpoint is the TXID plus the VOUT: here, output 3 of an earlier transaction. Earlier transaction f94cd7bd…5e204493 0 1 2 3 VOUT 0 VOUT 1 VOUT 2 VOUT 3 Outpoint: TXID:VOUT f94cd7bd…5e204493:3 VOUT in raw data: 03000000 4 bytes, little-endian, counted from 0
Outputs are counted from 0, so the fourth output has VOUT 3.

What does a VOUT look like in raw data?

Take transaction bcf91802a2aaa7de085759488b187fadf87a448f4f24f92cb38bb03285e2d8f9. It is a segwit transaction, so it has a marker, a flag and a witness, but its single input has the same fields as any other. That input's VOUT is 03000000.

The input's TXID field holds 9344205e8904b78e4451eadc6120d9304c570f6697d074793c188b7dbdd74cf9. Reversed, that is f94cd7bd7d8b183c7974d097660f574c30d92061dcea51448eb704895e204493, the TXID that explorers show. The VOUT field is 03000000. In big-endian that is 00000003, which is 3. So the input spends the fourth output, numbered 3, of the transaction f94cd7bd…5e204493. That output holds 109,243 satoshis.

The field is 4 bytes, so a VOUT can reach 4,294,967,295. In practice, transactions have far fewer outputs than that.

What is the VOUT in a coinbase input?

A coinbase input does not spend an earlier output, so it has no real VOUT. Its VOUT is set to the largest 4-byte value, ffffffff, which is 4,294,967,295. Software that sees ffffffff with a zero TXID knows it is looking at a coinbase. The coinbase page explains the rest of that input.

Why is it called a VOUT?

The name comes from Bitcoin Core's source code. Bitcoin was first written in C++, and a transaction there keeps its outputs in a numbered list called a vector, named vout. Its inputs sit in a vector named vin. The names survive in tools today. The verbose output of bitcoin-cli getrawtransaction still has a vin list for the inputs and a vout list for the outputs.

Where do you see a VOUT?

Block explorers show the VOUT next to each input's TXID. In the verbose output of getrawtransaction, each entry in vin has its own txid and vout fields. The vout in an input is the index of the output it spends. The vout list at the top level shows the outputs the transaction itself creates.

The next page, ScriptSig, covers the unlocking code that follows the TXID and VOUT in each input.

Sources

In this section: Transactions

All of Bitcoin from zero

Something look wrong? Tell us