Commissioni Bitcoin: sats/vB, mempool e aumento della commissione
Scopri come dimensione della transazione Bitcoin, sat/vB, domanda nella mempool, stime delle commissioni, RBF e CPFP incidono sul costo e sulle possibilità di conferma di un pagamento on-chain.
In questa guidaLa commissione paga lo spazio in un blocco Bitcoin
Breve sintesi
In genere la commissione di una transazione Bitcoin si calcola in base alla sua dimensione virtuale e alla tariffa: commissione in satoshi = dimensione virtuale in byte virtuali × satoshi per byte virtuale. L'importo di BTC inviato non è, da solo, la base del calcolo. Le stime riflettono condizioni di rete mutevoli e non garantiscono un tempo di conferma.
La commissione paga lo spazio in un blocco Bitcoin
Una transazione Bitcoin spende uno o più output di transazioni non ancora spesi e ne crea di nuovi. La differenza tra il valore totale degli input e quello degli output costituisce la commissione della transazione. La riceve il miner che crea il blocco in cui la transazione viene inclusa. Il protocollo non trattiene una percentuale dell'importo inviato; inoltre, questa commissione non coincide con l'eventuale costo del servizio del fornitore del wallet.
Le transazioni competono per lo spazio limitato dei blocchi. Quando costruisce un blocco candidato, un miner può considerare le commissioni offerte e le dipendenze tra le transazioni. A parità di altre condizioni, una tariffa più alta può rendere una transazione più interessante, ma non le riserva un posto fisso nel blocco successivo. L'esito dipende dal mercato delle commissioni, dalle dipendenze, dalle scelte del miner e dal fatto che la transazione raggiunga o meno i nodi pertinenti.
Questa guida riguarda le transazioni Bitcoin on-chain sulla rete Bitcoin. Un prelievo da un exchange può includere un costo stabilito dall'exchange; un pagamento Lightning segue invece un percorso e una struttura di commissioni differenti. L'interfaccia di un wallet può riunire più voci, perciò verifica se l'importo mostrato è la commissione di rete, un costo di servizio o entrambi. La guida alle commissioni di Bitcoin.org spiega il rapporto tra dimensione della transazione, sat/vB e domanda di spazio nei blocchi.
Commissione totale e tariffa rispondono a domande diverse
La commissione totale è il numero di satoshi pagato per la transazione. La tariffa esprime quella commissione in satoshi per byte virtuale, indicati come sat/vB. Dividendo la commissione totale per la dimensione virtuale si ottiene la tariffa; moltiplicando la dimensione virtuale per la tariffa scelta si stima la commissione totale. Spesso i wallet permettono di scegliere o verificare la tariffa, perché transazioni di dimensioni diverse possono pagare importi complessivi diversi anche quando applicano la stessa tariffa.
Supponiamo, come esempio ipotetico, che una transazione sia di 140 vB e usi 25 sat/vB. La commissione è 140 × 25 = 3.500 satoshi. Poiché 1 BTC equivale a 100.000.000 satoshi, 3.500 sats corrispondono a 0,000035 BTC. Se una transazione della stessa dimensione usasse invece 40 sat/vB, la commissione sarebbe di 5.600 sats, cioè 0,000056 BTC. Sono esempi di calcolo, non stime attuali né tariffe consigliate.
La tariffa non è una percentuale dell'importo del pagamento. Due transazioni che inviano quantità di BTC diverse possono avere la stessa commissione se hanno la stessa dimensione virtuale e la stessa tariffa. Un pagamento piccolo può costare più di uno grande se richiede più dati di input o usa una tariffa superiore. Conta anche l'output di resto: se gli input superano l'importo del pagamento, la transazione può restituire la differenza al mittente creando un output aggiuntivo, che occupa altro spazio.
La dimensione virtuale indica quanto spazio del blocco usa la transazione
I wallet Bitcoin in genere calcolano le commissioni usando la dimensione virtuale, o vsize, invece di contare allo stesso modo ogni byte serializzato. In SegWit i dati della transazione hanno un peso. BIP 141 definisce il peso come tre volte la dimensione base più la dimensione totale, che comprende i dati witness. La dimensione virtuale è il peso diviso per quattro, arrotondato all'intero byte virtuale successivo. La formula attribuisce un peso diverso ai dati witness: non corrisponde semplicemente alla dimensione grezza del file.
Input e output aggiungono quantità diverse di dati. Un input fa riferimento a un output precedente e fornisce i dati necessari a soddisfarne le condizioni di spesa. La dimensione esatta dipende dal tipo di output e dai dati di sblocco, comprese le firme. Un output specifica un valore e uno script di blocco. Perciò una transazione con diversi input piccoli può essere più grande di una con un solo input, anche se entrambe inviano lo stesso importo totale.
Il numero di input può essere particolarmente rilevante quando un wallet combina molti piccoli output ricevuti per finanziare un pagamento. La transazione deve spendere ciascun output selezionato e ogni input aggiunge dati. Il wallet può anche creare un output di resto, che aggiunge altri byte. Tipi diversi di indirizzo e script possono avere dimensioni diverse, e anche la lunghezza delle firme può variare. La dimensione indicata come “transazione tipica” è quindi solo un esempio, non una misura fissa per ogni pagamento Bitcoin.
La stima del wallet può cambiare se selezioni monete diverse, aggiungi destinatari, scegli un altro tipo di indirizzo per il resto o modifichi la tariffa. Ecco perché controllare solo l'importo del pagamento non basta. La composizione della transazione determina la vsize; la tariffa stabilisce quanti satoshi vengono offerti per ogni vB. BIP 141 definisce il calcolo della dimensione virtuale tenendo conto dei dati witness.
Le mempool tengono traccia delle transazioni non confermate, ma non esiste un'unica coda globale
Dopo la trasmissione, una transazione può essere conservata nella memory pool, o mempool, dei nodi che l'hanno ricevuta e accettata. La mempool è l'insieme locale delle transazioni non confermate di un nodo, non una coda unica e sincronizzata condivisa dall'intera rete. I nodi possono vedere le transazioni in ordini diversi, applicare politiche di inoltro differenti, avere limiti di capacità diversi o non ricevere affatto una determinata transazione.
I miner scelgono le transazioni che conoscono per i blocchi candidati, rispettando le regole di consenso e le proprie politiche di selezione. Una transazione che spende un output creato da un'altra transazione non confermata dipende da quest'ultima. In quel caso il miner può valutare insieme una transazione genitore e uno o più discendenti, invece di considerare ciascuna transazione come voce indipendente con tariffa autonoma. Un semplice “numero di posizione” mostrato da un sito di terzi può quindi essere incompleto o provvisorio.
Quando più utenti competono per lo spazio, possono aumentare le tariffe che rendono più probabile un'inclusione anticipata. Se la domanda diminuisce, anche le transazioni con tariffe inferiori possono diventare più competitive. L'intensità della concorrenza e le transazioni note a un wallet o a un nodo possono cambiare rapidamente. Vedere una transazione nella mempool di un singolo explorer o wallet non dimostra che tutti i miner o nodi abbiano la stessa visione.
Una transazione che non risulta confermata è ancora non confermata; questa etichetta, da sola, non significa che sia andata persa o non valida. In base alle politiche del nodo e alle condizioni mutevoli della mempool, può smettere di apparire nella mempool di un nodo e in seguito essere ritrasmessa o accettata di nuovo. Se il wallet la mostra ancora come in attesa, non dare per scontato che i suoi input siano già disponibili per un altro pagamento. Prima di tentare un'altra spesa, verifica lo stato della transazione e le istruzioni ufficiali del wallet.

Una stima delle commissioni è un obiettivo, non una garanzia di conferma
Un wallet può offrire opzioni come economica, normale o prioritaria, oppure indicare un obiettivo espresso in numero di blocchi. Sono stime della tariffa che potrebbe risultare competitiva nelle condizioni osservate. La documentazione di Bitcoin Core sulle stime delle commissioni descrive una tariffa approssimativa pensata per avviare la conferma entro il numero di blocchi previsto, se l'estimatore dispone di uno storico sufficiente. Se i dati recenti non bastano, la stima potrebbe non essere disponibile. Altri wallet e servizi possono usare dati, modelli, intervalli di aggiornamento e definizioni dell'obiettivo diversi.
L'obiettivo “prossimo blocco” non promette che la transazione sarà inclusa nel blocco successivo. La transazione può arrivare dopo che le condizioni usate per la stima sono cambiate e nuove transazioni con commissioni più alte possono competere per lo spazio. Anche le dipendenze tra transazioni possono influire sulla selezione del blocco. Il numero di blocchi è un parametro della stima, non un contratto con un miner.
Controlla quando è stata aggiornata la tariffa e se il wallet mostra la tariffa o solo il totale. Se la transazione non è urgente, scegliere una tariffa più bassa e attendere può essere una decisione consapevole, ma il tempo di conferma resta incerto. Se invece è urgente, confronta la stima del wallet con una fonte aggiornata e verifica quali opzioni mette a disposizione se le condizioni cambiano. Aumentare la commissione “per sicurezza” può costare di più senza garantire l'inclusione in un blocco specifico.
La tariffa indicata da un estimatore non stabilisce neppure la tariffa minima che ogni nodo accetta per inoltrare una transazione. Politica di inoltro, limiti della mempool, impostazioni del wallet e stime di conferma rispondono a domande collegate ma distinte. Il documento di progettazione della mempool di Bitcoin Core descrive come le dipendenze tra transazioni incidono sulla selezione e sulla politica di sostituzione. Non considerare la regola di una versione software o la politica di un singolo nodo come una norma permanente per tutta la rete.
RBF può sostituire una transazione in attesa con una versione più costosa
Replace-by-fee, o RBF, permette di sostituire una transazione non confermata con una transazione in conflitto che paga una commissione maggiore, quando il wallet e le politiche dei nodi pertinenti lo consentono. La sostituzione spende almeno uno degli stessi input, quindi le due versioni in conflitto non possono essere entrambe confermate come spese valide di quello stesso input. Un wallet può offrire il comando “aumenta commissione”, ma disponibilità, requisiti e costo risultante dipendono dal wallet e dalla transazione.
Non fare affidamento sulla vecchia regola secondo cui una transazione deve sempre segnalare RBF in un modo specifico per poter essere sostituita. La politica attuale di Bitcoin Core indica che il full RBF è l'impostazione predefinita dalla versione 28.0 e che, secondo tale politica, non serve più una segnalazione per la sostituzione. Altri nodi, wallet, servizi o software precedenti possono comportarsi diversamente. Se il comando non è disponibile nel wallet, ciò non significa che tutti i nodi applichino la stessa politica: il limite può dipendere dal wallet stesso o dalla struttura della transazione.
Una sostituzione deve in genere fare più che “aggiungere un satoshi”. Secondo la politica attuale di Bitcoin Core, deve pagare almeno la somma degli importi assoluti delle commissioni (in satoshi) delle transazioni originali, coprire la larghezza di banda aggiuntiva necessaria per inoltrare la sostituzione e migliorare il diagramma dei tassi di commissione del mempool. Le transazioni collegate possono rendere il calcolo più complesso che scegliere semplicemente un numero più alto. L’attuale politica di sostituzione descrive queste condizioni.
RBF non è un pulsante per annullare una transazione e non ne inverte una già confermata. Si tratta di spese non confermate concorrenti. Chi riceve il pagamento e lo considera definitivo prima della conferma si espone al rischio di sostituzione: una transazione non confermata non equivale quindi a un pagamento confermato. Se stai ricevendo un trasferimento, segui la politica di conferma del servizio destinatario invece di presumere che verrà confermata la prima versione visualizzata.
CPFP può aumentare l'incentivo a minare insieme la transazione genitore e quella figlia
Child pays for parent, o CPFP, crea una nuova transazione figlia che spende un output di una transazione genitore non confermata. La figlia può offrire una tariffa abbastanza elevata da incentivare un miner a includere entrambe insieme. Contano la commissione e la dimensione virtuale combinate; la transazione figlia non elimina la commissione del genitore e non rende gratuito unirle.
Il wallet deve controllare un output non confermato adatto e consentire la creazione della transazione figlia. Incidono il rapporto genitore-figlia, le politiche di inoltro e dei pacchetti e la selezione dei miner. La commissione complessiva può superare quella che avresti scelto per una singola transazione, e l'inclusione non è comunque garantita. Non creare manualmente una transazione figlia se non sai quale output spende e come il wallet gestisce il resto.
RBF e CPFP affrontano situazioni correlate ma diverse. RBF crea una versione in conflitto di una transazione in attesa. CPFP aggiunge una transazione dipendente che può rendere più interessante per il miner il pacchetto genitore-figlia. Un wallet può supportarne una, entrambe o nessuna. Il design della mempool e le politiche specifiche della versione di Bitcoin Core determinano cosa accetta un nodo: sono meccanismi, non promesse sui tempi di conferma.
Il costo di prelievo di un exchange può differire dalla commissione della rete Bitcoin
Un exchange può stabilire una commissione di prelievo nel proprio tariffario. Può essere fissa, aggiornata periodicamente oppure riflettere il modo in cui l'exchange raggruppa i prelievi dei clienti. Non deve necessariamente coincidere con la tariffa di una singola transazione trasmessa individualmente. Un exchange può raggruppare più prelievi in una sola transazione, mentre un wallet self-custody di solito crea una transazione per gli output selezionati.
Prima di prelevare, controlla l'eventuale costo, l'importo che arriverà e la rete di destinazione. Non dedurre che la commissione dell'exchange riveli la tariffa sat/vB in tempo reale. Anche se la piattaforma la chiama “commissione di rete”, può essere un importo calcolato dalla piattaforma e non una stima diretta per la tua transazione specifica. Consulta il tariffario pubblicato e i dettagli dell'anteprima del prelievo.
Vale anche il contrario: un wallet può mostrare la commissione di rete senza un costo del fornitore. La commissione Bitcoin on-chain viene pagata dalla transazione inclusa in un blocco; l'interfaccia del wallet non la trattiene come percentuale del trasferimento. Quando confronti un prelievo da exchange con un invio on-chain dal wallet, considera l'importo che riceverà il destinatario, la rete scelta e ogni voce separata. Per verificare rete e indirizzo prima dell'invio, consulta la lista di controllo per i trasferimenti crypto. Per la diversa commissione gas di Ethereum, leggi la guida alle commissioni gas di Ethereum.
Controlla i dettagli della transazione prima di firmare
Prima di confermare un pagamento Bitcoin, verifica rete, indirizzo del destinatario, importo, commissione totale e tariffa se il wallet la mostra. Accertati che sia una transazione Bitcoin on-chain e non un altro percorso. Esamina l'anteprima della commissione dopo avere scelto destinatari e input: modificare la transazione può cambiare la dimensione virtuale e quindi la commissione totale anche a tariffa invariata.
Se una transazione è in attesa, verifica se il wallet supporta RBF o CPFP e quali condizioni si applicano prima di intervenire. Non inviare di nuovo lo stesso pagamento come transazione separata senza considerare che l'originale potrebbe ancora essere confermata. Conserva l'ID della transazione e controllane lo stato nel wallet o in un block explorer affidabile. Se scompare da un servizio, questo da solo non dimostra che sia stata confermata, annullata o che sia sicuro sostituirla.
Scegli una tariffa coerente con l'urgenza e con la tua possibilità di aspettare, sapendo che nessuna tariffa quotata promette l'inclusione in un blocco. Se la commissione sembra insolitamente alta, controlla il numero di input e la struttura degli output: l'importo trasferito non spiega da solo la dimensione. Se il wallet mostra solo un totale, apri i dettagli o la documentazione per capire quali voci sono incluse. I numeri di questo articolo sono esempi ipotetici, non una quotazione in tempo reale.
Domande frequenti
Q1La commissione Bitcoin è una percentuale dell'importo che invio?
No. La commissione di rete si calcola in genere dalla dimensione virtuale e dalla tariffa. L'importo del pagamento può cambiare mentre la commissione resta uguale se vsize e tariffa non variano.
Q2Se una transazione non è confermata, i miei bitcoin sono persi?
Non necessariamente. Potrebbe essere ancora in attesa e la vista della mempool di un nodo può cambiare. Controlla l'ID della transazione e lo stato nel wallet; non presumere che una transazione in attesa sia annullata o sicura da inviare di nuovo.
Q3Pagare un sat/vB più alto garantisce il blocco successivo?
No. Una tariffa maggiore può rendere una transazione più competitiva a condizioni simili, ma mercato delle commissioni, dipendenze, inoltro e selezione dei miner cambiano. Una stima non può promettere un blocco specifico. ---
Fonti e approfondimenti
Segnala un problema
Prepareremo un’e-mail con il link a questo articolo. Mark riceverà la segnalazione solo dopo l’invio
Controllo rapido
Hai finito la guida? Verifica ciò che hai capito con 3 domande
Domanda 01
Una transazione ipotetica misura 140 vB e paga 25 sat/vB. Qual è la commissione totale?
Scegli una risposta per vedere la spiegazione