Kaspa smart contracts, explained. Where they actually run — and why the answer changed in 2026.

"Kaspa has no smart contracts" was true for years — and repeating it today marks you as out of date. Contracts now run in two places on Kaspa, built two very different ways. Here's the full stack, in plain language.
The short answer

Yes, Kaspa has smart contracts — in two layers. Since the Toccata hard fork on June 30, 2026, Kaspa's layer 1 runs native covenant contracts: programmable spending rules that live directly inside UTXOs, written in the high-level language Argent. And on top of layer 1, two EVM layer 2s — Kasplex and Igra — run full Ethereum-style contracts, with the live capital committed to them shown below.

Capital in Kaspa smart contracts · live
fetching from DefiLlama…
Kasplex L2 (zkEVM, live since 2025)
Igra L2 (EVM, live since 2026)
jun 30, 2026
native covenants activated on layer 1 (Toccata hard fork)
The layer-2 figures are fetched live from DefiLlama on every page load. Native layer-1 covenants hold spending rules, not pooled capital — which is exactly the point, as explained below.

The stack, from bottom to top

Kaspa's answer to smart contracts is unusual because it refuses the standard shortcut. Most chains bolt a single global virtual machine onto their base layer. Kaspa instead built three distinct levels, each with its own job:

Layer 1: covenants — contracts that live inside coins

Kaspa's base layer is a UTXO chain, like Bitcoin. A covenant is a programmable spending rule attached to a UTXO: the coin itself carries code plus a piece of state, committed on chain as a hash. Whoever wants to spend that coin must reveal the code and state, and the network verifies that the spend follows the rules. There is no global computer executing everyone's programs — each contract is a small, self-contained state machine partitioned across UTXOs, which is why covenant apps inherit layer 1's speed and parallelism instead of competing for one shared engine.

Argent: the language that makes covenants writable

Raw covenant scripting is unforgiving — one wrong byte and funds are stuck. Argent is the high-level language built to fix that: developers define actors (a contract plus the state it owns), entries (the operations you can call), and transition rules, and the compiler generates the underlying script. Two design choices matter for non-developers too. Every app is a closed system under one covenant ID — outside code cannot inject itself into an app's state machine. And the compiler is only needed at build time; creating transactions afterwards needs only a lightweight runtime, so tooling in other languages can drive the same apps. Core developer Michael Sutton documents the whole workflow in public live-coding sessions on the Kaspa Native channel — episode one builds a working ticketing app from scratch.

Layer 2: full EVM, familiar tooling

For everything that expects Ethereum — Solidity contracts, MetaMask, existing DeFi codebases — Kaspa has two EVM layer 2s that settle against layer 1: Kasplex, a zkEVM live since 2025, and Igra, live since 2026. This is where Kaspa's DeFi actually operates today, and where the TVL shown above lives. The trade-off is the standard one: EVM compatibility and rich tooling, in exchange for each L2's own performance and trust profile.

How this differs from Ethereum

The comparison everyone wants, done honestly:

EthereumKaspa L1 covenantsKaspa L2s
Modelone global virtual machinestate machines inside UTXOsEVM, per rollup
Where state livesglobal account treepartitioned across UTXOsthe L2's own state
LanguageSolidity and friendsArgentSolidity and friends
Runs existing ETH codenativelyno — different modelyes
Maturitysince 2015since june 2026since 2025–2026

Neither approach is free. Ethereum's global machine makes composability trivial and congestion structural. Kaspa's partitioned model keeps the base layer fast and parallel, but asks developers to learn a genuinely different way of building — which is why the tooling work around Argent matters as much as the protocol itself.

Three traps in reading "kaspa smart contracts"

1. The old answer still circulates

Years of "Kaspa is payments only, no smart contracts" left a deep imprint — you will still hear it from commentators and see it in older articles. It stopped being true on June 30, 2026. Anyone repeating it today is describing a chain that no longer exists; check the activation date, not the vibes.

2. "EVM on Kaspa" is not "Kaspa speed for EVM"

The layer 2s are their own systems. They inherit settlement from Kaspa's layer 1, but their throughput, latency and trust assumptions are their own. When you see EVM performance claims, ask which layer they describe — the honest answer is almost never "layer 1."

3. Young contracts are unaudited contracts

The first wave of covenant apps and L2 protocols is weeks-to-months old. Some launched anonymous, some unaudited, and the standard advice from Kaspa's own core contributors is blunt: know what you buy. A working demo is not a security review. The mechanism being sound says nothing about any individual app being safe.

What actually matters at this stage

Covenant activity
daily covenant transactions show whether apps are actually being used — we track the weekly count every monday
L2 capital direction
the live TVL above, read as a trend — whether builders and liquidity keep arriving matters more than the absolute size
Developer tooling
languages, templates and public teaching material lower the entry cost — the input that precedes every usage number
Audit status
until the first wave of apps is independently audited, position sizes should assume contract risk is real
We publish the covenant transaction count, the L2 split and what changed every Monday on the Kaspa Pulse dashboard — with a plain-language read, not just figures. Related: what TVL on Kaspa means and how merged mining works.
free · instant
get the Kaspa on-chain cheat sheet
the 8 numbers that actually matter (smart-contract activity is one of them) and how to read each one · plus the weekly pulse every monday
free · unsubscribe anytime · cheat sheet delivered after email confirmation
free · live alerts
the chain, watched for you
a bot checks the entity x wallet every 30 minutes, around the clock. the moment the whale moves, the alert fires. plus the monday numbers and a place to request the data you're missing.
join the kaspa pulse discord
one click, no email · alerts land in #alerts the second they fire