What I mean is, can I start a coin on the ethereum network and distribute the tokens when I want to a set list of addresses?


Yes you could do this, but you do need a smart contract to handle token logic and also for storage (like storing balances, total supply, etc.).

You could certainly distribute tokens whenever you wanted to whomever you wanted. There is no limit and your contract can do whatever you want as long as you've programmed it to do so.

If you wanted to create tokens for this person, you could do:

function mintToVip(uint _amount, address _vip) public {
    balances[_vip] += _amount;

You could also give the total supply of all the tokens to yourself initially then send them to whomever you wish by calling transfer normally:

transfer(_vip, _amount);

Note: the above assumes you are ERC20 compliant.


A token is usually expected to be a contract with ERC20 functionality from the standard.

But you can create a list of pre-ICO investors, and later assign them tokens when the contract is ready.


If we use the definition provided by the OED of "A voucher that can be exchanged for goods or services", then sort of.

In order for you to create a token on the Ethereum blockchain, you must have some way of accounting for how many tokens a particular user has; normally, this is accomplished by creating a contract that handles the accounting for the token.

In physical reality, you could put a special sticker on every US dollar bill (or your favourite currency) to turn it into a token for something else. For example, suppose your token was for a pizzeria. All dollar bills with your special sticker could be used as both 1USD OR to get a pizza (which, currently, is probably of greater value in the US).

Unfortunately, you can't attach metadata to individual ether. But you can still do something similar with Ethereum: you could send some number of ether to a particular address that serves as your "genesis address". Thus, being involved in a transaction that originates indirectly from the genesis address can serve as the special sticker. Furthermore, all users of your token would have to create new addresses that only ever receive Pizza Tokens. All ether that can be traced back to a transaction from your genesis address is now redeemable for a pizza. Thus, certain ethereum addresses are now functionally "Pizza Token-only" addresses. Because you're not using the smart contract standard, you'd have to write your own code to ensure that other users don't send ether to their "Pizza Token-only" accounts (thus messing up your accounting system -- you'd void those accounts unless the incoming ether were then sent to another address that you could blacklist as Pizza Token-only). Users would also have to be careful to not mix Pizza Token-only addresses and regular Ethereum addresses. They could run a non-standard wallet to do this. But this is why we have standards -- and the standard requires you to have a contract.

Another weird way of accomplishing this is by mining blocks on the main net and setting your mining node to only include Pizza token transactions. You can then look at the coinbase or the block's extraData to determine if the transactions involved are for Pizza tokens. This, of course, is a very expensive way of issuing tokens if you want to have fast confirmation times.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.