How was the dust limit of 546 satoshis was chosen? Why not 550 satoshis?What is meant by Bitcoin dust?What is a bitcoin incoming transaction with value = 0.00000546?Why is a transaction with outputs of less than ฿0.00005460 rejected?Could Bitcoin dust spam be effectively combatted by actually including it in the block-chain?Should there be a minimum transaction limit to prevent dust spam?Wallet design: What to do with dust amounts in change?Since Bitcoin Core 0.14.0, how does a node with default settings compute the dust limit?What is the dust limit on Bitcoin Cash transactions?In bitcoin core, how to avoid the dust exception?Does Bitcoin dust limit include miner fee as well?

What is this utensil for?

Designing a time thief proof safe

What do you do if you have developments on your paper during the long peer review process?

How to make interviewee comfortable interviewing in lounge chairs

What is the meaning of word 'crack' in chapter 33 of A Game of Thrones?

Are there any adverse impacts if I keep WiFi router on all time?

Which place in our solar system is mostly fit for terraforming?

How does IBM's 53-bit quantum computer compare to classical ones for cryptanalytic tasks?

Is "ln" (natural log) and "log" the same thing if used in this answer?

Worms crawling under skin

Does wetting a beer glass change the foam characteristics?

1, 2, 4, 8, 16, ... 33?

If an object moving in a circle experiences centripetal force, then doesn't it also experience centrifugal force, because of Newton's third law?

How do I deal with too many NPCs in my campaign?

What's the story to "WotC gave up on fixing Polymorph"?

Resolving moral conflict

Title Change now and Wage Increase Later

Examples of "unsuccessful" theories with afterlives

Is it more effective to add yeast before or after kneading?

Could Apollo astronauts see city lights from the moon?

What exactly did this mechanic sabotage on the American Airlines 737, and how dangerous was it?

Performance for simple code that converts a RGB tuple to hex string

How can this Stack Exchange site have an animated favicon?

What benefits does the Power Word Kill spell have?



How was the dust limit of 546 satoshis was chosen? Why not 550 satoshis?


What is meant by Bitcoin dust?What is a bitcoin incoming transaction with value = 0.00000546?Why is a transaction with outputs of less than ฿0.00005460 rejected?Could Bitcoin dust spam be effectively combatted by actually including it in the block-chain?Should there be a minimum transaction limit to prevent dust spam?Wallet design: What to do with dust amounts in change?Since Bitcoin Core 0.14.0, how does a node with default settings compute the dust limit?What is the dust limit on Bitcoin Cash transactions?In bitcoin core, how to avoid the dust exception?Does Bitcoin dust limit include miner fee as well?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3















Is there a reason why 546 satoshis was chosen as dust limit instead of 547 or even 550 satoshis, historically?










share|improve this question






























    3















    Is there a reason why 546 satoshis was chosen as dust limit instead of 547 or even 550 satoshis, historically?










    share|improve this question


























      3












      3








      3








      Is there a reason why 546 satoshis was chosen as dust limit instead of 547 or even 550 satoshis, historically?










      share|improve this question














      Is there a reason why 546 satoshis was chosen as dust limit instead of 547 or even 550 satoshis, historically?







      history dust






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Apr 15 at 15:00









      MCCCSMCCCS

      5,3123 gold badges15 silver badges44 bronze badges




      5,3123 gold badges15 silver badges44 bronze badges























          2 Answers
          2






          active

          oldest

          votes


















          3
















          The dust limit is not actually fixed, technically - it varies based on the type of output. 546 satoshis is simply the most commonly known one, for a p2pkh output. Being the longest-lived output type, I suspect some wallets/blog posts/literature might treat it as a hard coded dust limit.



          As to how to arrive at 546 satoshis, we must first know what "dust" means. A dust output is an output which costs more to spend, than it is worth. In other words, an X BTC output that costs >X to spend, is a dust output. This is directly proportional to the amount of data required to spend an output, since fees in bitcoin are commonly denoted "per-byte". The more bytes you must add to your tx to spend an output, the higher its dust threshold.



          A very basic tx consisting of 1 p2pkh input (~148 bytes), and 1 p2pkh output (~34 bytes) comes out to 182 bytes. The dust limit is 3 times this number (assuming a relay fee of 1 satoshi), or 182*3 = 546 sats.



          For more complex txs, such as p2sh, this number is larger. For less space-intensive ones such as the newer segwit options, this number would be lower.



          The code used in Bitcoin core to determine the dust threshold can be found here.






          share|improve this answer



























          • I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

            – Nate Eldredge
            Apr 15 at 15:31











          • @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

            – Raghav Sood
            Apr 15 at 15:36











          • Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

            – Ugam Kamat
            Apr 15 at 16:29











          • I think Ugam is right according to this.

            – MCCCS
            Apr 15 at 16:48


















          1
















          Bitcoin core sets the dust limit to a value where spending an output would exceed 1/3 of its value. This calculation is based on the node's setting for the minimum relay transaction fee (see option -minrelaytxfee) whose default is 0.00001 BTC/KB. Any transaction with a fee less than that does not get relayed by the node i.e. is dropped from its mempool.



          For a node that uses the default -minrelaytxfee of 0.00001 BTC/KB (1000 satoshis/KB) and given that for P2PKH an input is 148 bytes and an output is 34 bytes, it follows that an output less than or equal to 546 satoshis is considered dust according to Bicoin core.



          Reference: What is meant by Bitcoin dust?






          share|improve this answer



























            Your Answer








            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "308"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            noCode: true, onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );














            draft saved

            draft discarded
















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fbitcoin.stackexchange.com%2fquestions%2f86068%2fhow-was-the-dust-limit-of-546-satoshis-was-chosen-why-not-550-satoshis%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            3
















            The dust limit is not actually fixed, technically - it varies based on the type of output. 546 satoshis is simply the most commonly known one, for a p2pkh output. Being the longest-lived output type, I suspect some wallets/blog posts/literature might treat it as a hard coded dust limit.



            As to how to arrive at 546 satoshis, we must first know what "dust" means. A dust output is an output which costs more to spend, than it is worth. In other words, an X BTC output that costs >X to spend, is a dust output. This is directly proportional to the amount of data required to spend an output, since fees in bitcoin are commonly denoted "per-byte". The more bytes you must add to your tx to spend an output, the higher its dust threshold.



            A very basic tx consisting of 1 p2pkh input (~148 bytes), and 1 p2pkh output (~34 bytes) comes out to 182 bytes. The dust limit is 3 times this number (assuming a relay fee of 1 satoshi), or 182*3 = 546 sats.



            For more complex txs, such as p2sh, this number is larger. For less space-intensive ones such as the newer segwit options, this number would be lower.



            The code used in Bitcoin core to determine the dust threshold can be found here.






            share|improve this answer



























            • I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

              – Nate Eldredge
              Apr 15 at 15:31











            • @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

              – Raghav Sood
              Apr 15 at 15:36











            • Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

              – Ugam Kamat
              Apr 15 at 16:29











            • I think Ugam is right according to this.

              – MCCCS
              Apr 15 at 16:48















            3
















            The dust limit is not actually fixed, technically - it varies based on the type of output. 546 satoshis is simply the most commonly known one, for a p2pkh output. Being the longest-lived output type, I suspect some wallets/blog posts/literature might treat it as a hard coded dust limit.



            As to how to arrive at 546 satoshis, we must first know what "dust" means. A dust output is an output which costs more to spend, than it is worth. In other words, an X BTC output that costs >X to spend, is a dust output. This is directly proportional to the amount of data required to spend an output, since fees in bitcoin are commonly denoted "per-byte". The more bytes you must add to your tx to spend an output, the higher its dust threshold.



            A very basic tx consisting of 1 p2pkh input (~148 bytes), and 1 p2pkh output (~34 bytes) comes out to 182 bytes. The dust limit is 3 times this number (assuming a relay fee of 1 satoshi), or 182*3 = 546 sats.



            For more complex txs, such as p2sh, this number is larger. For less space-intensive ones such as the newer segwit options, this number would be lower.



            The code used in Bitcoin core to determine the dust threshold can be found here.






            share|improve this answer



























            • I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

              – Nate Eldredge
              Apr 15 at 15:31











            • @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

              – Raghav Sood
              Apr 15 at 15:36











            • Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

              – Ugam Kamat
              Apr 15 at 16:29











            • I think Ugam is right according to this.

              – MCCCS
              Apr 15 at 16:48













            3














            3










            3









            The dust limit is not actually fixed, technically - it varies based on the type of output. 546 satoshis is simply the most commonly known one, for a p2pkh output. Being the longest-lived output type, I suspect some wallets/blog posts/literature might treat it as a hard coded dust limit.



            As to how to arrive at 546 satoshis, we must first know what "dust" means. A dust output is an output which costs more to spend, than it is worth. In other words, an X BTC output that costs >X to spend, is a dust output. This is directly proportional to the amount of data required to spend an output, since fees in bitcoin are commonly denoted "per-byte". The more bytes you must add to your tx to spend an output, the higher its dust threshold.



            A very basic tx consisting of 1 p2pkh input (~148 bytes), and 1 p2pkh output (~34 bytes) comes out to 182 bytes. The dust limit is 3 times this number (assuming a relay fee of 1 satoshi), or 182*3 = 546 sats.



            For more complex txs, such as p2sh, this number is larger. For less space-intensive ones such as the newer segwit options, this number would be lower.



            The code used in Bitcoin core to determine the dust threshold can be found here.






            share|improve this answer















            The dust limit is not actually fixed, technically - it varies based on the type of output. 546 satoshis is simply the most commonly known one, for a p2pkh output. Being the longest-lived output type, I suspect some wallets/blog posts/literature might treat it as a hard coded dust limit.



            As to how to arrive at 546 satoshis, we must first know what "dust" means. A dust output is an output which costs more to spend, than it is worth. In other words, an X BTC output that costs >X to spend, is a dust output. This is directly proportional to the amount of data required to spend an output, since fees in bitcoin are commonly denoted "per-byte". The more bytes you must add to your tx to spend an output, the higher its dust threshold.



            A very basic tx consisting of 1 p2pkh input (~148 bytes), and 1 p2pkh output (~34 bytes) comes out to 182 bytes. The dust limit is 3 times this number (assuming a relay fee of 1 satoshi), or 182*3 = 546 sats.



            For more complex txs, such as p2sh, this number is larger. For less space-intensive ones such as the newer segwit options, this number would be lower.



            The code used in Bitcoin core to determine the dust threshold can be found here.







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Apr 16 at 2:58









            KappaDev

            6091 gold badge5 silver badges19 bronze badges




            6091 gold badge5 silver badges19 bronze badges










            answered Apr 15 at 15:15









            Raghav SoodRaghav Sood

            9,4812 gold badges12 silver badges29 bronze badges




            9,4812 gold badges12 silver badges29 bronze badges















            • I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

              – Nate Eldredge
              Apr 15 at 15:31











            • @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

              – Raghav Sood
              Apr 15 at 15:36











            • Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

              – Ugam Kamat
              Apr 15 at 16:29











            • I think Ugam is right according to this.

              – MCCCS
              Apr 15 at 16:48

















            • I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

              – Nate Eldredge
              Apr 15 at 15:31











            • @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

              – Raghav Sood
              Apr 15 at 15:36











            • Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

              – Ugam Kamat
              Apr 15 at 16:29











            • I think Ugam is right according to this.

              – MCCCS
              Apr 15 at 16:48
















            I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

            – Nate Eldredge
            Apr 15 at 15:31





            I think this answer could be clarified a bit. It seems to boil down to the statement that "the dust limit is fixed at 3 satoshis per byte", which raises the question as to how this figure was selected. Also, referring to this as a "relay fee" seems misleading because no fees are collected by nodes who merely relay transactions.

            – Nate Eldredge
            Apr 15 at 15:31













            @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

            – Raghav Sood
            Apr 15 at 15:36





            @NateEldredge Absolutely - I'm trying to look up some sources I read ages ago on why 3*relay fee was selected. As for the relay fee bit, I believe it comes from the minrelaytxfee flag for bitcoind, which lets you control which transactions your node relays based on fee

            – Raghav Sood
            Apr 15 at 15:36













            Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

            – Ugam Kamat
            Apr 15 at 16:29





            Wasn't it the case that dust limit was introduced to prevent creation of UTXOs whose value is lower than the cost of scriptSig to spend it? For a 148 byte input, scriptSig would be 107 bytes. That is ~34*3.

            – Ugam Kamat
            Apr 15 at 16:29













            I think Ugam is right according to this.

            – MCCCS
            Apr 15 at 16:48





            I think Ugam is right according to this.

            – MCCCS
            Apr 15 at 16:48













            1
















            Bitcoin core sets the dust limit to a value where spending an output would exceed 1/3 of its value. This calculation is based on the node's setting for the minimum relay transaction fee (see option -minrelaytxfee) whose default is 0.00001 BTC/KB. Any transaction with a fee less than that does not get relayed by the node i.e. is dropped from its mempool.



            For a node that uses the default -minrelaytxfee of 0.00001 BTC/KB (1000 satoshis/KB) and given that for P2PKH an input is 148 bytes and an output is 34 bytes, it follows that an output less than or equal to 546 satoshis is considered dust according to Bicoin core.



            Reference: What is meant by Bitcoin dust?






            share|improve this answer





























              1
















              Bitcoin core sets the dust limit to a value where spending an output would exceed 1/3 of its value. This calculation is based on the node's setting for the minimum relay transaction fee (see option -minrelaytxfee) whose default is 0.00001 BTC/KB. Any transaction with a fee less than that does not get relayed by the node i.e. is dropped from its mempool.



              For a node that uses the default -minrelaytxfee of 0.00001 BTC/KB (1000 satoshis/KB) and given that for P2PKH an input is 148 bytes and an output is 34 bytes, it follows that an output less than or equal to 546 satoshis is considered dust according to Bicoin core.



              Reference: What is meant by Bitcoin dust?






              share|improve this answer



























                1














                1










                1









                Bitcoin core sets the dust limit to a value where spending an output would exceed 1/3 of its value. This calculation is based on the node's setting for the minimum relay transaction fee (see option -minrelaytxfee) whose default is 0.00001 BTC/KB. Any transaction with a fee less than that does not get relayed by the node i.e. is dropped from its mempool.



                For a node that uses the default -minrelaytxfee of 0.00001 BTC/KB (1000 satoshis/KB) and given that for P2PKH an input is 148 bytes and an output is 34 bytes, it follows that an output less than or equal to 546 satoshis is considered dust according to Bicoin core.



                Reference: What is meant by Bitcoin dust?






                share|improve this answer













                Bitcoin core sets the dust limit to a value where spending an output would exceed 1/3 of its value. This calculation is based on the node's setting for the minimum relay transaction fee (see option -minrelaytxfee) whose default is 0.00001 BTC/KB. Any transaction with a fee less than that does not get relayed by the node i.e. is dropped from its mempool.



                For a node that uses the default -minrelaytxfee of 0.00001 BTC/KB (1000 satoshis/KB) and given that for P2PKH an input is 148 bytes and an output is 34 bytes, it follows that an output less than or equal to 546 satoshis is considered dust according to Bicoin core.



                Reference: What is meant by Bitcoin dust?







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Apr 15 at 16:55









                Thalis K.Thalis K.

                2162 silver badges7 bronze badges




                2162 silver badges7 bronze badges































                    draft saved

                    draft discarded















































                    Thanks for contributing an answer to Bitcoin Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fbitcoin.stackexchange.com%2fquestions%2f86068%2fhow-was-the-dust-limit-of-546-satoshis-was-chosen-why-not-550-satoshis%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Tamil (spriik) Luke uk diar | Nawigatjuun

                    Align equal signs while including text over equalitiesAMS align: left aligned text/math plus multicolumn alignmentMultiple alignmentsAligning equations in multiple placesNumbering and aligning an equation with multiple columnsHow to align one equation with another multline equationUsing \ in environments inside the begintabularxNumber equations and preserving alignment of equal signsHow can I align equations to the left and to the right?Double equation alignment problem within align enviromentAligned within align: Why are they right-aligned?

                    Training a classifier when some of the features are unknownWhy does Gradient Boosting regression predict negative values when there are no negative y-values in my training set?How to improve an existing (trained) classifier?What is effect when I set up some self defined predisctor variables?Why Matlab neural network classification returns decimal values on prediction dataset?Fitting and transforming text data in training, testing, and validation setsHow to quantify the performance of the classifier (multi-class SVM) using the test data?How do I control for some patients providing multiple samples in my training data?Training and Test setTraining a convolutional neural network for image denoising in MatlabShouldn't an autoencoder with #(neurons in hidden layer) = #(neurons in input layer) be “perfect”?