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.| Parameter | Description |
|---|---|
| Token | The SPL token to lock. |
| Total amount | The total number of tokens to deposit into the escrow. |
| Recipient wallet | The wallet address that will be able to claim unlocked tokens. |
| Cliff date | The date at which the cliff amount becomes claimable. No tokens are accessible before this date. |
| Cliff unlock amount | The number of tokens that unlock at the cliff date. This is an absolute token amount, not a percentage. |
| Vesting duration | The total duration of the linear vesting phase, starting after the cliff date. |
| Vesting frequency | How often tokens unlock during the linear vesting phase. Options: minute, day, week, month, or year. |
| Recipient change permission | Who is allowed to change the lock recipient: creator, recipient, both, or none. |
| Cancel permission | Who is allowed to cancel the lock: creator, recipient, both, or none. |
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.
Unclaimed tokens remain in the escrow indefinitely. There is no expiration on the right to claim.
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.

