Contract Verification Checker

Is this contract's source code actually verified? See through proxies to their real implementation.

Bytecode is always public — source code isn’t

Every deployed contract’s compiled bytecode is visible on-chain by definition, but that’s dense and not human-readable. “Verified” means the original source code has been checked to actually compile to that exact bytecode, so what you can read really is what runs.

How this tool works

Reads Etherscan’s (and its family of chain-specific explorers, unified under Etherscan’s multichain API) source-code verification status for the address you enter, and separately detects whether it’s a proxy contract with a distinct implementation address.

Frequently asked questions

The deployer submitted the contract's source code and it compiled to bytecode matching exactly what's deployed on-chain — meaning what you see in the source is genuinely what's running. Unverified means only compiled bytecode is public; you can't easily read what the contract does.

A proxy contract's logic lives in a separate "implementation" contract it delegates calls to — the proxy's own code might look verified and simple, while the interesting (and potentially riskier) logic lives elsewhere, and can even be swapped out later by whoever controls the proxy. This tool surfaces the implementation address so you can check it too.

No — plenty of legitimate contracts are unverified, often just from a deployer skipping the extra step. But it does mean nobody outside the deployer can independently confirm what the contract actually does, which is a real reason for caution, especially for anything holding funds.