How To Choose The Right Blockchain For Your Next Dapp
Here are the key considerations for choosing which blockchain to use for your application development.
As blockchain applications go mainstream and competition increases, more effort must go into ensuring the success of web3 projects. And the first place to start is choosing the right blockchain network to host your dapp.
But picking from 140+ blockchains can be difficult, even if you had a crystal ball. To help, we have created this guide that highlights the key considerations for choosing which blockchain network to use for your application development. This guide also includes a curated list of top blockchain networks along with a brief description of each protocol.
Let's dive in!
Why choosing the right blockchain matters
Web3 projects are often tightly coupled with the technical infrastructure they are built on. The choice of blockchain affects product features like user experience, platform security, and censorship resistance. But it can also influence other things about your project, such as access to funding, ease of development, and so on.
Choosing a blockchain can essentially make or mar your blockchain project. While it isn’t enough to select a specific chain for smart contract development, the right choice will significantly influence the success of your web3 application.
As you'll learn in later parts of this guide, factors associated with a blockchain can make it attractive or unattractive—depending on your project’s needs. It's important to review the qualities of each blockchain and, more importantly, your project’s needs before choosing a blockchain network for deployment.
What to consider when choosing a blockchain platform
Type of project
Not all blockchains are equal, and some are better suited to certain types of projects than others. The choice of a blockchain development platform should reflect the unique concerns of your product.
Specifically, it helps to ask two questions: a) What is the objective of this product? b) What blockchain network best helps achieve that objective? Clear answers to both questions will greatly improve the process of deciding what blockchain(s) to use.
Decentralization
The core ethos of blockchains—at least, public blockchains—is decentralization. While 'decentralization' can mean many things, there are two dimensions of decentralization relevant to decentralized applications (according to Vitalik Buterin):
- Architectural decentralization: The extent to which the system is distributed among multiple computers/servers.
- Political decentralization: The extent to which control over computers/servers in the system is distributed among different individuals and organizations.
Highly decentralized blockchains are usually architecturally decentralized (many computers are connected to the system) and politically decentralized (power over the system isn't concentrated in the hands of a single entity or small set of participants). Less decentralized blockchains will have a smaller number of servers connected to the system and concentrate control in the hands of a few individuals or groups.
Decentralization has implications for a blockchain's guarantees of security, performance, and censorship resistance. Because a decentralized blockchain has more physical computers (nodes), it can tolerate some computers failing without experiencing downtimes. Such chains are also more resistant to 51% attacks and censorship (honest actors will often outnumber malicious nodes).
However, decentralization involves trading off other qualities, especially scalability—this problem is captured in the so-called scalability trilemma. Since Blockchains are logically centralized (all participants must agree on the same state), having more peers in the network reduces the speed at which transactions are processed.
(source)
Many applications benefit from using decentralized blockchains, especially when qualities like security trump other considerations. But if your users are willing to accept lower security guarantees in exchange for other benefits, like scalability, then looking at high-throughput chains (with lower levels of decentralization) is sensible.
A DeFi application managing millions in user funds will need to provide a high level of security guarantees, so deploying on a highly decentralized blockchain is ideal. But users of a play-to-earn (P2E) game will likely want scalability—particularly cheap fees and fast transactions. Choosing a scalable blockchain for a P2E game might be better in this case, even if it comes at the cost of decentralization and security.
Usage and adoption metrics
The popularity of different blockchain platforms is another factor to consider before choosing a network for deployment. Blockchain adoption metrics have implications for:
1. Liquidity: Decentralized finance (DeFi) applications benefit from blockchains with a high Total Value Locked (TVL) in the protocol. For example, users are more likely to join a decentralized lending protocol if they can find others to swap or trade tokens.
2. Network effects: Network effects occur when the value a user derives from a service increases in proportion to the total number of users on the platform. Essentially, this means the more users your dapp gets, the more it becomes useful (and popular). However, your chances of exploiting the gains of network effects rely on the number of users available on the chosen blockchain.
3. Competition: A downside to choosing a highly popular blockchain is that you may have to handle more competition, especially if the network has existing dapps/protocols with a similar use-case. Some web3 development teams circumvent this problem by deploying projects on new blockchains (asides from the original) to capture new users and beat competition.
4. Access to users: If your goal is to capture users, then it only makes sense to launch dapps on blockchains with higher usage. Moreover, picking a blockchain that core investors are familiar with reduces friction in onboarding users. A situation where users must incur additional costs (e.g., paying to bridge funds) to use your dapp on a chain might discourage prospective customers.
It is also important to know if customers interested in your use-case are available on the network. As explained, some chains offer specific benefits that appeal to a section of the market. For example, launching a play-to-earn game on a low-fee blockchain is ideal since those platforms appeal to users that want fast and inexpensive transactions.
Scalability
Scalability can refer to any or all of the following:
- Throughput: How many transactions can a blockchain process? This is usually measured in transactions per second (TPS).
- Latency: How long does it take for a transaction to be confirmed? Confirmed transactions have finality (the guarantee that the transaction cannot be reversed).
Understanding a blockchain's scalability is important. But it is even more important to understand the different nuances involved.
For example, a blockchain may have high throughput but still experience some high latency. An example is a layer-2 optimistic rollup that posts transactions to a layer-1 blockchain. Transactions are processed on the L2 chain, but users cannot have finality guarantees until transaction results are committed to the L1 chain.
But why does scalability matter, anyway?
The ability of a blockchain to scale to support an increase in application usage affects the user experience. A blockchain with constrained scalability is likely to suffer high transaction fees, dropped transactions, and slow processing times—especially when the network is congested.
(source)
Scalability also matters for future expansion efforts. If a blockchain's throughput is low, the quality of users' experience will likely drop when your application spikes in usage. This is an important consideration, especially if using your application demands a high number of transactions.
Nevertheless, you also want to understand the tradeoffs involved when prioritizing scalability. As explained earlier, scaling blockchains requires introducing new trust assumptions, so consider what degree of trust users will tolerate.
Ease of development
The ease of developing applications for a blockchain should influence your decision-making process. Although this quality will vary among different blockchain platforms, you can use these factors as a guide:
1. Language: What language is used in writing smart contracts for the blockchain? Does learning the language involve a steep learning curve? Some blockchains require learning new languages (e.g., Solidity for Ethereum) or using existing languages (Rust for NEAR).
2. Tooling: Does a well-defined and robust stack for building decentralized applications on the blockchain exist? How easy is it to use those tools? Have these tools been extensively audited and tested?
3. Developer community: Is there an active developer community that can assist you in your programming journey? How large is the community, and what resources—documentation, tutorials, guides—are available?
4. Ecosystem support: Does the blockchain have a system for supporting developers working on useful projects? Many blockchains provide grants, funds, and other forms of assistance that make launching a new application easier. It also helps to evaluate existing relationships with key players and organizations in the community, as it could influence fundraising opportunities, among other things.
Interoperability
Blockchains are traditionally siloed off from each other and cannot exchange information and assets. As such, launching a new application on one blockchain will limit you to users on that platform.
But there are workarounds to the problem of interoperability, particularly cross-chain bridges. Cross-chain bridges enable communication between distinct blockchain networks. A bridge might support anything from simple token movements to complex transfers of arbitrary data.
Therefore, a good heuristic for evaluating a blockchain is the existence of bridges connecting it to other chains. As bridge technology helps users to move assets and funds between blockchains, you're no longer limited to users on a single chain.
Compatibility is another dimension of interoperability, which is easy to overlook but also critical. By compatibility, we mean the extent to which applications on a blockchain can be ported to other blockchains with minimal modifications to the code.
For instance, Ethereum provides the Ethereum Virtual Machine (EVM), a runtime environment for executing smart contracts. Because Ethereum is the most-used smart contracts platform, newer blockchains are often designed to run smart contracts written or compiled for the EVM. These are described as 'EVM-compatible chains' since they can run programs written for the EVM.
Choosing a blockchain network that is compatible with other chains (e.g., EVM-compatible chains) has benefits:
1. Expanding your user base is easier since you can deploy applications to other networks without incurring significant overhead.
2. You can rely on the same tooling and infrastructure for building dapps for multiple chains. Deploying to a non-compatible blockchain may require learning new languages and using new tools for writing smart contracts.
3. With the existence of cross-chain bridges, deploying to other chains ensures users can interact with your application on whatever protocol best suits their needs.
What are the top blockchain networks?
Layer 1s
Ethereum
Ethereum is the first blockchain to provide resources for distributed, decentralized, general-purpose computation. Ethereum can run smart contracts: programs that execute predefined agreements according to business logic defined in code.
Previously, Ethereum suffered an image problem due to its use of the energy-intensive proof-of-work (PoW) consensus algorithm. However, it recently switched to proof-of-stake (PoS)—cutting its energy footprint by 99.99%.
Pros
1. High degree of decentralization: Ethereum is secured by hundreds of thousands of validators participating in its proof-of-stake consensus protocol. It also limits block times and sizes to reduce hardware requirements for nodes.
2. Large user base: Ethereum processes the most transactions per day and has the most Total Value Locked (TVL) of any smart contract blockchain. Hence, it is not surprising that Ethereum has the highest number of dapps deployed on any blockchain network.
(source)
3. Ecosystem support: Developers working on public goods for the Ethereum community can access funding from the Ethereum Foundation. There are also other initiatives, like Gitcoin Grants, MolochDAO, and clr.fund, that fund Ethereum development projects.
Cons
1. Scalability issues: Ethereum can only process around 10-15 transactions per second for now. However, the low throughput is largely due to Ethereum’s large validator set—representing a tradeoff between scalability and decentralization.
2. Expensive transaction fees: Frequent spikes in Ethereum gas fees (due to network congestion) might be fodder for memes, but it also represents a pain point for real-world users.
(source)
→ Start building on Ethereum with Infura
NEAR
NEAR is the first blockchain to implement sharding, which helps it achieve massive gains in scalability. NEAR's Proof of Stake protocol is certified carbon-neutral, and it runs programs written in the popular Rust language.
Although not EVM-compatible itself, NEAR offers Aurora, a Layer 2 solution that runs on top of the NEAR protocol. Aurora is EVM-compatible and promises faster block times and lower transaction fees for application users.
Pros
1. High throughput: NEAR has claimed it can process up to 100,000 transactions per second.
2. Developer-friendly: NEAR contracts can be written in Rust or AssemblyScript (a variant of JavaScript). Both are popular languages and may be easier to work with than newer smart contract-oriented languages.
3. Cutting-edge technology: NEAR's implementation of sharding improves scalability and reduces hardware requirements for nodes. This also makes it easier to build light clients (and possibly mobile-friendly blockchain applications in the future).
Cons
1. Limited validator set: As a requisite for scalability, NEAR’s consensus protocol is limited to 100 active validators. While a small validator set might be a concern for some, more nodes participating in consensus would result in lower throughput and a longer time-to-finality.
2. Low adoption metrics: Although NEAR's popularity has increased since its launch in 2020, it has far fewer users than other L1s, especially Ethereum.
→ Start building on NEAR Protocol and Aurora with Infura
Polygon
Polygon is a sidechain designed to scale transactions for Ethereum users. Asset movement from and to Ethereum is primarily facilitated by the Polygon Proof of Stake (PoS) bridge. Compared to Ethereum, Polygon offers users cheaper gas fees and quicker processing times.
Pros
1. EVM compatibility: Many Ethereum-native dapps have successfully deployed on Polygon and developers can use familiar tools for building applications.
2. Scalable and low-fee infrastructure: Polygon is ideal for high-volume applications, such as play-to-earn (P2E) games and NFT trading. Much of Polygon’s recent growth has, in fact, been driven by P2E gaming.
Cons
1. Limited validator set: As with other L1s implementing Proof of Stake consensus, Polygon's consensus protocol is capped at 100 validators. This encourages faster transaction processing, but also trades off some measure of decentralization for scalability.
2. Security risks: Users moving funds from Ethereum to Polygon must rely on the bridge protocol's security and the honesty of sidechain validators.
3. Spam transactions: Polygon’s low fees have often made it a target for bots and spam transactions in the past (which can affect network-wide UX). However, the blockchain has taken steps to curb spam activity such as raising transaction fees.
→ Start building on Polygon with Infura
Avalanche
Avalanche is a new-generation blockchain launched in 2020 with the goal of solving blockchain's scalability problem. With its novel Snowman consensus algorithm, Avalanche is able to achieve an ideal mix of sub-second finality, high throughput, and decentralized validation.
The Avalanche platform comprises Exchange Chain (X-Chain), Platform Chain (P-Chain), and Contract Chain (C-Chain). X-Chain and P-Chain are for trading digital assets and spinning up new blockchains, respectively, while the C-Chain is an EVM-compatible blockchain for running smart contracts.
Pros
1. EVM compatibility: Avalanche's C-Chain is an implementation of the Ethereum Virtual Machine (EVM), so developers can write Avalanche smart contracts in Solidity and leverage existing tools for building applications.
2. Scalability: Avalanche processes up to 4,500 transactions per second and provides near-instant finality for transactions.
3. Flexibility: Avalanche provides infrastructure for building custom blockchains (subnets) with special rules around consensus, tokenomics, and membership. This can be useful for developers who want custom blockchain solutions for applications.
Cons
1. As standalone blockchains, Avalanche Subnets may experience issues around composability and security.
2. Validator count on Avalanche is over 1,000—higher than many alt L1s, but lower than Ethereum's validator set.
→ Start building on Avalanche C-Chain with Infura
Celo
Celo is an EVM-compatible, Proof of Stake blockchain designed to solve two major issues stifling web3 adoption: complexity of user-facing technology, especially wallets, and volatility in prices of cryptocurrencies. For example, Celo solves the first problem by replacing public keys with wallet addresses that map to phone numbers.
Instead of memorizing a public key—a complex string of numbers and letters—before sending funds, Celo users only need a mobile number to send and receive money. This reduces errors in making blockchain-based payments and minimizes friction for new users. Celo is also light client-friendly, and can run on resource-constrained devices such as mobile phones.
The problem of volatility in cryptocurrency prices is solved by providing network-issued stablecoins for users (called cStables). Stablecoins are pegged to the value of real-world currencies (e.g., the US dollar or Brazilian real) and are less resistant to price swings in cryptocurrency markets. Moreover, users can also pay transaction fees on Celo using stable currencies—unlike other L1s that require using native tokens to pay for computation.
Pros
1. Low costs of onboarding users: With billions of mobile phone users in the world today, Celo developers potentially have access to a larger user base than a standard blockchain. More importantly, Celo’s mobile-focused architecture significantly decreases friction for new dapp users.
2. Ideal for ReFi projects: Regenerative finance (ReFi) applies blockchain technology to solving systemic problems—widespread poverty, climate change, deforestation, and more—plaguing the world today. Many of Celo’s features (carbon-neutral architecture, low-fee transactions, mobile-friendly technology) make it ideal for projects advancing on ReFi initiatives.
Currently, Celo is home to high-profile ReFi projects such as Impact Market (a Universal Basic Income (UBI) project designed to provide income for the world’s poorest). You can find a more comprehensive explanation of Celo’s potential for ReFi on the Not Boring blog.
3. Ease of use and development: Celo is EVM-compatible, so developers can write smart contracts in Solidity and migrate existing projects from other EVM-compatible chains to Celo. Users will also find Celo’s sub-dollar transaction fees (which can also be paid in stablecoins) and fast finality (transactions settle in under five seconds) ideal.
Cons
1. Low TAM figures: Although Celo has a unique value proposition, it hasn’t fully caught on like other blockchain networks. Thus, the total addressable market (TAM) on Celo is likely lower compared to other alt L1 blockchains like Polygon or Avalanche.
2. Complexities in stablecoin system: Unlike most stablecoins, Celo’s collection of stable currencies (cUSD, cReal, cEUR) are backed by a mix of crypto-assets (e.g., CELO, ETH, and BTC), not real-world currencies. As these assets are subject to market volatility themselves, maintaining the 1:1 peg between a cStable and its real-world counterpart requires complex planning.
3. On-chain governance: Celo uses on-chain governance (i.e., CELO token holders submit and vote on proposals) to manage protocol upgrades. While this is ideal for decentralization, the risk of malicious parties with significant wealth manipulating the governance process is higher than in a blockchain using off-chain governance (i.e., social consensus) to manage upgrades.
→ Start building on Celo with Infura
Layer 2s
Optimism & Arbitrum
(source)
Optimism and Arbitrum are layer-2 scaling solutions running on top of Ethereum. Both are described as optimistic rollups meaning:
- Transactions are executed on L2 and aggregated ("rolled up") and posted in batches to Ethereum. This reduces costs for users since the costs of publishing data on L1 are amortized across multiple transactions.
- Transactions posted to L1 are assumed valid (optimistic execution) unless declared incorrect by a successful fraud proof
Arbitrum and Optimism implement several optimizations to increase scalability, such as using a single node (called a sequencer) to process transactions. But, unlike other scaling solutions, optimistic rollups derive security from Ethereum. This is possible because a) anyone can validate the rollup's state using transaction data posted on Ethereum and b) anyone can initiate a fraud proof on L1 to challenge invalid transactions and revert the rollup's state.
Pros
1. Better scalability guarantees: Arbitrum and Optimism can process thousands of transactions per second and reduce fees for users.
2. Security: Optimistic rollups rely on the main Ethereum chain for data availability, security, and censorship resistance. These qualities make optimistic rollups like Arbitrum and Optimism safer than sidechains or alternative L1s.
3. EVM-equivalence: Optimistic rollups are 'EVM-equivalent', meaning they can execute smart contracts written for the EVM without forcing developers to make large modifications to code.
Cons
1. Latency: Transactions cannot be fully confirmed until the corresponding batch has been included in an Ethereum block. In this regard, users may experience some delay since sequencers will typically wait to collect more transactions before submitting a new batch to L1. (This is mainly done to amortize the costs of publishing data to L1 and reduce costs for individual users.)
2. Delayed withdrawals: Optimistic rollups stipulate a time window (challenge period) to allow anyone to challenge the results of an L2 transaction. Users cannot withdraw funds deposited in the rollup during this period, which can last for 1-2 weeks.
3. Honesty assumptions: An optimistic rollup's security relies on the existence of an honest participant that can watch the chain and challenge transactions if necessary.
→ Start building on Arbitrum and Optimism with Infura
StarkNet
StarkNet is a zero-knowledge rollup running on top of Ethereum. Like optimistic rollups, ZK-rollups process transactions off the Ethereum blockchain, but post transaction batches to L1 at intervals.
StarkNet uses zero-knowledge proofs to prove the validity of off-chain transactions, which are verified by an L1 contract. This removes the need for honest validators to process the chain and initiate fraud proofs, while reducing latency for L2 users.
Pros
1. Minimal delays in withdrawing to L1: Once the zero-knowledge proof verifying the correctness of a batch is accepted, the underlying transactions achieve finality.
2. Lower trust assumptions: Zero-knowledge proofs constrain the capacity of block producers to act maliciously. Validity proofs guarantee the correctness of state changes, hence ZK-rollups don't need an honest validator to remain secure.
3. Scalability: Optimizations, such using a single block producer and compressing transaction data, boost scalability on StarkNet's ZK-rollup. StarkNet also introduced recursive STARKs recently, which will increase throughput further.
Cons
1. Latency: Transactions cannot achieve finality until they are verified on L1 chain by a validity proof. However, proof generation is computationally intensive and time-consuming. The StarkNet operator may also delay batch submission to amortize the costs of proof generation and verification on L1 costs across many transactions.
2. Lack of EVM compatibility: StarkNet runs contracts written in the Cairo programming language. While Ethereum contracts can be compiled to run in StarkNet's VM, major changes in code are still required.
→ Start building on StarkNet with Infura
Palm
Palm is an Ethereum sidechain designed to support artists, creators, and individuals/enterprises in the creation and distribution of non-fungible tokens (NFTs). As a blockchain implementing IBFT proof-of-authority (PoA) consensus, Palm guarantees faster transaction confirmations and lower gas fees for users.
Developers can leverage Palm's low-cost and accessible infrastructure to improve UX for NFT buyers and holders (as high-profile names like Damien Hirst and DC Studios have done in the past). Palm allows for bridging ERC-20 tokens and NFTs to and from Ethereum, potentially benefiting users who need access to liquidity. This means, for example, that users can cheaply mint NFTs on Palm and transfer to Ethereum to exchange or sell.
→ Start building on Palm with Infura
What blockchain network should you choose?
Blockchain networks feature different tradeoffs, design mechanisms, and benefits—which you should consider before selecting a chain for deployment. You may go with a general-purpose blockchain that offers a combination of desired features or a special-purpose chain designed with specific applications in mind.
Whatever blockchain you end up choosing, Infura is there to make launching a dapp as seamless as possible. Visit Infura's Networks page to learn how Infura can help you get started on building on different blockchains.