Algorand: The pros and cons of the apparent solver of the trilemma
An in-depth look at the advantages and disadvantages of Algorand compared to other cryptocurrencies
6000+ tps, high decentralisation, high security. Has Algorand solved the trilemma? From the marketing you would think so, but does it actually live up to the hype? In this post I’ll go through the advantages and disadvantages of Algorand.
(I call “participation nodes”, “validators” throughout the post because outside of the Algorand ecosystem, “validator” is the more recognised term for a staking node)
Advantages
Speed
On average, Algorand blocks times are under 4 seconds which is incredibly quick. Even if you increase the number of validators in the network it would still be able to maintain this speed making it more impressive.
Potentially highly decentralised consensus
Other protocols that use a similar consensus method to Algorand tend to be less decentralised as when you increase the number of validators involved with consensus, the amount of votes and networking traffic increases exponentially. Algorand uses cryptographic sortitioning to get around this limitation which allows it to have a much more decentralised consensus method.
If you are interested in knowing more about how it works, I have a video explaining it here:
High throughput
Algorand can do an impressive 6000 tps and are working towards an incredible 46k tps once they implement pipelining.
This high throughput doesn’t just apply to basic transactions. Smart contract transactions also have an impressive throughput predicted to be around 2800 tps for basic swaps. Even Solana apparently only does around 300 tps for swaps on one DEX.
Parallelized
Many in the space believe that in order to be able to process transactions in parallel you need to use the UTXO model, however Algorand (and Solana) have managed to find a way to do parallel processing with the account model as well.
When you create an Algorand transaction you have to state which pieces of state your transaction will interact with. Now validators will know which transactions touch the same pieces of state so can process them on the same core of the processor and have other transactions that don’t touch the same state processed on other cores.
Low fees
Having such high throughput allows Algorand to have incredibly low fees. The minimum fee for normal transactions is just 0.001 Algo which at current prices ($0.165314) is just $0.00165314.
Spam/Dust protected
Many projects that have low fees become prone to spam and dust attacks. Algorand has protections in place to make these types of attacks unreasonably costly.
For spam protection, Algorand has implemented a congestion fee so that if someone tries to congest the network with spam, the fee will increase making it more costly for them to spam. It also has a set of relay nodes who filter out any invalid transactions so that the validators aren’t burdened with them.
For dust protection, Algorand requires every address to have a minimum of 0.1 Algo meaning you can’t just split up an Algo token into its smallest decimal and send it to trillion of addresses to create state bloat. It also requires and additional 0.1 Algo for every asset (like NFT’s) the user owns. This also limits state bloat from users creating trillions of assets.
Limited supply
Algorand has a max supply of 10,000,000,000 Algo tokens which it will hit in 2030.
This gives it good tokenomics for potentially being a store of value once the initial distribution of tokens is over.
Whilst the advantages are amazing, nothing is perfect. Here are the disadvantages:
Disadvantages
Permissioned centralised Relay nodes
One of, if not the biggest reason why Algorand is able to have such high performance is because the validators don’t have to handle network traffic. Instead Algorand has a set of highly powerful relay nodes set up and validators offload networking to the relay nodes.
These relay nodes require beefy machines and large amounts of bandwidth. They are expensive to run so limits how many people can afford to run them which limits decentralisation.
Currently people running relay nodes are given large rewards in the form of newly minted Algo tokens. Whilst technically anyone can run a relay node, you only get the rewards and are added to the relay node list if you are approved by the Algorand foundation which essentially makes them permissioned.
People underplay how much influence they have in the network because they aren’t directly involved with consensus. However they are indirectly involved as they could choose to not relay blocks or transactions that they don’t like to indirectly prevent consensus happening on certain blocks or transactions.
Prone to Censorship
A lot of trouble was caused on Ethereum when Tornado cash was banned by the US treasury and many validators started following OFAC compliance by not including Tornado cash transactions in their blocks. However ultimately no transactions were censored because there were enough independent validators who didn’t follow OFAC rules and included the Tornado cash transactions.
If Tornado cash was on Algorand, it’s pretty likely that most Relay nodes would simply not relay any blocks that contained Tornado cash transactions to validators. You only need 26% of validators to not receive a block for consensus to not be reached so you don’t even need a majority of Relay nodes to cause censorship on Algorand.
Using high powered hardware is inevitable in order to scale, however if you do use it, you should have a back up option that is more decentralised in case the powerful nodes collude and censor. Algorand doesn’t have this for Relay nodes.
EDIT: It does seem like the Algorand Foundation are looking at creating a backup peer to peer network layer as per this video so my criticisms about relay nodes may disappear in the future
Lack of long term incentives for Relay nodes
Relay nodes are essentially the backbone of the network and cost a lot to run. The cost is high enough that people can’t afford to run them voluntarily. Despite this, after 2030, Algorand will hit its max supply and will no longer be able to provide rewards for running relay nodes. Will people continue to run them without these rewards?
There are talks of funding relay nodes through fees but Algorands fees are tiny and it would require the network running at almost full throttle continuously to generate enough fees to cover the costs of the relay nodes.
No longer easy to stake or run nodes
Previously, the requirements for running an Algorand validator or node were fairly lightweight and you could easily run one on a cheap Raspberry Pi.
Now you need an 8 core CPU and a 1 GB/s connection with low latency. These are approaching data centre specs and are no longer accessible for the average user.
Extremely poor distribution
Almost all Algo tokens went to the team and insiders. Algorand has one of the worst token distributions in the space. Only 0.05% went to the public.
Lack of incentive to stake
Despite staking no longer being easy from the increased validator requirements, there is no reward for staking with Algorand. This has led to the situation where very few people are staking.
They did previously offer a temporary reward to stake which initially got people to do it but since they removed the reward, the number of validators has dropped.
Previously, when there was an incentive, over 80% of Algo tokens were staked, now it’s just 34%. By not offering an incentive, Algorand is sacrificing security.
Even the founder Silvio Micali has said:
“We must use incentives as a last resort. I believe I can [make Algorand work without incentives], but I have no formal proof that I can, because these formal proofs are much harder than the proofs for Algorand“
Also, seeing as the initial distribution of Algo was very poor, the 34% may just be a few entities as well. It’s hard to find data on the distribution of the stake.
EDIT: It looks like the Algorand Foundation are also looking at better staking incentives per this video so my criticism here may be solved in the future
No adoption
Despite having strong connections with many businesses, being able to support massive throughput at fast speeds and having a well known brand within the space, no one is using Algorand.
It can be speculated that it’s because of the poor distribution leading to no strong community of early adopters. Even for the early adopters the price has not done well leading to some bitterness from the community.
I was initially going to add another disadvantage of being prone to state bloat because any chain with high throughput will be prone to state bloat. However, the adoption isn’t there so state bloat isn’t an immediate issue. Algorand also has state sharding in their longer term roadmap as a potential solution anyway.
Lower robustness
Percentage of voting power required for liveness:
Longest chain: 51%
Classic BFT: 67%
Algorand: 75%
Avalanche: 80%
It’s not as bad as Avalanche, but Algorand has less robustness than most other cryptocurrencies. Due to introducing randomness to the Classic BFT model, they had to increase the liveness requirements in case an attacker was randomly given a high percentage of the subsample for a block.
Algorand Foundation wasting money
To many it looks like the Algorand Foundation have just been throwing money away by doing things like sponsoring a Drone Racing League $100 million over 5 years. At the time of the sponsorship, the Drone League was worth $200 million. This sort of thing puts people off buying Algo as buying Algo indirectly funds the Algorand Foundation wasting this money.
Conclusion
Algorand is on a ticking timer until 2030 when it will hit its max supply and no new tokens will be minted. By this point it will need to have enough adoption so that it can generate enough fees to subsidize the costs of relay nodes. Hopefully it finds a way to incentivise people running normal validators as well.
Whilst the cryptography may be good, the crypto-economics of Algorand are poor. It only has 7 years to fix this.
It also can’t really claim high decentralisation anymore if it requires normal validators and nodes to have a 1GB/s internet connection. This puts it more in competition with Solana, Sui and Aptos than more decentralised cryptocurrencies like Ethereum or Cardano.
Solana is faster, has more adoption, has a bigger ecosystem and a more accessible smart contract language whilst having a similar throughput and fees. Aptos and Sui are the hyped up newcomers with similar specs and lots of VC backing. The Algorand foundation needs to find a way to attract developers over these other projects so it can build its own ecosystem and create adoption.
Personally I would wait and see when it comes to Algorand. If by 2030 it has created a more sustainable model that provides enough incentives for people running the underlying infrastructure and built up significantly more adoption, it may be worth investing in. For now though, it seems like the price won’t go anywhere due to the foundation and relay nodes constantly selling so other tokens are a better investment in the mean time.
EDIT: A few of my criticisms were addressed in this video so it’s worth keeping an eye out for future updates. My conclusion still remains to wait and see.
If you enjoyed this post, I’m planning to create posts like this for all the major layer 1 cryptocurrencies so subscribe if you don’t want to miss them.
I also have a YouTube channel, where I create educational content about cryptocurrencies, if you are interested.
Great dive for the advantages part but the disadvantages seems very much picked at random with no clear investigation
Participation node requirements are not that high, I run it on a normal pc and know some that use a rasberry Pi, those are the recommended future proof requirements that can handle all sorts of traffic.
About relay nodes:
1) they will become lighter to run
2) they will become optional for txn to go through since peer to peer node network will be introduced alongside dynamic round times to allow for extremely fast execution.
2) there are 120+ relay nodes geographically distributed and each txn is sent to 5+ different relays so it's not so easy to apply censorship.
3) anyone can run a relay the code for it is the same of the participation node but the permissioned part is only the default link from nodes to the relays, so you could set everything up without relying on external infrastructure network if you run both relay + part node pointing to your relay. No censorship there.