Using Merkle Patricia trie for keeping Ethereum states has the advantage of fewer changes in the data structure during the updates in the states compared to Merkle trie.

But what is the advantage of using Merkle Patricia trie for keeping transactions and receipts of Ethereum while there is no update in the stored transactions? Why does not Ethereum use Merkle trie for transactions just like Bitcoin ?

  • 1
    I speculate that their choice might be primarily driven by the convenience of reusing the existing code. Aug 29, 2023 at 3:31

1 Answer 1


My best bet is that they wanted to reuse the code for merkle patricia tries, which they are using anyways for computing the stateRoot - in order to have less code overall.

Looking at it in isolation, the transactionsRoot would definitely be a bit simpler to compute if it used a merkle tree like Bitcoin does instead.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.