Streamflow: NFT Lock — hold a Metaplex NFT until a date you can prove
Streamflow NFT Lock locks a Metaplex-native NFT until an unlock date, with optional cancel and recipient-change permissions. App flow, constraints (frozen NFTs), and how it fits next to fungible token locks and SDKs.
devrels.xyz/a/183short linkStreamflow: NFT Lock — hold a Metaplex NFT until a date you can prove. Not a marketplace listing freeze. Not a vague “trust me.” A Streamflow lock that takes the NFT out of free circulation until unlock, then lets a designated wallet claim it.
Official guide: NFTs Lock. App: app.streamflow.finance. Docs home: docs.streamflow.finance. X: @streamflow_fi. Broader protocol map: Streamflow programs for vesting, locks, and airdrops.
What problem it solves
Fungible locks and vesting are table stakes on Solana. Collectibles needed the same story: prove you will not list or flip a specific NFT for N days — founder PFP, community badge, partner 1/1, prize that unlocks after an event.
Streamflow’s NFT Lock does exactly that for Metaplex-native NFTs: the NFT leaves free wallet control into the lock until the unlock timestamp; then the recipient wallet can claim it. Recipient can be you (skin in the game) or someone else (timed gift / delayed delivery).
Prerequisites
- NFT sits in the connected wallet you use to create the lock.
- A recipient address for unlock (self or other).
- NFT is not frozen. Frozen assets (marketplace listings, other protocols) will not show in search or will fail the lock — unfreeze first.
App flow (create)
- Open the Streamflow app → Locks in the left sidebar.
- On the NFTs section, click Create new.
- Choose the NFT type (Metaplex-native path as documented).
- In the NFT field, search by name and select from the connected wallet.
- Set Unlock date (date + time). After this instant, the NFT becomes claimable by the recipient.
- Set the recipient wallet:
- Leave Use connected wallet on to return the NFT to yourself at unlock.
- Turn it off to paste another address or pick from the address book (timed transfer / gift).
- Optional permissions (both default off):
- Allow cancellation — early return of the NFT to you before unlock. Off = irreversible until unlock.
- Allow recipient change — update who receives the NFT while locked. Off = recipient fixed at creation.
- Continue — the lock appears under the NFTs lock section.
Defaults (hard commitment)
allow_cancellation = false
allow_recipient_change = false
After create
NFT held until unlock_date
then claimable by recipient_wallet
If frozen / listed elsewhere
unfreeze first — else missing from search or lock failsAfter lock
- NFT is held for the full duration when cancel is off — no early return.
- Recipient is fixed when recipient-change is off.
- At unlock, the recipient claims the NFT (not necessarily the creator).
That split — creator locks, recipient claims — is the useful product shape for gifts, prizes, and “founder holds until TGE+90d” style optics.
How it sits next to other Streamflow locks
| Product | Asset | Release shape |
|---|---|---|
| Token Lock | Fungible SPL / Token-2022 | Cliff-style: locked until date, then available |
| LP lock / Quicklock | LP positions / fast path | Same lock family; LP-specific UX |
| NFT Lock | Metaplex NFT (1 unit) | Cliff to unlock; claim by recipient |
| Vesting | Fungible | Schedule / progressive unlock |
Vesting still does not replace NFT Lock: progressive release of a single NFT is not the model — it is a date-gated custody transfer of one asset.
Builder notes
- Standard — docs specify Metaplex-native NFTs. Do not assume compressed cNFTs or arbitrary Token-2022 “NFT-like” mints work without checking the live type picker.
- Composable product, not a new L1 primitive — for custom program UX (in-game locks, stake-to-lock NFTs), you may still want Metaplex + your program. Streamflow wins when you want audited app + transparency rails without shipping escrow yourself.
- SDK — Streamflow’s public JS/Rust SDKs are centered on streams, vesting, distributor, staking (JS SDK, js-sdk monorepo). Treat NFT Lock as an app-first surface unless/until NFT lock helpers land in the packages you pin — verify against current SDK docs before promising API parity in a client integration.
- Optics — pair with Streamflow Token Dashboard / Universal Search culture: public, verifiable time-locks beat screenshot promises.
When to use it
- Founder/team PFP or brand NFT held through a milestone date
- Community prize that unlocks after an event ends
- Partner 1/1 delivery with a delayed claim wallet
- “Will not list until …” commitment without relying on marketplace UI alone
Skip it when you need staking yield on the NFT, fractional ownership, rental, or cNFT tree batch ops — different product categories.
Quick checklist
- Unfreeze / delist the NFT.
- Connect the wallet that holds it.
- Locks → NFT Create new → type → select → unlock time → recipient.
- Leave permissions off unless you explicitly want an escape hatch.
- Share the lock / dashboard link if transparency is the point.
- At unlock, claim from the recipient wallet.
Resources
- NFTs Lock (docs)
- Token Lock · Create a Token Lock · Quicklock
- Streamflow app
- docs llms.txt
- Streamflow: programs for vesting, locks, and airdrops
- Streamflow on DevRels
Bottom line
Streamflow NFT Lock is the collectible version of their cliff lock: Metaplex NFT in, time gate, recipient claims out. Defaults are hard-commit; flip cancel or recipient-change only when the product needs an escape hatch. Frozen assets fail — clear marketplace state first. Use the app today for transparent holds; confirm SDK coverage before you wire NFT locks into backend automation.
Keep reading
Streamflow turns token ops into on-chain programs — vesting, locks, aligned unlocks, and merkle airdrops — with @streamflow/stream and the distributor SDK.
Collector Crypt has a marketplace program (non-custodial, delegation-based), a gacha program with RFC 9381 VRF for provably fair pack opens, and a shipping API for physical card vault operations. API partnerships are rolling out. Here's what's available to build on today.
Fake World Assets (FWA.fun) is a reference design for fair NFT allocation — deposit, inverse weights, VRF draw, keep or bid — and how to rebuild it on Solana.
Get new articles in your inbox
Technical deep-dives on Solana tooling, infrastructure, and ecosystem. No noise.
