What is the difference between an ERC20 token deployed by Truffle vs Remix and Infura?


Newbie question here:

What is the difference between, for example, an ERC20 token deployed with remix, and an ERC20 token deployed with truffle through Infura? Infura is a paid system, I guess I don’t understand 100% what does it do…


1 Like

Hi @pmk,

The bytecode and the contract on-chain are the same whether deployed via Remix or Truffle. There is no difference in the functionality of the smart contract.

Alchemy and Infura have free and paid plans to connect to nodes on public networks. See: https://docs.openzeppelin.com/learn/connecting-to-public-test-networks#accessing-a-testnet-node

If you use MetaMask with Remix then you are using Infura to connect to the network.

When using Truffle or Hardhat we can use npm imports for OpenZeppelin Contracts.
When using Remix we can use GitHub imports for OpenZeppelin Contracts.

I use Remix for quick experiments with smart contracts and use Truffle or Hardhat when I want to write unit tests, use the console and deploy to public networks.


So for example, if I use Truffle to deploy 100 tokens, I need 100 infura keys and pay them lots of money.

If use MetaMask and Remix to deploy 100 tokens, I’m not paying Infura for this, who does then? MetaMask?

1 Like

Hi @pmk,

If you use Truffle to deploy, then you can use a free or a paid plan with Infura or Alchemy. I mostly don’t exceed the limits of a free plan for deploying contracts.

It depends on what you are doing on what the costs will be. Alternatively you can run your own nodes and be responsible for the running and maintenance.

If you use MetaMask and Remix, then this usage is covered by MetaMask. MetaMask, Infura and Truffle are all part of ConsenSys.

1 Like