I always see posts popping up discussing this, I’ve been deploying tokens and playing around with Solidity for a good while so I figured I’d make a thread to even out some of the facts and myths about flashing.
First off, a lot of people tend to confuse 2 things, flashing & cloning/forking.
Flashing in general, from a development perspective, is simply making a function call (usually a TransferFrom function, if non-OnlyOwner) on an already existing (IERC20 protocol) contract. It essentially means you’re sending out tokens, without actually holding them. The receiver of these tokens however sees within their wallet the same icon/price as if he’s receiving balance. You don’t need to “add liquidity” or whatever, because the liq pairs are (usually) already present with the original token contract.
How it works is every IERC20 needs to have a non-OnlyOwner/(0)Owner TransferFrom function for it to be interact-able by users trying to send the token, because even simply sending a token is an interaction with the token’s smart contract (you can check your own txhash after creating a transaction to see which function your wallet interacted with). With flashing you basically manipulate the TransferFrom function into creating a transaction without your wallet actually holding the tokens balance, you do this by create a low-GWEI tx.
Forking/cloning is a whole different side of the spectrum, you’re basically recreating an already existing token, redeploying it and giving it the same logo & price as the one you’re mimicking. Logo can be set through explorer APIs, but they won’t allow an exact clone so you need to slightly alter it (they approve stuff algorithmicly so it’s pretty easy to circumvent, if you play around with it). Price is pegged by creating a liq pair using the chain’s DEX (ex; UniSwap for ERC20s) & playing around with marketcap, simple maths.
You can quite easily fork/clone pretty much any token by navigating to their explorer page (by looking up their CA), if their source code is verified on chain, and not behind a proxy-sc, you can simply copy the source code from the explorer page. Make sure to alter a couple constructor lines (or useless imports) to make sure your contract doesn’t get the “similar match” tag after deploying.
The main difference between the 2 is flashing is visible in wallets without needing to ad a custom CA, since it’s recognized as an already established token, forks/clones usually are not - but they have their own use cases, so one isn’t necessarily better or worse than the other.
Hoping this was helpfull in answering some questions/doubts.
Cryptocurrency
Crypto (USDT) flashing fundamentals from a solidity perspective.
Started by Randy_Marsh · Jul 13, 2026