# Ever growing UTXO when sending Z transactions

**URL:** <https://forum.zcashcommunity.com/t/ever-growing-utxo-when-sending-z-transactions/30997>\
**Category:** zcashd client\
**Created:** [August 24, 2018, 2:30pm UTC](https://forum.zcashcommunity.com/t/ever-growing-utxo-when-sending-z-transactions/30997 "2018-08-24T14:30:18Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![maesitos](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/maesitos/32/9171_2.png) [@maesitos](https://forum.zcashcommunity.com/u/maesitos)\
**Post date:** [August 24, 2018, 2:30pm UTC](https://forum.zcashcommunity.com/t/ever-growing-utxo-when-sending-z-transactions/30997/1 "2018-08-24T14:30:18Z")

</div>

When you send a Z transaction one UTXO will never be spent. That creates an ever increasing UTXO set.

Is there any solution for this?

---

<div class="post-metadata">

**Author:** ![garethtdavies](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/garethtdavies/32/210_2.png) [@garethtdavies](https://forum.zcashcommunity.com/u/garethtdavies)\
**Post date:** [August 24, 2018, 2:37pm UTC](https://forum.zcashcommunity.com/t/ever-growing-utxo-when-sending-z-transactions/30997/2 "2018-08-24T14:37:16Z")

</div>

I am not entirely sure I understand your issue but in terms of dealing with a large number of of UTXOs and/or unspent notes you can merge them to a single UTXO/note using `z_mergetoaddress`. See here for full details (and you need to manually enable this feature) [z\_mergetoaddress - Zcash 4.5.1-1 RPC Docs](https://zcash-rpc.github.io/z_mergetoaddress.html)

---

<div class="post-metadata">

**Author:** ![daira](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/daira/32/43253_2.png) [@daira](https://forum.zcashcommunity.com/u/daira)\
**Post date:** [August 27, 2018, 7:49am UTC](https://forum.zcashcommunity.com/t/ever-growing-utxo-when-sending-z-transactions/30997/3 "2018-08-27T07:49:44Z")

</div>

Validating nodes don’t need to store the whole note commitment set/tree. (That is the nearest equivalent to the transparent UTXO set in the shielded part of the protocol. I’m assuming you didn’t mean the transparent UTXO set because you said “Z transactions”.) They do need to store the frontier authentication path of this tree, but that’s logarithmic in size (determined by the depth of the tree).

Validating nodes _do_ need to store the whole _nullifier_ set, and that is ever-increasing in the current protocol. Yes there are solutions to this; the best IMHO is to switch to an account-based protocol like Ethereum or Coda, which can also be made private with similar (or better) security properties to the [Sander and Ta-Shma](https://www.cs.tau.ac.il/~amnon/Papers/ST.crypto99.pdf)-type protocol used by Zerocash and Zcash. That would solve the issue you refer to, because there would be no more notes as such, only account balances.

Currently nodes store the whole blockchain, so solving nullifier set growth isn’t the most pressing issue in terms of storage use. Also, storage is very cheap.
