I am aware of the "find similar contract" function on etherscan.io; however, it seems to only print out the top 500 identical contracts, with the time ascending order.

For instance, https://etherscan.io/find-similiar-contracts?a=0xde815ffa64c918b373d93bcb6da567a0f8134dcd&lvl=5 query could give me the top 500 matched contracts with time ascending order. But the problem is that it always start from the earliest contract, which means even if I use the most recent contract within the top 500 to re-query, it still shows the same thing.

So here is my question, how should I find all the identical contract, given the EVM bytecode of an online contract? Thanks.

1 Answer 1


The hard way to do this is to 1- install a client, 2- retrieve the chain and extract the contracts, 3- store EVM code in a map and see how many addresses are using the exact same contract code.

Steps 1+2 can be a pain. But you can circumvent them very easily by working on processed chain data. Google, for instance, recently made available Ethereum mainnet data on a publicly available GCE BigTable. You can download all contract code if you need to, with metadata and json-formatted, in a matter of minutes. You can also run BigQueries without even having to download and parse anything.

Link to get you started: https://cloud.google.com/blog/products/data-analytics/ethereum-bigquery-public-dataset-smart-contract-analytics

  • Thank you Alex! I think that is something I am looking for. Dec 30, 2018 at 20:46
  • @lllllllllllll may you share the query you wrote ? Aug 22, 2021 at 13:43

Your Answer

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

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