Bitcoin Forum
July 07, 2024, 06:36:05 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Technical info about transaction fees  (Read 586 times)
Vinz87 (OP)
Member
**
Offline Offline

Activity: 72
Merit: 10


View Profile
April 12, 2014, 03:03:48 PM
 #1

Hi,
I read about technical rules for transaction fees in the official bitcoin wiki, where there's written:

Sending
A transaction may be safely sent without fees if these conditions are met:

It is smaller than 1,000 bytes.
All outputs are 0.01 BTC or larger.
Its priority is large enough (see the Technical Info section below)


The "technical info section" below explain how to compute the "Priority", and that it has to be greater than 57600000.

Now I want to build a raw transaction and I want to know if it can be safely propagated without fees.
I did the math with all the unspent outputs I would take coins from, and it results in a priority of only 3.6M.
Moreover, I tried to build the raw transaction, and it would consist of 2972 hex characters, or 1486 bytes.
There will be only one output of 0.01 BTC.

So what I ask is: can I wait until the unspent outputs will be older enough to yield a priority greater than 57.6M, and send the transaction with 0 fees even if its size is greater than 1kB?
Or, since I am not under the size limit, a 0.0001 (or 0.0002?) BTC fee is required for a 1500 bytes transaction, regardless of the calculated priority?

Thanks
uminatsu
Newbie
*
Offline Offline

Activity: 55
Merit: 0


View Profile
April 12, 2014, 03:15:16 PM
 #2

I'm afraid that 0.0002 BTC is required for 1500 bytes. If you send without fee it will most likely not get propagated.

Why is your TX so large? Can you consolidate some unspent outputs first?

The easiest way to get higher priority is to "bundle" a larger output (say 1-2 BTC or higher, at least 1 day old).
upal
Full Member
***
Offline Offline

Activity: 165
Merit: 102


View Profile
April 12, 2014, 07:04:04 PM
 #3

Hi,
I read about technical rules for transaction fees in the official bitcoin wiki, where there's written:

Sending
A transaction may be safely sent without fees if these conditions are met:

It is smaller than 1,000 bytes.
All outputs are 0.01 BTC or larger.
Its priority is large enough (see the Technical Info section below)


The "technical info section" below explain how to compute the "Priority", and that it has to be greater than 57600000.

Now I want to build a raw transaction and I want to know if it can be safely propagated without fees.
I did the math with all the unspent outputs I would take coins from, and it results in a priority of only 3.6M.
Moreover, I tried to build the raw transaction, and it would consist of 2972 hex characters, or 1486 bytes.
There will be only one output of 0.01 BTC.

So what I ask is: can I wait until the unspent outputs will be older enough to yield a priority greater than 57.6M, and send the transaction with 0 fees even if its size is greater than 1kB?
Or, since I am not under the size limit, a 0.0001 (or 0.0002?) BTC fee is required for a 1500 bytes transaction, regardless of the calculated priority?

Thanks

To get quickly included in the block, it is always preferable to add at least 0.0001 BTC, however small your Tx size is...
Vinz87 (OP)
Member
**
Offline Offline

Activity: 72
Merit: 10


View Profile
April 13, 2014, 11:06:21 AM
 #4

So:
It is smaller than 1,000 bytes.
All outputs are 0.01 BTC or larger.
Its priority is large enough (see the Technical Info section below) -> greater than 57600000

all these 3 conditions have to be met in order to send a transaction with zero fees? Is it correct?
Vinz87 (OP)
Member
**
Offline Offline

Activity: 72
Merit: 10


View Profile
April 13, 2014, 11:08:12 AM
 #5

Hi,
I read about technical rules for transaction fees in the official bitcoin wiki, where there's written:

Sending
A transaction may be safely sent without fees if these conditions are met:

It is smaller than 1,000 bytes.
All outputs are 0.01 BTC or larger.
Its priority is large enough (see the Technical Info section below)


The "technical info section" below explain how to compute the "Priority", and that it has to be greater than 57600000.

Now I want to build a raw transaction and I want to know if it can be safely propagated without fees.
I did the math with all the unspent outputs I would take coins from, and it results in a priority of only 3.6M.
Moreover, I tried to build the raw transaction, and it would consist of 2972 hex characters, or 1486 bytes.
There will be only one output of 0.01 BTC.

So what I ask is: can I wait until the unspent outputs will be older enough to yield a priority greater than 57.6M, and send the transaction with 0 fees even if its size is greater than 1kB?
Or, since I am not under the size limit, a 0.0001 (or 0.0002?) BTC fee is required for a 1500 bytes transaction, regardless of the calculated priority?

Thanks

To get quickly included in the block, it is always preferable to add at least 0.0001 BTC, however small your Tx size is...
not if priority is greater than 57600000, according to the official wiki.
Gavin Andresen
Legendary
*
qt
Offline Offline

Activity: 1652
Merit: 2222


Chief Scientist


View Profile WWW
April 13, 2014, 04:36:31 PM
 #6

not if priority is greater than 57600000, according to the official wiki.

There is a lot of competition for the free transaction area in blocks these days; you need a much higher priority to get confirmed quickly, 57.6 million is not enough any more.

A future version of the reference implementation wallet will automatically estimate the priority needed.

How often do you get the chance to work on a potentially world-changing project?
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 13, 2014, 06:21:14 PM
 #7

not if priority is greater than 57600000, according to the official wiki.

There is a lot of competition for the free transaction area in blocks these days; you need a much higher priority to get confirmed quickly, 57.6 million is not enough any more.

This is important to keep in mind (and it a reason I pay the "min fee" on all tx even those which may qualify as "free").  To the OP the priority requirement is merely the requirement imposed by nodes to relay tx without a fee.  Once it is relayed to a miner how long it takes (in terms of # of blocks) before it is included in a block will depend on the relative priority of other no fee transactions.  If ranked by priority you are #1 then you probably are going in the next block (although some miners don't include any unpaid txs) if you are 1,000th and the average miner puts 20 free tx per block you might be waiting a while.

Still if it helps the priority requirement is "One Bitcoin Day":
If you receive 1 BTC and hold it for one day it will have enough priority to be spent without a fee. 
If you receive 0.01 BTC you would need to hold it 100 days  before it has enough priority to be spent without a fee.
If you receive 144 BTC and you would need to hold it for 1/144th of a day (1 block) before it has enough priority to be spent without a fee.



Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!