Vesting Model
Every lock created on Jupiter Lock follows a cliff + linear vesting model. The vesting schedule is defined at creation and cannot be changed afterward.- Cliff + Linear Vesting
- Simple Lock (Full Release at One Date)
This is the standard configuration. The vesting schedule has two phases:
- Cliff phase. No tokens are available until the cliff date. On that date, a predefined amount (the cliff unlock amount) becomes claimable immediately.
- Linear vesting phase. After the cliff, the remaining tokens unlock gradually over the defined vesting duration, at a set frequency (minute, day, week, month, or year).
There is no minimum or maximum for lock duration or token amount.
Lock Parameters
When creating a lock, the following parameters are defined. All parameters except permissions are permanent once the lock is created.
Each lock has exactly one recipient. To distribute tokens to multiple wallets, create one lock per recipient.
Permissions
At creation, the lock creator assigns two permissions: Who can change the recipient. This determines which party (creator, recipient, both, or none) can reassign the lock to a different wallet after creation. Who can cancel the lock. This determines which party (creator, recipient, both, or none) can cancel the lock entirely. These permissions are set once and cannot be changed after the lock is created.If both permissions are set to “none,” the lock becomes fully irreversible: it cannot be cancelled and the recipient cannot be changed.
Claiming Tokens
Unlocked tokens are not sent automatically. The recipient must manually claim them through the Jupiter Lock interface.1
Connect wallet
The recipient connects the wallet specified in the lock.
2
View available tokens
The interface shows how many tokens have vested and are available to claim.
3
Claim
The recipient triggers a claim transaction. Claimed tokens are transferred from the escrow to the recipient’s wallet.
Token Compatibility
Jupiter Lock supports SPL tokens on Solana.Onchain Mechanics
When a lock is created, an escrow account is deployed onchain. The locked tokens are transferred from the creator’s wallet to this escrow account. The escrow is controlled by the Jupiter Lock program. Tokens remain in the escrow until claimed by the recipient according to the vesting schedule.The Jupiter Lock program is upgradeable. Due to the sensitive nature of the program, updates are only made when critical. The program is open-source and has been audited by OtterSec and Sec3.

