OP_RETURN to kod operacji (opcode) w języku skryptów Bitcoina, który oznacza wyjście transakcji jako niemożliwe do wydania. Za tym kodem można umieścić dowolne dane: hash dokumentu, znacznik protokołu, identyfikator tokena albo krótki tekst. Takie wyjście nie przechowuje bitcoinów, tylko informację zapisaną na zawsze w łańcuchu bloków.
Przez lata OP_RETURN był technicznym detalem, o którym wiedzieli głównie programiści. W latach 2025–2026 stał się osią najostrzejszego sporu w społeczności Bitcoina od czasów wojny o rozmiar bloku. Bitcoin Core w wersji 30 praktycznie zniósł domyślny limit danych w OP_RETURN, część użytkowników przeszła na alternatywny klient Bitcoin Knots, a w sierpniu 2026 roku zwolennicy ograniczeń próbowali przeforsować soft fork, który skończył się krótkim rozwidleniem łańcucha. Poniżej opisuję, jak to działa i co z tego wynika dla Ciebie.
Co to jest OP_RETURN w prostych słowach
Każda transakcja w Bitcoinie ma wyjścia. Zwykle każde wyjście to „adres” z kwotą, którą ktoś później może wydać. Wyjście z OP_RETURN działa inaczej: już na starcie wiadomo, że nikt go nie wyda, bo skrypt kończy się błędem przy każdej próbie. Dzięki temu węzły nie muszą trzymać go w zbiorze niewydanych wyjść, czyli w bazie, którą każdy pełny węzeł utrzymuje w pamięci i na szybkim dysku. Dane trafiają do bloku i zostają w historii, ale nie obciążają bieżącego stanu sieci.
Można to porównać do dopisku na przelewie bankowym. Przelew i tak przechodzi, a dopisek zostaje w historii konta. Różnica jest taka, że w Bitcoinie za każdy bajt dopisku płacisz opłatę, a zapis jest jawny i nieusuwalny.
Historia: od 40 do 80 bajtów
Ludzie zapisywali dane w Bitcoinie od samego początku. Zanim OP_RETURN stał się standardem, robili to w sposób szkodliwy dla sieci: wpisywali dane w miejsce fałszywych adresów albo kluczy publicznych. Takie wyjścia wyglądają na możliwe do wydania, więc węzły muszą je przechowywać w nieskończoność, choć nikt nigdy ich nie wyda.
- Marzec 2014, Bitcoin Core 0.9.0. Wyjścia OP_RETURN do 40 bajtów stały się „standardowe”, czyli węzły zaczęły je domyślnie przekazywać dalej. W notatkach do wydania zaznaczono, że nie jest to zachęta do przechowywania danych w łańcuchu, tylko mniej szkodliwa alternatywa.
- Lipiec 2015, Bitcoin Core 0.11.0. Limit podniesiono do 80 bajtów danych. Ta wartość obowiązywała domyślnie przez ponad dekadę.
- 2023–2024. Pojawiły się Ordinals i inskrypcje, które zapisują dane w części witness transakcji, a nie w OP_RETURN, więc limit 80 bajtów ich nie dotyczył. Protokół Runes z kolei używa właśnie OP_RETURN do zapisu operacji na tokenach.
Ważny niuans: limit 80 bajtów nigdy nie był regułą konsensusu. Był to tylko filtr w polityce przekazywania transakcji. Blok z większym OP_RETURN zawsze był ważny i każdy węzeł go akceptował. Limit decydował jedynie o tym, czy węzeł przekaże taką transakcję dalej, zanim trafi do bloku.
Spór z 2025 roku: Bitcoin Core v30
Wiosną 2025 roku deweloperzy Bitcoin Core zaproponowali zniesienie domyślnego limitu. Zmiana weszła do Bitcoin Core 30.0, opublikowanego 10 października 2025 roku. Najważniejsze nowości:
- Domyślny limit 100 000 bajtów. Parametr datacarriersize ma teraz domyślną wartość 100 000, co w praktyce oznacza brak limitu, bo wcześniej zadziała ogólny limit rozmiaru standardowej transakcji.
- Wiele wyjść OP_RETURN w jednej transakcji. Wcześniej standardowe było tylko jedno. Limit liczy się łącznie dla wszystkich takich wyjść.
- Możliwość powrotu do starego ustawienia. Operator węzła może ręcznie ustawić datacarriersize=83, co odpowiada dawnym 80 bajtom danych.
Argumenty zwolenników zmiany
- Mniejsze rozdęcie zbioru UTXO. Kto chce zapisać więcej danych, i tak to zrobi. Jeśli zablokujesz OP_RETURN, dane trafią do fałszywych kluczy publicznych, które zostają w pamięci węzłów na zawsze. OP_RETURN jest najmniej szkodliwym sposobem.
- Filtr i tak nie działał. Transakcje z dużym OP_RETURN trafiały do bloków przez bezpośrednie umowy z kopalniami, z pominięciem publicznej sieci.
- Neutralność. Węzeł nie powinien oceniać, czy transakcja jest „finansowa”, jeśli płaci opłatę i spełnia reguły konsensusu.
Argumenty przeciwników
- Bitcoin to pieniądz, a nie dysk. Miejsce w bloku powinno służyć płatnościom, a dane to spam, który konkuruje z normalnymi transakcjami o miejsce i podnosi opłaty.
- Ryzyko prawne. Większe porcje danych ułatwiają zapis nielegalnych treści, które każdy pełny węzeł musi pobrać i przechowywać.
- Kwestia procesu. Część społeczności uznała, że zmiana została przeforsowana mimo sprzeciwu wielu użytkowników.
Bitcoin Knots i próba soft forka
Bitcoin Knots to alternatywny klient Bitcoina rozwijany przez Luke’a Dashjra, oparty na kodzie Bitcoin Core, ale z ostrzejszymi filtrami danych. Po ogłoszeniu zmian w Core wielu operatorów węzłów przeszło na Knots w ramach protestu. Według Coin.dance udział Knots wśród publicznych węzłów przekroczył 20% we wrześniu 2025 roku, a w maju 2026 nadal wynosił około 20–23%. Na początku października 2026 roku Coin.dance pokazuje około 4 tys. węzłów Knots na około 25 tys. publicznych węzłów, czyli około 16%. Pamiętaj, że takie statystyki liczą tylko węzły widoczne z sieci i łatwo je zawyżyć, uruchamiając wiele instancji.
Najdalej idącą próbą było BIP-110 (wcześniej znane jako BIP-444), czyli tymczasowy soft fork ograniczający dane na około rok. Zakładał m.in. limit 83 bajtów dla OP_RETURN, 34 bajty dla większości innych skryptów wyjściowych i zakaz konstrukcji używanej przez inskrypcje Ordinals. Miał być aktywowany przez użytkowników, z wymuszonym oknem sygnalizacji od bloku 961 632.
Tak się nie stało. W ostatnim okresie przed tym blokiem soft fork sygnalizowało tylko 51 z 2016 bloków, czyli około 2,5%, przy wymaganych 55%. 8 sierpnia 2026 roku węzły wymuszające BIP-110 odłączyły się od głównego łańcucha. Gałąź BIP-110 wyprodukowała dwa bloki i stanęła, a główny łańcuch Bitcoina działał dalej. Zwolennicy twierdzą, że projekt nie jest zakończony, krytycy uznali go za porażkę. Stan na październik 2026: w sieci obowiązują dotychczasowe reguły konsensusu, Bitcoin Core z wysokim domyślnym limitem jest dominującym klientem, a Knots pozostaje wyraźną mniejszością.
Co to oznacza dla Ciebie
- Opłaty. Transakcje z danymi konkurują z Twoimi o miejsce w bloku. Gdy rośnie popyt na zapisy danych lub tokeny, opłaty potrafią skoczyć. Sam limit OP_RETURN nie decyduje o wysokości opłat, bo dane i tak trafiały do bloków innymi drogami, w tym przez witness, gdzie bajt jest tańszy.
- Wybór węzła. Jeśli prowadzisz własny węzeł, wybierasz politykę przekazywania transakcji, czyli co Twój węzeł przekazuje dalej. Nie zmieniasz tym, które bloki są ważne. Każdy z klientów akceptuje te same bloki, dopóki nie uruchomisz kodu z innymi regułami konsensusu.
- Ryzyko soft forków. Uruchomienie klienta z regułami aktywowanymi bez wsparcia kopalni może Cię odłączyć od głównego łańcucha. Przy rozwidleniu pojawia się ryzyko powtórzenia transakcji na drugiej gałęzi.
- Trading. Spór nie przełożył się na duży ruch ceny. Rozłam z 8 sierpnia 2026 roku przeszedł bez większej reakcji rynku. Jako trader patrzę na takie wydarzenia głównie przez pryzmat zmienności i komunikatów giełd o ewentualnych forkach.
Ryzyka i kontrowersje
- Trwałe dane. Wszystko, co trafi do bloku, zostaje tam na zawsze i każdy pełny węzeł musi to pobrać.
- Rozwidlenia łańcucha. Soft fork bez większości mocy obliczeniowej grozi powstaniem martwej gałęzi i zamieszaniem dla użytkowników, którzy za nią poszli.
- Zawodne statystyki. Liczba węzłów danego klienta nie jest głosowaniem i można ją sztucznie zawyżyć.
- Złudne poczucie kontroli. Filtr na Twoim węźle nie blokuje danych w łańcuchu. Jeśli kopalnia włączy transakcję do bloku, Twój węzeł i tak ją pobierze.
Najczęstsze pytania o OP_RETURN
Czy OP_RETURN może przechowywać bitcoiny?
Nie. Wyjście OP_RETURN jest niemożliwe do wydania, więc jeśli przypiszesz do niego kwotę, te środki są stracone na zawsze. Zwykle takie wyjście ma wartość zero.
Ile danych można zapisać w OP_RETURN po wersji 30?
Bitcoin Core 30 domyślnie przekazuje dalej transakcje z łącznie do 100 000 bajtów danych w wyjściach OP_RETURN, co w praktyce oznacza brak osobnego limitu. Operator węzła może przywrócić stare ustawienie odpowiadające 80 bajtom.
Czy Ordinals używają OP_RETURN?
Nie. Inskrypcje Ordinals zapisują dane w części witness transakcji Taproot. OP_RETURN wykorzystuje natomiast protokół Runes oraz różne systemy znakowania czasu i warstwy drugiej.
Czy powinienem uruchomić Bitcoin Knots zamiast Bitcoin Core?
To zależy od Twoich poglądów na filtrowanie danych. Oba klienty akceptują te same bloki, różnią się polityką przekazywania transakcji. Ryzyko pojawia się dopiero wtedy, gdy uruchamiasz wersję z dodatkowymi regułami konsensusu, jak BIP-110.
Czy spór o OP_RETURN jest zakończony?
Formalnie nie. Soft fork BIP-110 nie został aktywowany w głównej sieci, ale jego zwolennicy nie złożyli broni, a temat filtrowania danych wciąż wraca w dyskusjach deweloperów.
Podsumowanie
OP_RETURN to prosty mechanizm zapisu danych w Bitcoinie, który stał się symbolem sporu o to, czym ta sieć ma być. Od 2014 do 2025 roku domyślny limit wynosił najpierw 40, a potem 80 bajtów. Bitcoin Core 30 praktycznie go zniósł, co wywołało falę przejść na Bitcoin Knots i nieudaną próbę soft forka BIP-110 w sierpniu 2026 roku. Dla zwykłego użytkownika najważniejsze jest to, że reguły konsensusu się nie zmieniły, a wybór klienta węzła wpływa głównie na to, co Twój węzeł przekazuje dalej, a nie na to, co trafia do bloków.


