SolStack

Upgradeable vs Immutable Programs

In Smart Contracts & Programs

Plain English

Upgradeable programs can be modified by their developers to fix bugs or add features, but this requires trust. Immutable programs cannot be changed once deployed - more trustless but cannot be improved. Different projects choose based on their needs.

Technical

Solana programs can be deployed as upgradeable (retain upgrade authority for modifications) or immutable (permanently frozen). Upgradeable programs enable bug fixes and feature additions but introduce governance risk and developer control. Immutable programs provide maximum trustlessness but cannot adapt to changing requirements or security fixes.