What is Inline ZK in Kaspa, and when should developers use it?

Inline ZK is a Kaspa programmability option where each user action computes its own result and proof locally, then submits an execution proof to Kaspa for verification. Unlike shared-state applications, actions settle independently — meaning each operation stands on its own rather than being bundled with others. It is the most demanding option for developers, who must take full responsibility for proof design, prover architecture, and operational infrastructure; the documentation recommends considering Based Apps and Covenants before reaching for Inline ZK. It is a strong fit when you need privacy-preserving actions, proof-verified workflows, custom account models, or want to minimize the amount of computation that happens on-chain while still having Kaspa verify the results.

Learn more ›