I am trying to figure out how the ICO crowdsale is usually done? I have a good understanding of the ERC20 Token and its standards. When a new token is created the owner is assigned all the tokens. I have looked at a couple of crowdsale contracts and saw the usage of transfer function and not transferFrom function.

  1. Does this mean all the tokens from the owner is transferred to the crowdsale contract and then distributed to all contributors?
  2. Why not keep the tokens in the owners' wallet and distribute them by allowing the crowsale contract to spend tokens from the owner's wallet (using the allowance in ERC20 Token)

What are the other differences in both the methods? Pros? Cons? Which is the right way to do? (If there is one)

1 Answer 1


Yes, usually the the tokens are owned by the crowdsale contract. It's feasible to have the crowdsale's "owner" hold the tokens and transfer from there (via an allowance), but participants would be right to trust that less, since the owner could revoke that allowance at any time and keep tokens that were meant to be sold.

Since the goal of using smart contracts is often to reduce the amount of trust required, this scheme seems counterproductive.

  • Thanks. I was thinking the same. But when I referred a few of the ICOs none of them mentioned about transferring the tokens to the crowdsale contract. Just couldn't assume it myself either. Dec 19, 2017 at 9:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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