LUKSO LSP4 Digital Asset Metadata Standard
LSP·4 · Metadata
Standard ERC-725Y keys for digital asset metadata — collection name, symbol, JSON schema.
// Well-known ERC-725Y keys read via getData(bytes32):
// LSP4TokenName → string
// LSP4TokenSymbol → string
// LSP4TokenType → 0=Token, 1=NFT, 2=Collection
// LSP4Metadata → VerifiableURI or JSON pointer
// LSP4Creators[] → contributing creators
LSP4 is the asset-side equivalent of LSP3 (which does the profile side). Both define ERC-725Y
keys; both rely on the asset contract being ERC-725Y-aware (every LSP7 and LSP8 is). The
practical implication: read LSP4Metadata and get a typed result; read tokenURI and get a
string you have to fetch, parse, and decide whether to trust.
The LSP4TokenType key is the small detail that pays off later — wallets can tell at a glance
whether the asset is a fungible token, an NFT, or a multi-token collection. No more decoding
token-id bit ranges to find out.
What it solves.
- ERC-721 dynamic metadata (tokenURI trap)
- ERC-20 metadata limited to name/symbol/decimals
What it does not solve.
Anti-overselling is a feature.
- LSP4 doesn't host your media. That's still IPFS / Arweave / your CDN.
- It doesn't make off-chain JSON trustworthy by itself — pair with VerifiableURI.
Companions.
Standards this composes with.