<p>I believe you're confusing units here, and entered a value intended as sat/vB in a place that expects sat/kvB.</p>
<p>Perhaps you intended to use 40 sat/vB (=40000 sat/kvB, or 0.0004 BTC/kvB), which would translate to around 10000 sat (or 0.0001 BTC) for a typical transactions.</p>
<p>When interpreted as 40 sat/kvB, it would be far below the minimal relay fee on the network (1 sat/vB, 1000 sat/kvB, 0.00001 BTC/kvB). The sender software you used may have rounded it up to 1000 sat/kvB instead, and used that - which may translate to 255 sat for a typical transaction. That is far below the current blockspace market rate, and may explain why your transaction hasn't even propagated (blockchain explorer sites don't even show it as unconfirmed).</p>

CC BY-SA 4.0
2020-11-08T23:18:02.347Z
Changing the units is rather moving the trouble than solving it. If you get the maths wrong like I did then changing units won't help. But you'll confuse those who got used to the current implementation. Is there a way to guess the size of a transaction in advance? So, bitcoin-core can calculate the actual fee and show it to the user and ask for confirmation?
pisjatblin
CC BY-SA 4.0
2020-11-08T23:50:57.857Z
Yes, already browsing it. Currently, I learned some devs are doing stuff. Better don't interrupt unless you want to provoke delays. My point is: Maths is simple unless you get it wrong. Changing a system to make it work for me will render it useless for those used to the good old days before I showed up. That's why I asked for a different approach (not meant to interrupt the work in progress). My idea is, user confirmation for what is actually going to happen is more helpful than changing units.
pisjatblin
CC BY-SA 4.0
2020-11-09T00:02:37.277Z
If you use the PSBT or raw transaction RPC API you can see the transaction before deciding to sign and/or broadcast it. I don't know about the GUI.
Pieter Wuille
CC BY-SA 4.0
2020-11-09T00:07:16.560Z
Nice! So, technically and in theory the GUI could learn that too. Now the question is: How to get this idea into dev-brains? From a users view it can't be that difficult. ;-þ
pisjatblin
CC BY-SA 4.0
2020-11-09T00:13:33.513Z
You can start by opening an issue on https://github.com/bitcoin-core/gui/. Beyond that, either doing it yourself, or paying someone to do it :)
Pieter Wuille
CC BY-SA 4.0
2020-11-09T00:20:00.247Z
Nice counter strike! :) I'm unfamiliar with the code and stuff. Thus, doing it myself will probably cause more damage than harm. What was the second option? No, honestly! I don't want to cause confusion. It's about improving bitcoin-core. That's why I'm asking. To be precise, new to GitHub, new to this bitcoin magic. So, better discuss with people involved first, rather than dashing in and cause an uprising.
pisjatblin
CC BY-SA 4.0
2020-11-09T00:23:36.830Z
I don't understand your question.
Pieter Wuille
CC BY-SA 4.0
2020-11-09T00:37:20.310Z
What I've learned from the discussions on GitHub is, there is an ongoing confusion about units. Which is obviously true, since I fell for the same trap. Possibly maybe agreeing on a standard can help. It usually does. But who am I to judge? What I missed the most was a feedback on what will actually happen. What fee am I going to spend on the transaction? For this use case feedback from the GUI would be helpful. But that is only distantly related to the use case in action, changing units that is. Does this make sense to you?
pisjatblin
CC BY-SA 4.0
2020-11-09T00:39:38.230Z
Everything you said makes sense, but I don't know what you're asking.
Pieter Wuille
CC BY-SA 4.0
2020-11-09T00:46:25.753Z
Ok, use case: Manually editing fee and user asks for sending. Next bitcoin-qt calculates the fee added to the transaction then GUI shows to user the calculated fee and ask for confirmation. If ok, then send transaction else edit fee calculation and repeat. Makes sense
pisjatblin
CC BY-SA 4.0
2020-11-09T00:46:52.387Z
Yes, but what is your question? If you think that's a good idea, open an issue with a feature request. People can then discuss, and if someone thinks it's important enough, they may work on it. I don't work on the GUI, but it sounds reasonable to me.
Pieter Wuille
CC BY-SA 4.0
2020-11-09T00:51:06.483Z
OK! You asked for it. I'll try my very best. Honestly, that was my question. Does this make any sense? Or am I just a weirdo doing random stuff to cause ID10T issues. :)
pisjatblin
CC BY-SA 4.0
2020-11-09T01:03:58.573Z
Pieter, [this](https://github.com/bitcoin/bitcoin/issues/20348) is all your fault! At least I'll try to blame you for it. :)
pisjatblin
CC BY-SA 4.0
2020-11-08T22:33:26.843Z
2020-11-08T22:33:26.843Z
Pieter Wuille
<p>Many thanks to Pieter Wuille for his quick help.</p>
<p>I got confused with units. The correct input would have been some ten thousand satoshis for <code>bitcoin-qt</code> is calculating in <strong>Kilo</strong> Bytes.</p>

CC BY-SA 4.0
2020-11-08T22:31:47.850Z
2020-11-08T22:31:47.850Z
pisjatblin
<p>My <code>blockchain</code> isn't synced yet. Thus, fee calculation didn't work. Therefore, I chose user defined fee and entered what <code>btc.com</code> suggested.</p>
<p>But my <code>bitcoin-qt</code> (v0.20.1) went for 255 satoshis instead of some 10 thousands or so. (A rough guess, since I can't recall the actual amount any more.)</p>
<p>The question is: Did I encounter a bug or is there some hidden magic involved?</p>

CC BY-SA 4.0
2020-11-08T21:56:52.553Z
How did you enter it?
Pieter Wuille
CC BY-SA 4.0
2020-11-08T21:59:46.207Z
I checked user defined and typed let's say 350 per kilobyte in satoshis. Can't recall the actual numbers. But that's not my point. The fee of 255 is definitely not what I wanted.
pisjatblin
CC BY-SA 4.0
2020-11-08T22:06:49.200Z
How large is the transaction in kvb? A 0.728 kvb transaction with 350 sat/kvb would be 255 satoshi. Could this be a confusion about units?
Pieter Wuille
CC BY-SA 4.0
2020-11-08T22:09:46.037Z
Good point! I'll double check. But then it should have been confirmed within minutes.
pisjatblin
CC BY-SA 4.0
2020-11-08T22:13:12.630Z
This does seem to be a confusion about units! Typical feerates on the network right now seem to be around 10000 sat/kvb at least (judging by https://jochen-hoenicke.de/queue/#0,24h). Many sites use sat/vb rather than sat/kvb or BTC/kvb.
Pieter Wuille
CC BY-SA 4.0
2020-11-08T22:14:18.363Z
This is the culprit: https://www.blockchain.com/btc/address/3G3frXKRxxs3S3RPKqbiskudxijQEBR6BY
pisjatblin
CC BY-SA 4.0
2020-11-08T22:17:22.307Z
My theory: if you actually entered 350 sat/kvb in Bitcoin Core, it may have rounded it up to 1000 sat/kvb (which is the absolute minimum for it to be relayed on the network, even absent any mempool pressure). If the transaction was 255 vbytes (which is very plausible), you'd get 255 sat as fee.
Pieter Wuille
CC BY-SA 4.0
2020-11-08T22:20:07.847Z
Makes total sense. But why didn't it confirm yet? That's confusing me.
pisjatblin
CC BY-SA 4.0
2020-11-08T22:22:03.047Z
If you paid a fee so far below market rate, there is no reason why it would confirm.
Pieter Wuille
CC BY-SA 4.0
2020-11-08T22:26:47.120Z
Yes, I got it! Now you made me feel stupid. :) So, I have to wait for some weeks or so for my coins to find home to mommy,
pisjatblin
<bitcoin-core><transaction-fees>
bitcoin-qt ignored user input for fee calculation
pisjatblin
# bitcoin-qt ignored user input for fee calculation

(Asked by: username_0 on 2020-11-08)

My `blockchain` isn't synced yet. Thus, fee calculation didn't work. Therefore, I chose user defined fee and entered what `btc.com` suggested.

But my `bitcoin-qt` (v0.20.1) went for 255 satoshis instead of some 10 thousands or so. (A rough guess, since I can't recall the actual amount any more.)

The question is: Did I encounter a bug or is there some hidden magic involved?

**Tags:** bitcoin-core, transaction-fees

> **Comments:**
> **username_1**: How did you enter it?  
> **username_0**: I checked user defined and typed let's say 350 per kilobyte in satoshis. Can't recall the actual numbers. But that's not my point. The fee of 255 is definitely not what I wanted.  
> **username_1**: How large is the transaction in kvb? A 0.728 kvb transaction with 350 sat/kvb would be 255 satoshi. Could this be a confusion about units?  
> **username_0**: Good point! I'll double check. But then it should have been confirmed within minutes.  
> **username_1**: This does seem to be a confusion about units! Typical feerates on the network right now seem to be around 10000 sat/kvb at least (judging by https://jochen-hoenicke.de/queue/#0,24h). Many sites use sat/vb rather than sat/kvb or BTC/kvb.  
> **username_0**: This is the culprit: https://www.blockchain.com/btc/address/3G3frXKRxxs3S3RPKqbiskudxijQEBR6BY  
> **username_1**: My theory: if you actually entered 350 sat/kvb in Bitcoin Core, it may have rounded it up to 1000 sat/kvb (which is the absolute minimum for it to be relayed on the network, even absent any mempool pressure). If the transaction was 255 vbytes (which is very plausible), you'd get 255 sat as fee.  
> **username_0**: Makes total sense. But why didn't it confirm yet? That's confusing me.  
> **username_1**: If you paid a fee so far below market rate, there is no reason why it would confirm.  
> **username_0**: Yes, I got it! Now you made me feel stupid. :) So, I have to wait for some weeks or so for my coins to find home to mommy,  

---

## 2 answers

### Answer by username_1 on 2020-11-08. Score: 1 | Accepted answer

I believe you're confusing units here, and entered a value intended as sat/vB in a place that expects sat/kvB.

Perhaps you intended to use 40 sat/vB (=40000 sat/kvB, or 0.0004 BTC/kvB), which would translate to around 10000 sat (or 0.0001 BTC) for a typical transactions.

When interpreted as 40 sat/kvB, it would be far below the minimal relay fee on the network (1 sat/vB, 1000 sat/kvB, 0.00001 BTC/kvB). The sender software you used may have rounded it up to 1000 sat/kvB instead, and used that - which may translate to 255 sat for a typical transaction. That is far below the current blockspace market rate, and may explain why your transaction hasn't even propagated (blockchain explorer sites don't even show it as unconfirmed).

> **Comments:**
> **username_0**: Changing the units is rather moving the trouble than solving it. If you get the maths wrong like I did then changing units won't help. But you'll confuse those who got used to the current implementation. Is there a way to guess the size of a transaction in advance? So, bitcoin-core can calculate the actual fee and show it to the user and ask for confirmation?  
> **username_0**: Yes, already browsing it. Currently, I learned some devs are doing stuff. Better don't interrupt unless you want to provoke delays. My point is: Maths is simple unless you get it wrong. Changing a system to make it work for me will render it useless for those used to the good old days before I showed up. That's why I asked for a different approach (not meant to interrupt the work in progress). My idea is, user confirmation for what is actually going to happen is more helpful than changing units.  
> **username_1**: If you use the PSBT or raw transaction RPC API you can see the transaction before deciding to sign and/or broadcast it. I don't know about the GUI.  
> **username_0**: Nice! So, technically and in theory the GUI could learn that too. Now the question is: How to get this idea into dev-brains? From a users view it can't be that difficult. ;-þ  
> **username_1**: You can start by opening an issue on https://github.com/bitcoin-core/gui/. Beyond that, either doing it yourself, or paying someone to do it :)  
> **username_0**: Nice counter strike! :) I'm unfamiliar with the code and stuff. Thus, doing it myself will probably cause more damage than harm. What was the second option? No, honestly! I don't want to cause confusion. It's about improving bitcoin-core. That's why I'm asking. To be precise, new to GitHub, new to this bitcoin magic. So, better discuss with people involved first, rather than dashing in and cause an uprising.  
> **username_1**: I don't understand your question.  
> **username_0**: What I've learned from the discussions on GitHub is, there is an ongoing confusion about units. Which is obviously true, since I fell for the same trap. Possibly maybe agreeing on a standard can help. It usually does. But who am I to judge? What I missed the most was a feedback on what will actually happen. What fee am I going to spend on the transaction? For this use case feedback from the GUI would be helpful. But that is only distantly related to the use case in action, changing units that is. Does this make sense to you?  
> **username_1**: Everything you said makes sense, but I don't know what you're asking.  
> **username_0**: Ok, use case: Manually editing fee and user asks for sending. Next bitcoin-qt calculates the fee added to the transaction then GUI shows to user the calculated fee and ask for confirmation. If ok, then send transaction else edit fee calculation and repeat. Makes sense  
> **username_1**: Yes, but what is your question? If you think that's a good idea, open an issue with a feature request. People can then discuss, and if someone thinks it's important enough, they may work on it. I don't work on the GUI, but it sounds reasonable to me.  
> **username_0**: OK! You asked for it. I'll try my very best. Honestly, that was my question. Does this make any sense? Or am I just a weirdo doing random stuff to cause ID10T issues. :)  
> **username_0**: username_1, [this](https://github.com/bitcoin/bitcoin/issues/20348) is all your fault! At least I'll try to blame you for it. :)  

---

### Answer by username_0 on 2020-11-08. Score: 0

Many thanks to username_1 username_1 for his quick help.

I got confused with units. The correct input would have been some ten thousand satoshis for `bitcoin-qt` is calculating in **Kilo** Bytes.


---

