ビットコインの取引手数料を解説:sat/vB、メンプール、手数料の引き上げ
ビットコイン取引のサイズ、sat/vB、メンプールの需要、手数料見積もり、RBF、CPFPがオンチェーン送金の費用と承認の見込みにどう影響するかを解説します。
このガイドの内容手数料はビットコインのブロック内の領域に対して支払います
短い要約
ビットコインの取引手数料は、通常、取引の仮想サイズと手数料率をもとに計算します。手数料(satoshi)=仮想バイト数(vB)× 1仮想バイトあたりのsatoshi(sat/vB)です。送るBTCの額だけで手数料が決まるわけではありません。手数料の見積もりは変化するネットワーク状況を示すものであり、承認時間を約束するものではありません。
手数料はビットコインのブロック内の領域に対して支払います
ビットコインの取引では、未使用の取引出力(UTXO)を1つ以上使い、新しい出力を作ります。すべての入力の合計額から出力の合計額を差し引いた額が取引手数料です。この手数料は、その取引を含むブロックを作成したマイナーに渡ります。プロトコルが送金額から一定の割合を差し引く仕組みではなく、ウォレット提供者のサービス料とも異なります。
取引は限られたブロック領域を競い合います。マイナーは候補ブロックを組み立てる際に、各取引が提示する手数料や、取引同士の依存関係を考慮できます。ほかの条件が同じなら、手数料率の高い取引は選ばれやすくなることがありますが、次のブロックの場所を確保するものではありません。実際に含まれるかどうかは、手数料市場、取引の依存関係、マイナーの選択、そして関連ノードに取引が届くかどうかに左右されます。
この記事では、ビットコインネットワークを使ったオンチェーン取引を扱います。取引所からの出金には取引所独自の手数料が加わる場合があり、Lightning決済では別の取引経路と手数料体系を使います。ウォレットの画面に複数の費用がまとめて表示されることもあるため、表示額がネットワーク手数料なのか、サービス料なのか、または両方なのか確認しましょう。Bitcoin.orgの手数料ガイドでは、取引サイズ、sat/vB、ブロック領域の需要の関係が説明されています。
合計手数料と手数料率は、それぞれ異なる情報を示します
合計手数料は、取引に支払うsatoshiの数です。手数料率はその額を仮想バイトあたりのsatoshiで表し、sat/vBと記します。合計手数料を取引の仮想サイズで割ると手数料率になり、仮想サイズに選んだ手数料率を掛けると合計手数料を見積もれます。同じ手数料率でもサイズが異なる取引では合計額が変わるため、多くのウォレットでは手数料率を選んだり確認したりできます。
仮定の例として、サイズが140 vBで、手数料率が25 sat/vBの取引を考えます。手数料は140 × 25 = 3,500 satoshiです。1 BTCは100,000,000 satoshiなので、3,500 satsは0.000035 BTCです。同じサイズの取引で40 sat/vBを使うと、手数料は5,600 sats、つまり0.000056 BTCになります。これらの数値は計算方法を示す例であり、現在の手数料見積もりや推奨値ではありません。
手数料率は、送金額に対する手数料の割合ではありません。仮想サイズと手数料率が同じなら、異なるBTC額を送る2つの取引でも手数料が同額になることがあります。入力データが多かったり、手数料率が高かったりすれば、少額の送金が大きな送金より高くつくこともあります。お釣りの出力も影響します。入力の合計が支払額を上回る場合、差額を送信者へ戻す出力を作ることがありますが、その出力分の領域が追加で必要です。
仮想サイズは取引が使うブロック領域を表します
ビットコインウォレットは、シリアライズされたすべてのバイトを同じ重みで数えるのではなく、仮想サイズ(vsize)を使って手数料を計算するのが一般的です。SegWitでは取引データに重みが設定されます。BIP 141では取引の重みを、基本サイズの3倍に全体サイズを加えた値と定義しており、全体サイズにはwitnessデータも含まれます。仮想サイズは重みを4で割り、小数点以下を切り上げて次の整数の仮想バイトにします。この計算はwitnessデータに異なる重みを割り当てるため、単純なファイルサイズとは一致しません。
入力と出力が追加するデータ量はそれぞれ異なります。入力は過去の出力を参照し、その出力を使う条件を満たすデータを提示します。正確なサイズは出力の種類や、署名を含むアンロック用データによって変わります。出力は金額とロックスクリプトを指定します。そのため、合計送金額が同じでも、複数の小さな入力を使う取引は入力が1つだけの取引より大きくなることがあります。
ウォレットが受け取った小さな出力を複数まとめて支払いに使う場合、入力数が特に重要になります。選んだ出力をそれぞれ使う必要があり、入力が1つ増えるごとにデータも増えます。お釣りの出力を作れば、さらにバイトが必要です。アドレスやスクリプトの種類によってサイズは異なり、署名の長さも変わることがあります。「一般的な取引」のサイズはあくまで一例で、すべてのビットコイン送金に当てはまる固定値ではありません。
使うコインや受取人を変える、お釣り用アドレスの種類を選び直す、手数料率を変更すると、ウォレットの見積もりも変わる場合があります。そのため、送金額だけを見ても十分ではありません。取引の構成がvsizeを決め、手数料率は1 vBあたりに提示するsatoshiの数を決めます。BIP 141はwitnessデータを考慮した仮想サイズの計算方法を定義しています。
メンプールは未承認取引を追跡しますが、世界共通の待ち行列はありません
取引をブロードキャストすると、それを受信して受け入れたノードのメモリプール(メンプール)に保管されることがあります。メンプールは各ノードが保持する未承認取引の集合であり、ネットワーク全体で同期された単一の待ち行列ではありません。ノードによって取引を確認する順序が違ったり、異なる中継ポリシーを適用したり、容量上限が異なったりするほか、特定の取引を受信していない場合もあります。
マイナーはコンセンサスルールと各自の選択方針に従い、把握している取引から候補ブロックに含めるものを選びます。未承認の別の取引が作った出力を使う取引には依存関係があります。その場合、マイナーはそれぞれを独立した手数料率の取引として扱わず、親取引と1つ以上の子孫取引をまとめて評価することがあります。そのため、外部サイトに表示される単純な「順位」は不完全だったり、一時的なものだったりします。
ブロック領域を求める利用者が増えると、早く含まれる可能性のある手数料率が上がることがあります。需要が落ち着けば、低い手数料率の取引も競争力を持つ場合があります。混雑状況や、ウォレットまたはノードが把握している取引はすぐに変わることがあります。あるブロックエクスプローラーやウォレットのメンプール表示に取引が見えていても、すべてのマイナーやノードが同じ情報を持つとは限りません。
未承認と表示されている取引は、まだ未承認です。その表示だけで、取引が失われた、または無効になったとは言えません。ノードのポリシーと変化するメンプールの状況によっては、あるノードのメンプールから消えた取引が後で再送信されたり、再び受け入れられたりすることがあります。ウォレットで保留中と表示されているなら、入力を別の支払いに使えると決めつけないでください。別の支出を試す前に取引状況とウォレットの公式案内を確認しましょう。

手数料の見積もりは目標であり、承認の保証ではありません
ウォレットは「低速」「標準」「優先」などの選択肢や、目標ブロック数を表示することがあります。これは観測した状況で競争力を持つ可能性のある手数料率の推定値です。Bitcoin Coreの手数料推定ドキュメントは、推定器に十分な履歴がある場合、目標ブロック数内に承認が始まることを狙った概算レートを説明しています。最近のデータが不足していると、推定値を提示できない場合があります。ウォレットやサービスが異なれば、利用するデータ、モデル、更新間隔、目標の定義も異なることがあります。
「次のブロック」という目標は、そのブロックに必ず取引が含まれるという約束ではありません。見積もりの基になった状況が変わった後に取引が届くこともあり、より高い手数料を提示する新しい取引が領域を競う可能性もあります。取引の依存関係がブロックの選択に影響することもあります。目標ブロック数は見積もりの入力であり、マイナーとの契約ではありません。
手数料の見積もりがいつ更新されたか、ウォレットが手数料率と合計額のどちらを表示しているか確認してください。急ぎでなければ、低い手数料率を選んで待つこともできますが、承認までの時間は不確実です。時間が重要なら、ウォレットの見積もりと最新の手数料情報を比較し、状況が変わった場合にウォレットが提供する機能を確認しましょう。「念のため」に手数料を上げても、特定のブロックに含まれる保証は得られず、費用だけ増えることがあります。
推定器が提示する手数料率は、すべてのノードが中継のために受け入れる最低レートを決めるものでもありません。中継ポリシー、メンプールの上限、ウォレットの設定、承認見込みは関連していますが、別々の問いに答えます。Bitcoin Coreのメンプール設計ドキュメントは、取引の依存関係が選択や置き換えポリシーにどう影響するかを説明しています。1つのソフトウェア版や1つのノードの方針を、ネットワーク全体に永続する規則と考えないでください。
RBFでは保留中の取引を、より高い手数料の版に置き換えられる場合があります
Replace-by-fee(RBF)は、ウォレットと関連ノードのポリシーが許可する場合に、未承認取引と競合する、より高い手数料の取引で置き換える方法です。置き換え後の取引は少なくとも1つの同じ入力を使うため、競合する2つの版がその入力の有効な支出として両方承認されることはありません。ウォレットには「手数料を引き上げる」操作が用意されていることがありますが、使えるかどうか、必要な条件、変更後の手数料はウォレットと取引の構成によります。
特定の方法でRBFを通知していなければ絶対に置き換えられない、という古い説明を前提にしないでください。Bitcoin Coreの現行ポリシーでは、バージョン28.0以降はfull RBFがデフォルトのポリシーであり、そのポリシーで置き換える際に通知は不要とされています。ほかのノード、ウォレット、サービス、旧バージョンのソフトウェアでは動作が異なる場合があります。ウォレットにボタンがないからといって、すべてのノードが同じポリシーだとは限りません。ウォレット独自の制限や取引構造が理由かもしれません。
置き換えには、通常「1 satoshiを追加する」以上の条件が必要です。Bitcoin Coreの現行ポリシーでは、元の取引の絶対手数料額(satoshi単位)の合計以上を支払い、置き換えによって追加で必要となる中継帯域を賄い、メンプールの手数料率図を改善する必要があります。関連する取引があると、単に高い数字を選ぶ以上に計算が複雑になります。現在の置き換えポリシーに条件が記載されています。
RBFは取り消しボタンではなく、承認済みの取引を元に戻すものでもありません。互いに競合する未承認の支出です。未承認の入金を確定済みとして扱う受取人は置き換えのリスクを負う可能性があるため、未承認取引は承認済みの支払いと同じではありません。送金を受け取る場合は、最初に見た版が承認されると決めつけず、受取側サービスの確認ポリシーに従ってください。
CPFPは親取引と子取引をまとめて採掘する動機を高める場合があります
Child pays for parent(CPFP)は、未承認の親取引の出力を使う新しい子取引を作ります。子取引に十分高い手数料率を設定すると、マイナーが親と子をまとめて含める動機になる場合があります。考慮されるのは両方を合わせた手数料と仮想サイズです。子取引が親の手数料を消したり、2つを無料でまとめたりするわけではありません。
ウォレットには適切な未承認出力を操作できることと、子取引を作成する機能が必要です。親子関係、中継とパッケージのポリシー、マイナーの選択がすべて関係します。合計手数料は1つの取引だけに設定したはずの額より高くなる場合があり、含まれることも保証されません。どの出力を使うのか、ウォレットがお釣りをどう扱うのか理解していない場合は、子取引を手動で作成しないでください。
RBFとCPFPは関連する問題を扱いますが、仕組みは異なります。RBFは保留中の取引と競合する版を作ります。CPFPは依存する取引を追加し、親子のパッケージをマイナーにとって魅力的にする場合があります。ウォレットがどちらか一方、両方、またはいずれもサポートしないことがあります。ノードが何を受け入れるかはBitcoin Coreのメンプール設計とバージョンごとのポリシーによって変わるため、これらの仕組みは承認時間を約束するものではありません。
取引所の出金手数料はビットコインのネットワーク手数料と異なることがあります
取引所は独自の手数料表で出金手数料を定めることがあります。固定額の場合、定期的に調整される場合、顧客の出金をまとめて処理する方法を反映する場合があります。その額は個別にブロードキャストされる1取引の手数料率と一致するとは限りません。取引所は複数の出金を1つの取引にまとめることがありますが、自己管理型ウォレットは通常、選んだ出力に合わせて取引を作成します。
出金の前に、出金手数料、受取予定額、送金先のネットワークを確認してください。取引所の手数料から現在のsat/vBレートが分かると考えないでください。プラットフォームが「ネットワーク手数料」と表示していても、あなたの取引に対する直接の見積もりではなく、プラットフォームが計算した額かもしれません。公開されている手数料表と出金プレビューの詳細を確認しましょう。
反対に、ウォレットは提供者の手数料を含めず、ネットワーク手数料だけを表示することがあります。オンチェーンのビットコイン手数料は、ブロックに含まれる取引が支払います。ウォレットの画面が送金額の割合として徴収するものではありません。取引所の出金と自己管理型ウォレットからのオンチェーン送金を比べるときは、受取人に届く額、選んだネットワーク、個別の手数料項目を比較してください。送金前のネットワークとアドレスの確認には暗号資産送金チェックリストを、異なる仕組みのEthereumガス手数料についてはEthereumガス手数料ガイドを参照してください。
署名する前に取引の詳細を確認しましょう
ビットコインの支払いを確定する前に、ネットワーク、受取人アドレス、金額、合計手数料、表示されている場合は手数料率を確認してください。オンチェーンのビットコイン取引なのか、別の経路を使うのかを確かめましょう。受取人と入力を選んだ後に手数料プレビューを見てください。取引内容が変わると仮想サイズが変わり、同じ手数料率でも合計手数料が変わることがあります。
取引が保留中なら、操作する前にウォレットがRBFやCPFPをサポートするか、どの条件が適用されるか確認してください。元の取引がまだ承認される可能性を理解せず、同じ支払いを別の取引として再送信しないでください。取引IDを控え、ウォレットまたは信頼できるブロックエクスプローラーで状態を確認しましょう。あるサービスから取引が消えたとしても、それだけで承認、取り消し、または安全に置き換えられることが証明されるわけではありません。
見積もりが特定のブロックへの収録を約束するものではないと理解したうえで、急ぎ具合と待てる時間に合う手数料率を選びましょう。手数料が予想外に高い場合は、入力数と出力構成を確認してください。送金額だけではサイズを説明できません。ウォレットに合計額しか表示されない場合は、詳細画面や説明書を開いて、どの手数料項目が含まれるか確認しましょう。この記事の数値は仮定の例であり、現在の手数料見積もりではありません。
よくある質問
Q1ビットコインの手数料は送金額に対する割合ですか?
いいえ。ネットワーク手数料は通常、取引の仮想サイズと手数料率で計算します。vsizeと手数料率が変わらなければ、送金額が異なっても手数料は同じ場合があります。
Q2取引が未承認なら、ビットコインは失われたのですか?
必ずしもそうではありません。まだ保留中の可能性があり、ノードのメンプール表示も変わる場合があります。取引IDとウォレットの状態を確認し、保留中の取引が取り消された、または安全に再送信できると決めつけないでください。
Q3sat/vBを高くすれば次のブロックに入ることが保証されますか?
いいえ。同じような条件では高い手数料率が競争力を高めることがありますが、手数料市場、取引の依存関係、中継、マイナーの選択は変化します。見積もりは特定のブロックを約束できません。 ---
出典
問題を報告
この記事のリンクを含むメールを準備します。送信すると Mark に報告が届きます
クイックチェック
記事を読み終えたら、3問で確認しましょう
問題 01
仮定の取引サイズが140 vBで、25 sat/vBを支払います。合計手数料はいくらですか?
答えを選ぶと解説を確認できます