1. Home
  2. Quick Bites
  3. Programming Languages Securing Ethereum's Value

Programming Languages Securing Ethereum's Value

Analyzing the top 1,000 Ethereum contracts by Total Value Secured across smart contract languages and compiler versions.

Published 6 May 2026 by Lorenz Lehmann

Read on growthepie

Solidity and Vyper: Ethereum's Dominant Smart Contract Languages

Most value on Ethereum is held by smart contracts, making it critical that the programming languages used to build them are safe and secure. Two languages dominate: Solidity, a statically typed language with syntax influenced by JavaScript and C++ and Vyper, a Pythonic language designed for simplicity and auditability. The detection of the languages was made possible by a simple heuristic analysis of bytecode patterns (more in the methodology section).

In this analysis, we use Sourcify-verified contracts to identify the programming language of each contract. For contracts that aren't verified on Sourcify, we try identifying the language through heuristics on the bytecode. Otherwise we mark the contract language as 'unknown'.

The analysis focuses on the top 1,000 smart contracts on Ethereum by Total Value Secured (TVS) in each timeframe. TVS is calculated by tracking balances of a defined set of tokens, including native ETH. More on the methodology can be found at the end of this quick bite.

Top 1,000 Ethereum Contracts by TVS

The table below shows the latest snapshot of the top 1,000 Ethereum contracts ranked by TVS. Contracts verified through Sourcify show their compiler and version. Unknown contracts have no readable source code, therefor we also cannot infer the compiler via heuristics.

Solidity: Which Version Secures the Most Value?

Solidity has evolved significantly across major versions. Version 0.6 introduced breaking changes related to inheritance and error handling, while version 0.8 added built-in overflow protection, removing the need for SafeMath libraries. The version breakdown shows how much value is held in contracts compiled with older versus newer Solidity releases and how gradually the high-value contract landscape has migrated forward.

Solidity 0.6 carries a disproportionately large share of TVS relative to its share by contract count. This is because major protocols such as Uniswap V2, the Ethereum 2.0 deposit contract and early versions of Aave and Compound were written in this version and have not been replaced. In contrast, Solidity 0.8 dominates by contract count, reflecting that much of the newer contract surface area consists of smaller or more recently deployed protocols.

Vyper: A Leaner but Concentrated Footprint

Vyper's version history is simpler than Solidity's. Version 0.3 brought significant improvements to ABI encoding and gas efficiency. Version 0.4, released in 2024, introduced further security hardening including transient storage support. Curve Finance, which secures billions in stablecoin liquidity, is Vyper's most prominent adopter.

Vyper's TVS is highly concentrated in a small number of contracts. A few Curve pools and related infrastructure account for the majority of the TVS attributed to Vyper. This makes Vyper's TVS chart particularly sensitive to the status of those specific contracts.

This page is a data tracker for informational and educational purposes only. It is not investment advice. Data may be delayed or inaccurate. Do your own research.

Frequently asked questions

What is the Argot Collective?

The Argot Collective is a non-profit research and development organization dedicated to sustaining Ethereum's core programming languages and tooling. They maintain critical infrastructure including Solidity (the primary EVM smart contract language), Fe (a statically-typed EVM alternative), Sourcify (decentralized source-code verification), Hevm (a symbolic execution engine), Ethdebug and Act. Their mission is to make smart contract development simpler, safer and more resilient by providing a stable long-term home for these foundational projects.

Which tokens are tracked to get the TVS?

TVS is calculated by tracking token balances across the top 1,000 contracts. We use [L2beat's open source token mapping](https://github.com/l2beat/l2beat/blob/5a6b284dc52206affabfa1365f4d6a461d5d31b7/packages/config/src/tokens/tokens.jsonc) as our base, excluding a few tokens, for a total of {{argot_token_count}} tracked assets. The full list: {{argot_token_symbols}}

Where does the compiler and verification data come from?

Compiler attribution comes from two sources. The primary source is the [Open Labels Initiative](https://www.openlabelsinitiative.org/) label pool, a shared data lake where [Sourcify](https://sourcify.dev) has attested its verified smart contracts. We pull compiler and language labels directly from there. As a fallback, we also analyze contract bytecode. Solidity and Vyper each produce identifiable patterns in the compiled output, so even when no source code has been submitted for verification, we can often still determine the language by reading the CBOR metadata ([Solidity](https://docs.soliditylang.org/en/v0.8.34/metadata.html#encoding-of-the-metadata-hash-in-the-bytecode), [Vyper](https://github.com/vyperlang/vyper/pull/2860)). This means a contract can appear without a source link but still be attributed to Solidity or Vyper.

What about other chains?

Calculating these numbers is quite resource intensive. If you'd like to see this analysis extended to other chains, reach out to us on X or Discord, we're happy to have a conversation.

Topics discussed

  • Ethereum Mainnet
  • Argot
  • Sourcify
  • Open Labels Initiative