Nano has a great marketing catch-phrase to lay out its core value proposition: Fast, Feeless, Green. It’s catchy, I like it.
However, as with many things in the crypto space, there are some footnotes to be added. In this post, I want to focus on that word “feeless”. There’s a reason that it is “feeless” and not simply “free”. It’s because you don’t have to give Nano tokens to anyone in order to pay for your transaction to be processed by the network. But this presents a problem. If there is no cost to sending a transaction, then the network could be overwhelmed by spam. So instead, Nano has the concept that a small proof-of-work message is attached to the transaction. This proves that the sender had to expend some electricity to create the transaction.
Don’t get me wrong, the amount of electricity involved is very small. It’s nothing like the amount of electricity used by mining Bitcoin, Bitcoin Cash, Monero or other proof-of-work coins. But it is there. The idea is that it should be almost unnoticeable to a casual user sending a transaction every few minutes. But if you try to send a million transactions in bulk, then the amount of electricity required would add up quickly. Neat idea.
But it poses a couple of issues. First, there is still a sense in which there is a “fee” for sending a transaction. You have to pay money for the electricity. At the moment, this isn’t a big deal for two reasons. First, if you are using a desktop wallet, you’re desktop machine already consumes a bunch of electricity which you pay for in your monthly bill. The extra electricity used to create a few Nano transactions is not really even noticeable amid the cost of running your TV, your lights, you fridge, etc. Second, many users don’t even generate proof-of-work for themselves. For people using a mobile wallet, the proof-of-work is usually done for them on the server-side by whoever provides the wallet app (e.g. Natrium). The wallet provider may then be outsourcing proof-of-work generation through something like the dPoW system, where users volunteer to donate some of their electricity to create proof-of-work for apps they like. They do this as a way of contributing to the broader Nano ecosystem, which is great to see.
But if Nano were to really take off, some people would need to do bulk transactions at industrial scale. Payment processors for example, or big e-commerce sites like eBay or Amazon that are constantly sending and receiving funds between buyers and sellers. These types of entities would need to buy enough hardware and electricity to make sure they could provide proof-of-work to the network for all of their transactions. That has a real cost.
So if the main purpose of adding a “cost” to transactions is to prevent spam, the question then becomes whether it is better to pay this cost directly (i.e. in the form of transaction fees), or to pay it in a way that is hidden and indirect (e.g. through paying for electricity).
The advantage of doing it indirectly is that casual users don’t suffer from the “penny gap” when making transactions. They don’t have to think about “is the cost of sending this transaction worth it to me”? It doesn’t have to cross their mind for even a split second, which actually has a very noticeable effect psychologically. It lowers sales resistance when people don’t have to “think” too much before making a purchase (which makes this method attractive for retailers and marketers). It simply takes away mental “friction”. This alone may be a signficant contributing factor in encouraging Nano’s adoption. Even if it’s not technically “free” to send a transaction, it should still feel free. Posting data on Facebook, sending an email, conducting a Skype call, these things all have a cost that is paid by someone. But we have learned as a tech industry that these things must feel like they are free to the end user. That’s the way to get mass adoption. How big do you think Facebook would be if they tried to nickel-and-dime their users by charging them $0.001 every time they post a status update? The answer is that if they did that, we’d be saying “what’s Facebook?”
The advantage of doing fees directly is that it’s more economically flexible. If you need to send bulk Nano transactions, you need to have the GPU hardware and (hopefully cheap) electricity available. If you don’t want to invest in GPU hardware to generate proofs-of-work, then you need to outsource that to someone else, which requires some planning. Even if you generate them yourself, you are constrained by the conditions on the proofs. If you want to send one transaction each from 1 million accounts, you can generate the proofs whenever you want. You can use 1,000 GPUs to generate them all in parallel if you wish. But if you want to generate a million transactions from one account, then you have a constraint. You have to generate the transactions one at a time. You don’t know the data that needs to be hashed for the next proof-of-work until after you have generated the previous transaction. This makes the process very slow because it is impossible to parallelise the computation. But when there are explicit transaction fees, this problem goes away. You can chain transactions together as fast as you want, one on top of the other. If you are prepared to pay the fees, you can send the transaction, there’s no need to wait for a particular computation to finish.
Another advantage of direct, explicit fees is that it makes the costs clear to everyone. When the cost is hidden, there is incentive for wallet providers (for example) to try and cover those costs for mobile users to keep the costs hidden. But this means that the costs need to remain low enough that the wallet provider can afford to do them in bulk. Nano actually has suffered a spam attack in spite of the proof-of-work requirement. It could be argued that this would have been harder to do if the proof-of-work required was bigger. But this would rapidly increase costs for entities like wallet providers that are trying to generate proofs on their users’ behalf.
As you can see, there is a trade-off either way. Which is ultimately more likely to encourage global adoption in commerce? That’s the trillion-dollar question!