On January 3, 2009, an anonymous developer named Satoshi Nakamoto mined a block on a network nobody else was using yet. Block zero. Fifty bitcoin to an address that would never be spent from. A coinbase scriptSig containing a London Times headline, hardcoded permanently into the genesis of a new monetary system.
Today, years later, you can still read that headline directly off the chain. Let's do that, one RPC at a time.
The hash
Every block has a unique hash. The genesis block’s was the first ever computed.
It begins with a long run of leading zeros, the result of a proof-of-work search
Satoshi ran on his own machine before publishing the network. You can retrieve
it yourself using Bitcoin Core’s getblockhash RPC, which takes a block height,
in this case 0, and returns the block’s hash.
You should see 000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f.
That's it. The first block hash in the longest-running, highest-value blockchain
in existence.
The block itself
Now let's look at the block's structure. Pass the hash to the getblock RPC and
you'll see the header (version, previous-block, merkle-root, time, bits, nonce)
plus a single transaction: the coinbase.
Notice previousblockhash isn't there: there is no previous block. The
chain starts here. The time field reads
1231006505, which is January 3, 2009 18:15:05 UTC.
The transaction
The genesis block contains exactly one transaction, a coinbase that mints 50 BTC
to a P2PK output. Bitcoin Core treats this transaction as a special case: its
output was never added to the UTXO set, so it can't be spent, and
getrawtransaction refuses to return it, even with txindex=1.
But you can read it. Ask getblock for the genesis block again,
this time at verbosity 2, and the coinbase comes back decoded inline. The transaction's id:
4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b.
Look at the tx[0].vin[0].coinbase field. That's the data Satoshi
embedded in the input scriptSig. It's a hex string. Decode it as ASCII:
04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73
The headline from The Times of January 3, 2009: "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks".
This serves two purposes. First, it timestamps the genesis block, no genesis block could have been mined before that newspaper existed. Second, it's a permanent editorial: a new monetary system, mined into existence at the moment the old one was on the brink of its second bailout in three months.
The output that never moved
The 50 BTC subsidy went to a P2PK output paying
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa. That address has received
additional donations from admirers over the years, mostly tiny, plus one
payment of about 26.9 BTC in January 2024, but the original
50 BTC has never been spent.
Satoshi could not spend it even with the private key: the genesis coinbase was never added to the UTXO set, so no node would accept a transaction spending it. Whether that was deliberate or an accident of how the first block was coded is one of Bitcoin's most durable mysteries. Either way, those coins have never moved.
What you just did
Four RPC calls, four pieces of permanent on-chain history surfaced from raw bytes. Every Bitcoin Core node in the world will return the same answers, because that's the point: a permissionless, deterministic ledger that anyone can audit.
Sources
- Bitcoin v0.1.0 source code, src/main.cpp, Satoshi Nakamoto (mirror maintained by GitHub user trottier), January 8, 2009. The genesis block as hardcoded in the first release, including the Times headline and the 50 BTC output.
- Bitcoin Core, src/rpc/rawtransaction.cpp, getrawtransaction, Bitcoin Core developers, v31.1 tag, read October 2, 2026. The check that makes
getrawtransactionrefuse the genesis coinbase. - Chancellor Alistair Darling on brink of second bailout for banks, Francis Elliott (Deputy Political Editor) and Gary Duncan (Economics Editor), January 3, 2009. The Times article behind the headline, which counts the first bailout as the £37 billion part-nationalisation of 2008.
- SATURDAY'S: PRESS TIPS AND COMMENT, Reuters, January 3, 2009. Same-day press digest listing the Times front-page wording that matches the coinbase text.
- HM Treasury press notice 105/08: Treasury statement on financial support to the banking industry, HM Treasury, October 13, 2008. The bailout the Times counts as the first: £37 billion for RBS, HBOS and Lloyds TSB, under measures announced on October 8, 2008.
- HM Treasury press notice 05/09: Statement on financial intervention to support lending in the economy, HM Treasury, January 19, 2009. The second bank package, announced 16 days after the genesis block's timestamp.
- Bitcoin Core, src/validation.cpp, ConnectBlock, Bitcoin Core developers, v31.1 tag, read October 2, 2026. The genesis block's transactions are never connected, so its coinbase is unspendable.
- Genesis block, Bitcoin Wiki contributors, last edited March 21, 2024. Secondary source for the point that nobody knows whether the unspendable reward was intentional.
Corrected October 2, 2026. An earlier version told readers to fetch the genesis coinbase with getrawtransaction, which Bitcoin Core refuses for this one transaction; the story now uses getblock at verbosity 2. It said the old system was being bailed out for the second time in eighteen months; the bailout the Times headline counts as the first was the UK bank rescue of October 2008, under three months before the genesis block, and the second was still only being considered on January 3, 2009. It also asked whether Satoshi could spend the original 50 BTC or chose not to, when that output cannot be spent with any key, and it called the later donations to the address small, though one payment in January 2024 was about 26.9 BTC.