Does every Kaspa transaction output require a covenant?

No — covenant validation only applies to outputs that explicitly include one. Kaspa's KIP-0020 defines two paths for each transaction output: if the covenant field is absent, the node skips covenant validation entirely for that output; if a covenant is present, two rules must be satisfied — the authorizing input must point to a real input within the same transaction, and the transaction must use version 1 or higher. This matters for beginners because it means ordinary Kaspa transfers are unaffected by covenant rules, keeping the system backward-compatible while still allowing more advanced programmable outputs when needed.

Learn more ›