Transaction Simulation: Which Wallets Have It
The single most valuable safety feature in a wallet. What it catches, how implementations differ, and why we now treat it as a requirement.
Transaction simulation runs a transaction before you sign it and shows what would happen to your balances. We now consider it the most important feature in a software wallet.
What it catches
Malicious contracts requesting more than they claim. The interface says you are minting something for a small fee; the simulation shows your tokens leaving.
Approvals disguised as other operations. The request is labelled as a claim and is actually an unlimited allowance.
Swaps returning far less than quoted. Visible before signing rather than after.
Compromised front ends. The domain is correct, the contract is not, and the simulation shows funds going somewhere unexpected.
That last category is the one that nothing else catches. Domain checks pass, reputation checks pass, and the only signal is what the transaction actually does.
How implementations differ
Depth. Some show balance changes only. Better ones show which contracts are called and flag unlimited approvals specifically.
Coverage. Simulation on some networks and not others.
Signature requests. The important difference. A wallet that simulates transactions but shows message signatures as an undecoded blob leaves the largest gap open, because signature phishing carries identical authority with less friction.
Failure handling. What happens when simulation cannot complete. Some warn clearly; some proceed silently, which is worse than not having it.
What we test
We construct requests that look benign and do something else, and check what each wallet displays.
The test we care about most is an unlimited approval presented as a routine interaction. A wallet that shows it identically to a transfer has failed the most consequential case.
The limitation
Simulation predicts the outcome under current conditions. A contract can behave differently when actually executed, particularly where its behaviour depends on the caller or on state that changes.
It is a strong check rather than a guarantee, and it is dramatically better than nothing.
The recommendation
If your wallet offers it, ensure it is enabled. If it does not, that is a reason to consider one that does, ahead of any other feature difference.
Combined with a separate wallet for connecting to sites, holding a small balance, it covers the two largest categories of loss we write about.
The working balance we keep at venues supporting external addresses is outside this entirely, because there is no signature to simulate, which is a real advantage of the custodial tier for money you are actively moving.
Products covered here are bought at full retail price and used for real transactions before anything is written. There are no affiliate links on this site, no sponsored placements and no review units. If that ever changes, it will be disclosed at the top of the article.