512 / 691OP_RET

OP_RETURN and null-data outputs

A Bitcoin Script opcode that fails immediately when executed and is commonly placed first in a provably unspendable output carrying data.

OP_RETURN is opcode 0x6a. Consensus makes an executed OP_RETURN fail, so an output whose script begins with it cannot be spent. Bitcoin Core recognizes a push-only OP_RETURN script as the standard NULL_DATA output type and can omit it from the UTXO set. Relay and mining limits for these outputs are local policy, not consensus rules.

OP_RETURN is an opcode, while a null-data output is a transaction output whose script normally begins with that opcode. The opcode guarantees failure if executed; placing it first makes the output provably unspendable. Data after it can be committed to the transaction, but is not interpreted by Bitcoin consensus as a file format or application protocol.

A consensus-valid block may contain OP_RETURN constructions that a node would not relay from its mempool. Bitcoin Core's solver labels push-only scripts beginning with OP_RETURN as NULL_DATA, and its policy decides which such transactions are standard. Miners may use different policy, so rejected relay does not mean consensus-invalid and relayed does not guarantee confirmation.

Before Bitcoin Core 30.0, the familiar default was one data-carrier output with an 83-byte serialized script limit, usually described as an 80-byte payload plus overhead. Core 30.0 raised the default datacarriersize to 100,000 and allowed multiple null-data outputs, applying the limit to their aggregate payload. Operators can override policy; these defaults are versioned software behavior, not permanent Bitcoin rules.

Atlas coordinate OP_RET is classified under Protocol and dated 2014. Its attached evidence trail begins with Bitcoin Developer Reference — OP_RETURN · Bitcoin Core — script.h IsUnspendable · Bitcoin Core — solver.cpp NULL_DATA · Bitcoin Core 30.0 release notes. Source type, publication date and implementation status matter: a specification describes a design, while deployed software and historical records show what actually happened.

OP_RETURN and null-data outputs connects directly to Bitcoin Script · Transaction · UTXO · Mempool · Transaction fees · BIP 110 — Reduced Data Temporary Softfork. These links are not synonyms or endorsements; they expose prerequisites, mechanisms, consequences and competing designs so the claim can be followed through the wider Bitcoin system.

For the clearest picture, read this entry together with Bitcoin Script, Transaction, UTXO, Mempool, Transaction fees, BIP 110 — Reduced Data Temporary Softfork.

DOC · 001Bitcoin Developer Reference — OP_RETURNDocumentationDOC · 002Bitcoin Core — script.h IsUnspendablePrimaryDOC · 003Bitcoin Core — solver.cpp NULL_DATAPrimaryDOC · 004Bitcoin Core 30.0 release notesPrimary
Reviewed 1 August 2026Source-first · No investment advice