How to Create a Stablecoin on Ethereum
Following its name, stablecoins are cryptocurrencies that are aimed to be stable and eliminate asset fluctuations. The current market offers more than 70 stable assets so building a stablecoin became a common practice.
In this article, we would like to show you Blaize’s stablecoin creation guide and share an example of creating a stablecoin on Ethereum. We will also concentrate on different approaches to stablecoin development and which one suits best to your business case.
How to create a stablecoin?
The process of stablecoin development is quite complex and needs to take into account a list of important factors. Those specifications significantly impact the development process length and scope and therefore should be discussed and explained in a detailed way.
The main points to consider before creating your own stablecoin:
- Type of stablecoin
- Target blockchain platform
- Stablecoin development approach
- Ways for maintaining liquidity flow
Types of stablecoins
By its definition stablecoin keeps the same price as the asset it is pegged to, like USD, EUR or even cryptocurrency. The stability of a price can be embodied in different ways. The most common one is backing the coin by other assets, so the emission of stablecoin is simultaneously stimulated and bounded by the finite collateral liquidity. In this terms we differentiate:
- crypto-backed stablecoins
- fiat-backed stablecoins
- commodity-backed stablecoins
Blaize has been sharing a thorough explanation of those in the article about types of stablecoins. Check it for a deeper understanding of the topic.
However, there is a type of stablecoins that does not require any collateral, meaning algorithmic stablecoin. This helps to achieve the required decentralization, which is a big issue in terms of classic collateral-backed stable assets.
Unlike previous examples, algorithmic stablecoin does not rely on any real asset while stability is modeled algorithmically. The set of smart contracts regulates the value of such stablecoin by managing supply with applied algorithms. You can see Ampleforth as a living example of this type.
This type of stablecoin requires the most complicated development toolset with previous experience in blockchain and smart contracts in particular. This is highly important when choosing the type of stablecoin you want to create and reliable stablecoin developers. Read how to find a solid blockchain outsourcing company for such a task.
Choose the target blockchain platform
After you get an understanding of what type of stablecoin your project needs, there is a place for considering the best platform for its implementation. The first thing to mention is that this is not a far 2016 when Ethereum was considered as one and only.
The market has plenty of blockchains hosting stablecoins of different types. Stellar, EOS and TRON blockchains are the first to overtake Ethereum.
Read more specifications of mentioned blockchains in Best Platforms for Blockchain Development.
Due to a number of advantages like low transaction costs or higher scalability the third generation blockchains are seemed to be a very attractive place for stablecoin development. Thus, such giants as Tether (USDT) decided to run on TRON and EOS besides Ethereum. In addition, EOS is hosting such stablecoin projects as Carbon (CUSD), EOSDT and EUSD.
However, the main question regarding choosing the right platform to launch a stablecoin should cover the demand occurring within this particular blockchain ecosystem. To clarify this notion, you can issue a stablecoin on any existing blockchain, but the project will not gain a lot of success because of low demand or the wrong use case of the coin. That is why we recommend preparing a thorough business analysis and do not omit the discovery stage during project planning.
Therefore, building a stablecoin on the Ethereum platform seems very reasonable due to a robust infrastructure and usage of ERC-20 token standard. Ethereum has the biggest ecosystem with high demand for custom currencies which will ensure constant and sustainable liquidity flow for your stablecoin.
Additionally, Ethereum is a home for almost all DeFi protocols which significantly increases the need for stablecoins. Those who are pegged to ETH (like DAI) have shown great results last year and the demand is expecting to grow accordingly to Ethereum 2.0 transitions.
To sum up this part, while choosing the right blockchain platform to launch a stablecoin the main focus should be turned to the supply and demand volume desired for your project. It is worth noting, that if you want to create your own decentralized stablecoin (like Dai or Ampleforth) you should remember that it will be tied to the chosen blockchain.
Then, the possibility of moving it to another network will either be absent or will be extremely limited. In case of creating centralized stablecoin (like Tether or PAX) on EOS, TRON or other blockchain you will need an additional bridge to be able to run an Ethereum stablecoin. In this case, you are not limited by the choice, but it may take more time and require more skills for the development.
Identify stablecoin development approach
This step requires an understanding of the needed trust mechanism you want to implement in your stablecoin architecture. In further explanation, the trust mechanism establishes the rules under which the price for the coin stays stable and the emission supports that stable price. This is very crucial in terms of understanding the level of decentralization you want to achieve.
Each approach to stablecoin development corresponds to different purposes and the client’s specifications on how to make a stablecoin. Let’s describe them for a deeper understanding.
1. Create your own blockchain
The first way is to create your own blockchain and make a stablecoin on top of it. You can see Celo blockchain with its cUSD stablecoin as an example of this approach.
2. Create decentralized stablecoin
This approach means creating a stablecoin algorithm from scratch using one of the existing blockchains. The issue of coins will be ensured by smart contracts. The trust mechanism in this case relies on the contract logic and is secured by it.
As an example, we can define DAI stablecoin based on MakerDAO protocol or any other ETH pegged coins. So we recommend considering this development approach if you need to create a stablecoin on Ethereum.
3. Create trustable centralized stablecoin
This approach is used for developing the majority of stablecoins and Tether is the most prominent example. The idea is to make a simple ERC-20 contract on Ethereum that issues stablecoins.
One should consider this approach if it needs to benefit from blockchain advantages while having guarantees of stability provided by fiats. The trust mechanism then relies on the rule that the private key of the deployer belongs to the single person (script on the backend actually) who has the right to generate new coins. The full decentralization of your currency is very questionable in this case.
4. Adoption through the intermediate case
Another approach to stablecoin launch can be its adoption through the intermediate solution. This case was perfectly performed by Binance exchange. BUSD (Binance initial stablecoin) was created inside the exchange as an intermediate coin in order to match trading pairs.
Then it was moved to BinanceChain through the creation of an app that wraps fiat and emits stablecoins in exchange and now acts as an independent stablecoin. After BUSD reached out from its native chain to Ethereum, many well-known DeFi services like Uniswap, 1Inch, Curve, Kyber, etc. started BUSD support.
Find out more about successful DeFi startups in our previous article.
5. Use existing cryptocurrency
As an alternative approach to the listed above, we can mention re-using existing cryptocurrency as a base to build an Ethereum stablecoin (or any other). The requirement for stablecoin usage within your business-case does not always mean the creation of the coin from scratch.
If you are building a dApp on Ethereum, you can re-use one of the existing currencies, since addresses of the most popular stablecoin contracts are known and trustable. Then, the integration of existing stablecoin projects like DAI seems very reasonable.
We have been sharing our experience on blockchain forking in the previous article. Find out more information about starting your own cryptocurrency there.
Ready to launch your own stablecoin project? Contact Blaize and start the development process ASAP!
Liquidity flow maintenance
One of the most crucial basis of initial stablecoin development is ensuring the sustainable liquidy flow for this stablecoin. This point primarily deals with the blockchain platform and cryptocurrency you want to use as a collateral.
In further explanation, liquidity maintenance stays for the ongoing ability of minting stablecoins and also sending and receiving assets which your protocol uses as a collateral. Therefore, the main question you need to answer is will you have a constant demand for the kind of stablecoin you want to create? Because if there is no demand, the project will end up useless.
Example of creating a stablecoin on Ethereum
As it is shown, the process of creating stablecoin can be quite complex and require a lot of previous experience in the majority of cases. In this part, we will use EthUSD stablecoin project development as an example to show and explain how to create stablecoin on Ethereum.
As you know already, one of the vital things for launching a successful stablecoin project is to get an actual demand for a certain coin. Therefore, this type of development requires a lot of points into consideration during the discovery stage, for instance, the choice of target blockchain or its eventual development from scratch.
The establishment of the desired trust mechanism with the algorithm for backing in crypto calculation, emission, total cap, etc. is another important question to consider. It has significant importance in terms of defining the level of decentralization we described above.
Ether-backed stablecoin development
Once all of the above-mentioned points were established we can start the development process. In this example, the second approach was applied where Ethereum smart contract is responsible for coin issuing.
For this type of development your project will need blockchain developers with experience in Solidity and a prior knowledge of Ethereum toolset.
To increase the security of your stablecoin and gather more trust from users we recommend conducting a 100% unit test coverage and order several smart contract audits from different subcontractors. Find out more about smart contract audit importance in this article.
How to launch a Stablecoin?
As soon as the development and testing is completed you should initiate the launch of your stablecoin. The first thing to do is to start the contract in the testnet (Ethereum test nets in our example).
EthUSD is deployed on the following testnets:
After fixing eventual troubles you should prepare a few additional important things. Though, before delivering your stablecoin to the mainnet prepare initial liquidity and coins minting plan (e.g. airdrops, campaigns, swaps, rewards, incentivization mechanism description, etc.). This will eliminate occasional inconveniences and possible hacking attacks.
Read more on how to prevent your decentralized project from hacking in this article.
The next step should concentrate on listing your stablecoin on big exchanges like Binance or Poloniex, crypto price-tracking web pages for example CoinMarketCap or CoinGecko, and DEXes like Uniswap, Mooniswap, 1Inch, Kyber, etc. Also consider Curve.fi as a prior due to its specifications for stable swaps.
How much does it cost to develop a Stablecoin?
The cost of creating stablecoin varies considerably regarding the type of development and trust mechanism the client chooses. As you know already, this raises a lot of questions crucial for establishing the project scope. That is why we recommend starting with the discovery stage and preparation of thorough SRS and technical specifications by the blockchain developers team.
See how Blaize team works on SRS and technical task preparation during the business analysis of our projects.
Defining the general scope of work, we can say with confidence that a collateral-backed stablecoin mechanism is relatively simpler. Therefore, it is less time-consuming to design the architecture and develop a stablecoin using a third development approach with a centralized trust mechanism.
For its part, the creation of algorithmic stablecoin mechanisms will need high-skilled blockchain specialists that are able to create complex modules of code. The choice of a blockchain platform to launch a stablecoin and its further integration are also should be taken into account. Thus, the development time & costs increase according to the project scope and can be very individual due to a list of factors.
Want to know an exact estimate of your stablecoin development? Contact Blaize and get an offer for your future project!
In this article, we have reviewed the most common approaches for stablecoin project development and have shown an indicative example of creating a stablecoin on Ethereum.
The Stablecoin mechanism has proven its usability through a variety of applications. There are some notable advantages of stablecoin we cannot miss:
- limiting asset volatility;
- securing crypto-asset long terms holding and prevention from inflation;
- easier transaction swaps without intermediaries using the benefits of a decentralized ecosystem.
There you can see just several use cases for stablecoin adoption, so the list can be extended by a few more. So if you still have questions regarding starting a stablecoin project talk to Blaize experts to dispel any doubts or arrange a meeting to start the project ASAP.