UTXO 合并划算吗:定投提币太碎,要不要专门合并

UTXO 合并,就是把钱包里一块块零碎的币专门转一笔、并成一块。多数时候不划算,等于先白付一次手续费。定投一年、每个月从交易所提一次,钱包里就躺着十来个大小不一的 UTXO,它们不会自己并起来;等到要花,手续费按数据量算,块越多越贵。合并能省下钱,只在一种情况下成立:块多,单块又小,而你合并那天的费率明显低于将来真要转出的那天。凑不齐,就别动。合并还有个常被略过的代价——这些块会在链上被认成同一个人的。账可以自己算,这篇里的数都标了「假设」。
提一次币,钱包里就多一块
UTXO 是 unspent transaction output 的缩写,中文一般译作「未花费的交易输出」。River 的科普页给的解释最不绕:它就是你收到了、还没花出去的那一笔笔比特币。钱包首页那个余额,是这些块加起来的数。
定投的人最容易攒出一大堆,River 同一页专门点过这类人。每提一次,链上就多一笔发给你的输出,提 12 次就是 12 块,同一个地址也一样。
这件事的来由和该怎么对待,找零那篇讲定投的一节已经写过:小额囤币别为它折腾,碎了也不必专门转一笔去合并。那个结论对多数人仍然成立。这篇只往下多走一步,说清它在什么情况下不成立,以及怎么自己算出来。
手续费看体积,不看你转了多少钱
River 那页有一句很反直觉的话:你转多少比特币不影响手续费,一笔十亿美元的交易和一笔十美元的交易,花费可能一样。Unchained 的一篇博客把算法写成了一句:费用由你选的每字节单价,乘上这笔交易需要多少字节来决定。
碎块贵,就贵在字节上。想花掉一块 UTXO,得把它作为「输入」写进交易,每个输入都拖着自己那份签名数据。用 River 的原话说,拿很多小块去凑一笔大额付款,交易会变大,费用也就跟着涨。
如今的「字节」按虚拟字节(vB)计。BIP-141 的定义是:交易权重 = 基础大小 × 3 + 总大小,虚拟大小 = 权重 ÷ 4,向上取整。Bitcoin Wiki 的权重单位词条换了个好记的说法:签名这类见证数据,每字节算 1 个权重单位;交易里其余部分,每字节算 4 个。
同一个词条拿一入两出的交易做过对照。传统的 1 开头地址(P2PKH),大约 226 字节,记 904 个权重单位;隔离见证的 bc1q 地址(P2WPKH),大约 222 字节,只记 561 个。除以 4,前者约 226 vB,后者约 141 vB。字节数差不多,占的区块空间差了一截,所以你的碎块落在哪种地址上,花起来价钱不同。地址开头的区别在地址类型那篇里,这里不展开。
把账算出来:块数 × 67 × 费率
Bitcoin Optech 讲批量付款的页面里有一组典型值:一笔用 P2WPKH(bc1q 开头)输入和输出的普通交易,付款方出一个约 67 vB 的输入,外加两个各约 31 vB 的输出,一个给收款人,一个是找零。
有了这个数,碎块的账就能估:
花掉这些碎块,光输入部分要付的费 ≈ 块数 × 67 vB × 当时的费率(sat/vB)
输出和交易本身的零头另算,量不大,估的时候先放一边。67 是 bc1q 地址的典型值,块要是在 1 开头的旧地址上,每个输入会大得多。
举个假设的例子。定投一年、每月提一次,12 块全在 bc1q 地址上,输入部分合计 12 × 67 = 804 vB。假设将来转走那天费率是 20 sat/vB,这部分约 804 × 20 = 16,080 聪;假设那天碰巧只有 2 sat/vB,就是约 1,608 聪。两者相差十倍。
块数先数清。提过几次币,大致就有几块,中间自己花过钱、有过找零的另算;哪一笔提币落在哪个地址、确认了没有,把地址或交易号贴进链上到账查询能看到。费率现在是多少,去转账费查询看一眼读数,两个数替进式子,就是你自己的账。
还有一种块,小到花它都不值。假设某一块只有 2,000 聪,赶上 30 sat/vB 的时候,单是把它塞进交易就要 67 × 30 = 2,010 聪,比它本身还多。费率一高,花这种块就不划算。
合并那一笔要付多少
合并说白了就是自己转给自己:把这些碎块全当输入,只留一个输出,发到自己钱包的新地址。Optech 那页描述的正是这个做法——趁费率低发一笔慢、但便宜的交易,把许多小输入并成一个大的,钱转回自己手里。原文说的是经常一笔交易要动用好几个输入的服务商,个人要照搬,先算账。
合并这一笔,输入部分照样是块数 × 67 vB,再加一个约 31 vB 的输出。等于把「花掉这些块的钱」提前付了,只不过挑了个便宜时候付。接着上面的假设,合并选在 2 sat/vB,两种结局摆在一起看:
| 假设将来转出那天的费率 | 不合并,到时 12 块一起花(输入部分) | 现在合并,到时只花 1 块 |
|---|---|---|
| 20 sat/vB | 804 × 20 ≈ 16,080 聪 | 合并 804 × 2 + 31 × 2 ≈ 1,670 聪,到时 67 × 20 = 1,340 聪,共约 3,010 聪 |
| 2 sat/vB | 804 × 2 ≈ 1,608 聪 | 1,670 + 67 × 2 ≈ 1,804 聪 |
第二行里,合并反倒多花了约 196 聪——多出来的就是那个输出,外加将来又花了一次输入。表里还没算交易本身约 11 vB 的固定开销(Optech 同一页给的数):将来那笔转出不管合不合并都要付,两边抵消;合并那笔自己的这份按 2 sat/vB 约 22 聪,算上它,第二行实际多花约 218 聪,第一行合并的总花费约 3,030 聪。
Unchained 讲合并时也是这个前提:趁低费率合并,将来如果真遇上费率更高的时候,你会准备得更好。整件事就挂在这个「如果」上。合并是拿今天确定要付的一笔,去押将来费率会更高。
什么时候值得专门合并一次?
我们的看法偏保守。块数多、单块小、眼下费率明显低于你预计将来转出时的水平,这几样同时成立,才考虑专门合并;少一样,就照找零那篇的办法,等真要花那天挑个低费率时段一次办完。
要块数多,是因为差额跟块数成正比。上面 12 块的假设里,最有利的情形也就差出一万多聪;块数到几十上百,才会大到让人认真考虑。单块小,拿「67 × 你常见的费率」和那块的面额比一比就知道,花它要付的费占了它不小一截,它就算小。
最没把握的是第三样:将来那天费率是高是低,谁也说不准。所以哪怕前两样都满足,我们也更愿意把它当成「可以做」,不是「应该做」。
另外几种人可以直接跳过这件事。打算一直囤着不动的,块再碎,不花就不付费,合并等于替一笔不存在的转账提前买单。碎块总共就三五个的,算出来的差额多半不值一次操作。在意隐私的,看下一节。
合并之后,这些块在链上就是「一个人的」
Bitcoin Wiki 的隐私词条讲过一条推断规则,叫共同输入所有权:一笔交易只要有不止一个输入,就假定这些输入都归同一个主体。
合并交易恰好长成这条规则最爱的样子。在区块浏览器里打开,左边一长串输入,右边孤零零一个输出。原本散在十几个地址上、彼此看不出关系的块,这一笔之后就被连到了一起。River 提醒过,UTXO 管理可能要拿隐私来换,原本无关的交易会被串起来;Unchained 也写了,做合并、持有大面额的 UTXO,都可能对隐私不利。
不合并也未必躲得过。同一个 Wiki 词条写着,一个钱包如果平时收小额、花的时候花大额,就会产生很多多输入交易——这差不多就是定投囤币的人将来一次转走时的样子。所以要想的是什么时候连、有没有必要连。你要是本来打算分批花,每次只动一两块,专门合并就是把本可以不露的关系提前交了出去。
费率低谷:比以前低,但不保证被打包
判断「现在够不够便宜」,有件 2025 年的事得知道。Optech 的 2025 年度回顾写到:到 7 月底,85% 的算力已经采用了更低的最低费率,低费率交易开始在网络里自然传播开,只是并不稳定;9 月初发布的 Bitcoin Core 29.1,把默认的最低转发费率降到了 0.1 sat/vB。
低于 1 sat/vB 的交易如今有机会被转发、被打包,而一些旧科普文还把 1 sat/vB 当成地板。两件事别混在一起:0.1 是节点软件的默认值,不代表你手上的钱包就允许填这么低;原文也明说了「不稳定」,填得很低的一笔,可能挂很久都没动静。
合并这种不着急的交易,本来就适合挑低谷发。只是别把「一定能被打包」当前提,发之前想清楚:挂上几天,你等不等得起。
最省事的一步,在提币那头
与其事后合并,不如一开始少碎一点。Unchained 给常在交易所买币的人提过一个建议:要是一周买好几次,可以考虑每个月集中往自己保管的钱包提一两次。这是一家做比特币托管服务的公司给的建议,频率不用照搬,意思就是攒一攒再提。提的次数少了,将来要花的块就少,前面那些账大半都不用算。
攒着提,币就会在交易所多放一阵,这也有它自己的风险,放哪更稳在存放那篇里讲过。间隔拉多长,按你自己对这两头的在意程度定。
至于囤着的那些币要不要为这件事动:已经碎了的,就让它碎着,哪天真要转出再挑低费率一次办完;还在定投的,把提币间隔拉长一点,就是动得最少的办法。真想合并,先把块数、面额和当下费率套进上面那个式子,看算出来差的是几百聪还是几万聪。
合并那一笔同样是一次正经转账。发给自己之前,把收款地址和钱包里显示的新地址逐位对一遍,别在自己转给自己这一步出岔子。