5 votes
Accepted

Bitcoin cli asks to use estimatesmartfee with new syntax that is not described in docs

estimatesmartfee requires that bitcoind have been running long enough to gather data about the current fee rates on the network. This can take some time. Try running it again after a few hours, or a ...
user avatar
  • 16.5k
4 votes

Estimate Fee returning -1

-1 means "not enough information for an accurate estimation". Try with a higher confirmation target.
user avatar
4 votes
Accepted

Transaction size limit across a single path in a Lightning Network and fee earned

The maximum size for HTLC's are currently defined by max_htlc_value_in_flight_msat and is roughly 42mBTC. The max_concurrent_htlc that you mention seems to be the max_accepted_htlcs and states how ...
user avatar
4 votes
Accepted

Does sending the "max amount" with given feerate require crafting the transaction twice?

No, you shouldn't need to sign the transaction until it's completely crafted. Bitcoin core can handle this for you! An easier flow when creating a transaction is Create raw transaction. Don't add any ...
user avatar
3 votes
Accepted

What feerate estimation APIs are there?

I've listed some public feerate APIs by block explorers and payment processors below. Purposefully leaving out APIs from wallets, since they don't advertise their APIs. I leave out Bitcoin Core's ...
user avatar
  • 1,342
3 votes
Accepted

Bitcoin core's estimatesmartfee gives same estimate on ECONOMICAL and CONSERVATIVE mode

The two modes don't just unconditionally return the same thing. They do different calculations and can return different results under certain conditions, particularly when fees are very variable for ...
user avatar
  • 61.4k
3 votes
Accepted

Given a bitcoin block, what's the easiest way to determine the minimum net fee rate (including ancestors) for transactions in that block?

First, even if you find the transaction with the lowest effective fee rate in a block, that will not necessarily mean that the mempool cleared to that level. In their recent paper "On Blockchain ...
user avatar
  • 63.5k
3 votes
Accepted

Bitcoin core's estimatesmartfee error "Insufficient data or no feerate found" with synced node

The fee estimation is completely based on how long your node has been running, how many transactions have entered the mempool, and how many of those transactions have been confirmed. It is not (and ...
user avatar
  • 61.4k
3 votes
Accepted

Why does the Segwit developer guide recommend to estimate fees on basis of vsize instead of weight?

The advantage of using vsize is that it is a smooth transition from size; every non-witness transaction has vsize equal to size. All code and infrastructure that used satoshi/byte before, will keep ...
user avatar
3 votes
Accepted

Do I have to pay Fees on the Lightning Network if there is a Payment Failure?

Short answer: No. Explanation: The fees are part of the onion routing package within the HTLCs. So a routing node accepts an incoming HTLCs and forwards it if there is a difference in value that can ...
user avatar
3 votes
Accepted

Can pruned nodes perform fee estimation?

Yes, if it has a mempool (no -blocksonly). No matter the number of blocks stored, what matters is how many blocks it has been watching (ie received at the time of generation, with transactions that ...
user avatar
3 votes
Accepted

The bitcoin opcode seems to have a flat rate

If by "flat rate" you mean that each opcode costs the same amount in transaction fees, then yes, Bitcoin does have a "flat rate". Opcodes don't have a direct fee themselves, the ...
user avatar
  • 61.4k
2 votes

Bitcoind estimatesmartfee

estimatesmartfee expects the number of blocks you want the tx confirmed in as the parameter, not the amount of BTC you are sending. Try estimatesmartfee 5 to get an estimate for confirmation in the ...
user avatar
  • 16.5k
2 votes

How to sweep a Bitcoin Core wallet?

With recent versions of bitcoind, you can use sendtoaddress with the optional subtractfeefromamount argument. sendtoaddress 123abc... 1.055 "" "" true Creates a transaction with 1.055 BTC of ...
user avatar
2 votes
Accepted

Are there RPC calls for correct RBF calculations in Bitcoin Core?

If your transaction is from Bitcoin Core's wallet, you can use the bumpfee command. It should do the same thing that the GUI does in order to create a replacement transaction with a higher fee.
user avatar
  • 61.4k
2 votes
Accepted

Negative time estimation from estimatefees + mempool data

Fee estimation is mostly progress free, in the same way as waiting for Bitcoin blocks, that is the estimate for how long it will take to get confirmed from now is unrelated to how long you have been ...
user avatar
  • 101
2 votes
Accepted

How is proper fee rate got on Bitcoin Cash

The minRelayTxFee (which despite the name is a feerate) on BCH is 1000 satoshis per kilobyte or 1 satoshi per byte. BCH has a blocksize limit of 32 MB and has generally had only a very small portion ...
user avatar
  • 63.5k
2 votes
Accepted

-fallbackfee option in sendtoaddress

It seem like you tried to run fallbackfee in the terminal ? fallbackfee is a configuration option and should be put inside a bitcoin.conf file, if you dont have this file on your bitcoin directory you ...
user avatar
  • 2,391
2 votes
Accepted

estimatesmartfee outputs very different results

The node that has been synchronized for only 5 hours and is less well connected seems to be estimating the fee better than the one that has been synchronized for three weeks. Why is the "best" node ...
user avatar
  • 61.4k
2 votes

Explain Coinomi and Edge fee difference?

Adding to Murch's response and comments, Coinomi does have UTXO control where you can set individual UTXOs as "do not spend" and indirectly control which ones will be used on your transaction. Number ...
user avatar
2 votes

Explain Coinomi and Edge fee difference?

Given that you are looking at two different wallets on two different pieces of software, the transactions that the wallets are proposing are different: they may be using a different count of inputs ...
user avatar
  • 63.5k
2 votes

Setting the fee rate on regtest, or, quickly generating full blocks

You can use a wrapper to mock the feerate. Let's say you are writing your tests in Python. You can set up a Python RPC wrapper for the bitcoind interface, and optionally turn on a mock for specific ...
user avatar
2 votes

Setting the fee rate on regtest, or, quickly generating full blocks

I have created a bash script that is less complex than the Python script that @darosior references, but is heavily influenced by it. It keeps creating sets of 10-30 transactions until estimatesmartfee ...
user avatar
  • 275
2 votes

Paying only 6 satoshis/vbyte ($0.18 cents) per input in transaction fees?

All fee calculators rely on statistical modelling of the mempool. There is no assumption that future transaction producer behavior is identical to what was observed in the past, but it's the best data ...
user avatar
2 votes

On a practical level, how exactly is the amount of a Bitcoin transaction fee determined?

Bitcoin transaction fees are usually calculated based on the size (in bytes) that the transaction takes up. This is a number known as 'fee rate', usually written as 'satoshis per byte', and the idea ...
user avatar
  • 1,992
2 votes
Accepted

GetMinFee() in blockchain.cpp

From the mempool's perspective, the rollingMinimumFeeRate is the actual minimum fee rate (the minrelayfee pertains to other parts of the codebase). It starts at 0, and is updated whenever a ...
user avatar
  • 61.4k
1 vote

Estimated Fees in BCOIN

Evebtually I decide to do it the curl way. By having my express app to make a simple GET http request to the bitcoin node, I managed to get the job done. Doing this with the request npm module is ...
user avatar
1 vote

-fallbackfee option in sendtoaddress

Another option that works for me is to call the settxfee with amount before calling sendtoaddress.
user avatar
  • 165
1 vote

How to convert fee_estimates.dat into a human-readable format?

You need to take a look at how fee_estimates.dat is written and interpreted. It is a binary file composed of: MIN_VERSION CURRENT_VERSION CURRENT_TIP TIP_AT_LAST_START TIP_AT_LAST_STOP [ESTIMATES] [...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible