Use Authority Record
A tiny delegate record that lets an address other than the NFT owner consume "uses" on a usable NFT, with its own quota. The permission slip behind redeemable/consumable NFTs.
What it is
A Use Authority Record delegates the ability to consume “uses” on a usable NFT to an address other than the owner, capped by its own allowed_uses quota. It’s the permission slip behind redeemable NFTs — concert tickets, in-game consumables, coupon-style assets that get “used up.”
Why it exists
The Metaplex Uses feature lets an NFT carry a finite number of uses (a 5-use pass, a single-redemption ticket). Often a third party — a venue scanner, a game server — needs to consume a use without being the NFT’s owner. This record delegates that power with its own per-delegate limit, so the owner can authorize a scanner to burn at most N uses.
Byte layout
UseAuthorityRecord is Borsh-encoded. It’s a PDA seeded with the NFT mint and the delegated authority.
| Offset | Length | Field | Type | Notes |
|---|---|---|---|---|
| 0 | 1 | key |
u8 enum |
8 = UseAuthorityRecord. |
| 1 | 8 | allowed_uses |
u64 LE |
How many uses this delegate may consume. |
| 9 | 1 | bump |
u8 |
Canonical bump of this record’s PDA. |
Total: 10 bytes.
The Uses field it draws against
The NFT’s own metadata carries an optional Uses { use_method, remaining, total } struct — the global counter. A Use Authority Record is a delegate-scoped allowance that draws against that global remaining. Consuming a use decrements both the delegate’s allowed_uses and the NFT’s remaining.
Where you see it
Redeemable NFT systems: event ticketing, loyalty redemptions, game item consumption. The record exists whenever an NFT owner has delegated use-consumption to a service.
Common gotchas
- Two counters, both decrement. The delegate’s
allowed_usesand the NFT’s globalUses.remainingare separate; a use consumes from both. A delegate can’t exceed itsallowed_useseven if the NFT has uses left. - Smallest Metaplex record at 10 bytes. No
Optionfields — just key, a u64, and a bump. Quick to decode. use_methodmatters for semantics. The NFT’sUses.use_method(Burn, Multiple, Single) determines what happens at zero remaining — Burn destroys the NFT. The record itself only tracks the allowance.- Revocable by the owner. Closing the record revokes the delegate’s remaining allowance immediately.
Last verified: 2026-05-20