But what’s wrong with blockchains?

Given that blockchains already exist, and that they appear to reliably maintain a ledger state, this is a valid question. Why reinvent the wheel? The main motivation is scalability.

Let’s take Bitcoin as our blockchain case study. It is limited to around 7 transactions per second (TPS) globally regardless of how much demand or computational power are involved in the system. In addition, the time it takes for a transaction to reach finality, even with no congestion, is around an hour, which limits many potential use cases. Fully describing the blockchain scaling problem is beyond the scope of this blog post, and we recommend this article by Preethi Kasireddy as a good starting point to the Bitcoin scaling problem.

One of the blockchain bottlenecks is the necessity for every node to reach consensus before releasing a new block. If this synchronicity is not maintained, we get many orphan blocks. These blocks do not contribute to the overall throughput and therefore waste both bandwidth and proof-of-work resources. Orphan blocks are also known as temporary forks.

In a DAG, we accept that these orphans and forks are an inevitable consequence of a high rate of TPS. However, unlike in blockchain systems, these orphans are merged back into the system, and are therefore not a waste of resources. Theoretically, this is the major advantage of DAGs.