{"id":10369,"date":"2023-06-27T15:30:36","date_gmt":"2023-06-27T15:30:36","guid":{"rendered":"https:\/\/www.bitnovo.com\/blog\/?p=10369"},"modified":"2025-09-10T15:23:02","modified_gmt":"2025-09-10T15:23:02","slug":"how-to-create-a-token","status":"publish","type":"post","link":"https:\/\/www.bitnovo.com\/blog\/en\/how-to-create-a-token","title":{"rendered":"How to create a token?"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #ffffff;color:#ffffff\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #ffffff;color:#ffffff\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/how-to-create-a-token\/#difference_between_cryptocurrency_and_cryptographic_token\" >Difference between cryptocurrency and cryptographic token \u00a0\u00a0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/how-to-create-a-token\/#how_to_create_your_own_token\" >How to create your own token<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/how-to-create-a-token\/#how_to_create_a_cryptographic_token_step_by_step\" >How to create a cryptographic token step by step<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/how-to-create-a-token\/#create_a_token_with_metamask\" >Create a token with MetaMask<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 5<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span><p>If you are passionate about cryptocurrencies and blockchain technology, you will already be aware of all\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-a-token\/\">the tokens that have come on the market<\/a>\u00a0since the beginning of bitcoin until today.<\/p>\n<p>So much so that we can say with great satisfaction that, as of today,\u00a0<strong>there are almost 5,000 different tokens<\/strong>\u00a0on the market.<\/p>\n<p>If you didn\u2019t know, now you have found out. And it would also be good for you to know that there are several\u00a0<strong>kinds of tokens<\/strong>. The main ones are:<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"col small-12 large-12\">\n<div class=\"col-inner text-left\">\n<ol>\n<li>Governance tokens<\/li>\n<li>Platform tokens<\/li>\n<li><a href=\"https:\/\/www.bitnovo.com\/blog\/en\/security-token-and-utility-token-whats-the-difference\/\">Security tokens<\/a><\/li>\n<li>Transactional tokens<\/li>\n<li><a href=\"https:\/\/www.bitnovo.com\/blog\/en\/what-is-a-utility-token\/\">Utility tokens<\/a><\/li>\n<\/ol>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>If like me, you have wondered a thousand times\u00a0<strong>how to create a token and if it is too difficult<\/strong>\u00a0to launch your own digital currency in the crypto market, today I will have the pleasure to delve into the subject and perhaps help you launch what will be\u00a0<strong>the most popular token in modern history<\/strong>. Are you ready?<\/p>\n<\/div>\n<\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"col small-12 large-12\">\n<div class=\"col-inner\">\n<h2><span class=\"ez-toc-section\" id=\"difference_between_cryptocurrency_and_cryptographic_token\"><\/span><strong>Difference between cryptocurrency and cryptographic token \u00a0\u00a0<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<\/div>\n<\/div>\n<p>Before getting to the point, it is important for you to know that in the world of cryptocurrencies there are several types of crypto assets and there is more than one difference\u00a0<strong>between cryptocurrencies and crypto tokens<\/strong>. Let\u2019s see what they are.<\/p>\n<p><span data-text-color=\"primary\"><b>CRIPTOCURRENCIE<\/b><\/span>: First and foremost, cryptocurrencies are assets that\u00a0<strong>have their own blockchain<\/strong>\u00a0or transaction log. A key example is Bitcoin which has its own blockchain, protocol and token (BTC).<\/p>\n<p><span data-text-color=\"primary\"><b>TOKEN<\/b><\/span>: On the other hand, tokens\u00a0<strong>use another blockchain<\/strong>\u00a0instead of their own. A popular example is<strong>\u00a0ERC20 tokens that use the Ethereum (ETH) blockchain.<\/strong><\/p>\n<p>So\u00a0<strong>why are some assets tokens and not cryptocurrencies?<\/strong>\u00a0The answer is almost obvious\u2026 surely it is much easier to build on an existing platform than to build one from scratch.<\/p>\n<p>In other words, if you decide to create a cryptocurrency, you will have to do it by creating your own blockchain and this will take a lot of work, time and costs. On the other hand,\u00a0<strong>creating a token from scratch is much faster and easier<\/strong>\u00a0since it is created on an existing platform.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div class=\"col small-12 large-12\">\n<div class=\"col-inner\">\n<h2><span class=\"ez-toc-section\" id=\"how_to_create_your_own_token\"><\/span>How to create your own token<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"is-divider divider clearfix\"><\/div>\n<div id=\"image_298028412\" class=\"img has-hover x md-x lg-x y md-y lg-y\">\n<div class=\"img-inner dark\"><img fetchpriority=\"high\" decoding=\"async\" class=\"attachment-large size-large lazyloaded\" src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token.jpg\" sizes=\"(max-width: 768px) 100vw, 768px\" srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token-300x205.jpg 300w\" alt=\"Como crear un token Bitnovo\" width=\"768\" height=\"526\" data-srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token-300x205.jpg 300w\" data-src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/04\/Como-crear-un-token.jpg\" data-sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/div>\n<\/div>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>So, if you don\u2019t want to create your own blockchain, the most practical solution is to develop a token using an existing blockchain, such as Ethereum or Bitcoin.<\/p>\n<p>Before launching into the development of your token,<strong>\u00a0you will have to have a purpose, that is, your token will have to bring value to the crypto ecosystem<\/strong>\u00a0or it will be destined to fail. Along with this point, you will have to build a community that follows you and believes in your project\/purpose and, finally, you will have to have some technical knowledge to know and understand how your token has to work.<\/p>\n<p>Once you are clear on these points, you will need to decide on which platform to launch your token.\u00a0<strong>Most tokens come created on the Ethereum blockchain as ERC20<\/strong>\u00a0tokens, because Ethereum was the first to offer this service.<\/p>\n<p>Another popular platform that allows you to use its blockchain to create applications and tokens is\u00a0<strong>NEO, which uses the NEP-5 Standard token.\u00a0<\/strong><\/p>\n<p>The advantage of Ethereum is that it is the most popular platform for creating tokens and is trusted, whereas with NEO you can use a wide variety of programming languages, including C++ and Java, while Ethereum only allows you to create tokens using its own programming language: Solidity.<\/p>\n<p>In the following paragraphs we will show you how to create a token on the most popular platform for token creation: Ethereum.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h2><span class=\"ez-toc-section\" id=\"how_to_create_a_cryptographic_token_step_by_step\"><\/span>How to create a cryptographic token step by step<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<\/div>\n<\/div>\n<div class=\"col small-12 large-12\">\n<div class=\"col-inner\">\n<p>To create your token in Ethereum you will need to:<\/p>\n<ol>\n<li><b>Implementation of a new Smart Contract\u00a0<\/b><\/li>\n<\/ol>\n<p>Download the\u00a0<a href=\"https:\/\/github.com\/ethereum\/mist\/releases\">Ethereum wallet, Mist,<\/a>\u00a0which also allows you to mine or develop ERC20 tokens.<\/p>\n<p>Once you have downloaded and opened Mist,\u00a0<strong>fill it with ETH funds.<\/strong><\/p>\n<p>Go to the WALLETS tab, click on the \u201cCONTRACTS\u201d tab and then click on \u201cDeploy New Contract\u201d. Where it says \u201cSelect Contract to Deploy\u201d, click on the drop down menu and select \u201cMyToken\u201d.<\/p>\n<p>Enter this code in the Source code field of the Solidity contract that appears:<\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">contract MyToken {<\/span><\/p>\n<p class=\"thin-font\"><i>\/* This creates a matrix with all balances. *\/<\/i><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">mapping (address =&gt; uint256) public balanceOf;<\/span><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">}<\/span><\/p>\n<p>Where \u201cMapping\u201d links balances to addresses, which are in hexadecimal format (e.g. 0xab7c74abC0C4d48d1bdad5DCB26153FC8780f83E) and \u201cPublic\u201d means that anyone will be able to see the token balances of other addresses.<\/p>\n<ol start=\"2\">\n<li><b>Decide on the supply of your token<\/b><\/li>\n<\/ol>\n<p>After the code added above, you will need to add another line of code indicating the supply or limit of tokens you want to be created:<\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">function MyToken() {<\/span><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">balanceOf[msg.sender] = 2100000<\/span>;<\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">}<\/span><\/p>\n<p>The number that is underlined indicates that you want a token supply of 21 million, but you can change it and configure it as you wish.<\/p>\n<p><b>You now have a smart contract linked to your token.<\/b><\/p>\n<ol start=\"3\">\n<li><b>Enable the sending of your token<\/b><\/li>\n<\/ol>\n<p>Now you will have to configure the token so that it can be sent. So, add this code to the end of the Solidity Contract Source Code field:<\/p>\n<p class=\"thin-font\"><i>\/* Send coins *\/<\/i><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">function transfer(address _to, uint256 _value) {<\/span><\/p>\n<p class=\"thin-font\"><i>\/* Checks sender for balance and overflows *\/<\/i><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">require(balanceOf[msg.sender] &gt;= _value &amp;&amp; balanceOf[_to] + _value &gt;=<\/span><\/p>\n<p class=\"thin-font\"><span data-text-color=\"primary\">balanceOf[_to]);<\/span><\/p>\n<p class=\"thin-font\"><i>\/* Add and subtract new balances *\/<\/i><\/p>\n<p><span data-text-color=\"primary\">balanceOf[msg.sender] -= _value;<\/span><\/p>\n<p><span data-text-color=\"primary\">balanceOf[_to] += _value;<\/span><\/p>\n<p><span data-text-color=\"primary\">}<\/span><\/p>\n<p>This code allows you to send, add (to the receiving addresses) and subtract your tokens (from the sending addresses). In addition, to prevent users from sending more tokens than they have, a line of code is added to check if the sender has a balance and if there are overflows.<\/p>\n<ol start=\"4\">\n<li><b>Configure the name, symbol and decimal units of your token<\/b><\/li>\n<\/ol>\n<p>To change the name, symbol and decimal units of your token, add this code:<\/p>\n<p><i>\/* Initializes the contract with initial supply tokens for the contract creator. *\/<\/i><\/p>\n<p><span data-text-color=\"primary\">function MyToken(uint256 initialSupply, string tokenName, string tokenSymbol, uint8 decimalUnits) {<\/span><\/p>\n<p><span data-text-color=\"primary\">balanceOf[msg.sender] = initialSupply;<\/span><i>\u00a0\/\/ Gives the originator all initial tokens<\/i><\/p>\n<p><span data-text-color=\"primary\">name = tokenName;<\/span><i>\u00a0\/\/ Configures the name for display purposes<\/i><\/p>\n<p><span data-text-color=\"primary\">symbol = tokenSymbol;<\/span><i>\u00a0\/\/ Configures the symbol for display purposes<\/i><\/p>\n<p><span data-text-color=\"primary\">decimals = decimalUnits;\u00a0<\/span><i>\/\/ Number of decimal places for display purposes<\/i><\/p>\n<p><span data-text-color=\"primary\">}<\/span><\/p>\n<ol start=\"5\">\n<li><b>Create a token transfer event<\/b><\/li>\n<\/ol>\n<p>To let ETH wallets know when transfers of a token are made, add an event via the following code :<\/p>\n<p><span data-text-color=\"primary\">event Transfer(address indexed from, address indexed to, uint256 value);<\/span><\/p>\n<p>In addition, add the following code (the red text) to the transfer function in step 3 to notify you with a notification that the transfer took place:<\/p>\n<p>\/* Send coins *\/<\/p>\n<p><span data-text-color=\"primary\">function transfer(address _to, uint256 _value) {<\/span><\/p>\n<p>\/* Checks sender for balance and overflows *\/<\/p>\n<p><span data-text-color=\"primary\">require(balanceOf[msg.sender] &gt;= _value &amp;&amp; balanceOf[_to] + _value &gt;=<\/span><\/p>\n<p><span data-text-color=\"primary\">balanceOf[_to]);<\/span><\/p>\n<p>\/* Add and subtract new balances *\/<\/p>\n<p><span data-text-color=\"primary\">balanceOf[msg.sender] -= _value;<\/span><\/p>\n<p><span data-text-color=\"primary\">balanceOf[_to] += _value;<\/span><\/p>\n<p>\/* Notifies all listeners that this transfer was performed *\/<\/p>\n<p>Transfer(msg.sender, _to, _value);<\/p>\n<p><span data-text-color=\"primary\">}<\/span><\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>If you want to copy the full code to create an ERC20 token on the Ethereum platform,\u00a0<a href=\"https:\/\/github.com\/llSourcell\/simple_token\/blob\/master\/token.sol\">you can copy it from the Github page<\/a>\u00a0and save it in a text editor.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p><strong>6. Launch your token!<\/strong><\/p>\n<p>If you\u2019ve made it this far, you\u2019re in luck, you can now launch your ERC20 token!<\/p>\n<p>All you need to do is set up a fee to send your token contract transaction, and, once your token is active,\u00a0<strong>click on the Send tab in Mist<\/strong>\u00a0to send your token to whomever you want.<\/p>\n<div class=\"is-divider divider clearfix\"><\/div>\n<h3><span class=\"ez-toc-section\" id=\"create_a_token_with_metamask\"><\/span>Create a token with MetaMask<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"is-divider divider clearfix\"><\/div>\n<p>There is another option to implement and launch your new token and that is by using\u00a0<a href=\"https:\/\/metamask.io\/\">the MetaMask wallet<\/a>\u00a0instead of the Mist wallet.<\/p>\n<p>Once you have downloaded the MetaMask extension in your browser, you will have to put inside an amount of ETH, as we did with Mist, to pay for the deployment of the contract.<\/p>\n<p>In this case, you will have to copy the smart contract code that we placed earlier in the\u00a0\u00a0<a href=\"http:\/\/remix.ethereum.org\/\">Remix<\/a>\u00a0main window.<\/p>\n<p>Click the \u201cExecute\u201d tab, so that the Smart-Contract can be implemented on the Ethereum blockchain. The total number of tokens defined in the Smart Contract Code must be associated and maintained in the MetaMask Wallet.<\/p>\n<p>By clicking on \u201cDeploy\u201d, the Smart-Contract can be deployed. Once the transaction has been confirmed by the Ethereum Blockchain, the number of tokens issued should appear in MetaMask Wallet, ready to be sent to any ETH wallet.<\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 5<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>If you are passionate about cryptocurrencies and blockchain technology, you will already be aware of all\u00a0the tokens that have come on the market\u00a0since the beginning of bitcoin until today. So much so that we can say with great satisfaction that, as of today,\u00a0there are almost 5,000 different tokens\u00a0on the market. If you didn\u2019t know, now [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":7980,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[185],"tags":[],"class_list":["post-10369","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blockchain-en"],"_links":{"self":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10369","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/comments?post=10369"}],"version-history":[{"count":2,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10369\/revisions"}],"predecessor-version":[{"id":24665,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/10369\/revisions\/24665"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media\/7980"}],"wp:attachment":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media?parent=10369"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/categories?post=10369"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/tags?post=10369"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}