What is a dynamic NFT?
A dynamic NFT (dNFT) is a non-fungible token whose state or metadata can change over time based on predefined rules, smart contract logic, or connected application data. A conventional NFT often has a fixed token ID and metadata describing attributes such as its name, image, rarity, or characteristics, while a dynamic NFT keeps its unique blockchain identity and allows some of those attributes to update over time.
One token could represent a game character whose level rises as the player progresses, a sports collectible that changes when an athlete reaches a milestone, or a membership NFT that unlocks new benefits based on user activity. The key distinction is that the NFT does not need to be replaced every time its state changes. Its existing token can continue to represent the asset while its associated information evolves.
How do dynamic NFTs work?
Dynamic NFTs combine an NFT smart contract with conditions, data, and update logic that determine when and how the token changes. A trigger occurs, the relevant on-chain or off-chain data is evaluated, and the NFT state or metadata is updated before wallets or marketplaces display the new version. A common flow:

1. The NFT is minted
The token is created on a blockchain using an NFT standard such as ERC-721 or ERC-1155. Like a static NFT, it receives a unique blockchain identity and is associated with metadata describing the asset. These standards provide token and metadata interfaces, but dynamic behavior must be implemented separately through contract logic, metadata architecture, or connected systems.
2. A trigger occurs
A dynamic NFT needs a condition that determines when something should change. The trigger could come from another blockchain transaction, a player’s game progress, a sports result, a price movement, a specific date, user activity, weather data, or a random event.
When the relevant information already exists on-chain, the smart contract may be able to read it directly. When the trigger depends on data outside the blockchain, an external data-delivery mechanism is usually required.
3. External data can be brought on-chain
Blockchains cannot normally retrieve arbitrary real-world data by themselves, so an oracle can be used when the NFT depends on sports statistics, weather, market prices, or another external system. Oracle networks such as Chainlink are one way to connect smart contracts with off-chain data, but they are not required for every dynamic NFT.
A dNFT triggered entirely by on-chain activity may not need an external oracle at all. The architecture should depend on where the relevant data originates rather than treating one oracle provider as a mandatory part of every implementation.
4. Smart contract logic evaluates the data
The contract defines what should happen when certain conditions are met. For example, it might update a game character from Bronze Armor to Silver Armor after Level 20, or change a sports collectible after a player reaches a predefined milestone.
The rules can range from simple thresholds to combinations of multiple events and data sources. Clear update logic is important because it determines what can change, who or what can trigger the change, and whether users can anticipate the asset’s possible states.
5. The NFT state is updated
Once the condition is satisfied, the contract or connected system updates the relevant state. The update may involve changing the token URI, metadata attributes, artwork, utility, access permissions, or values stored directly on-chain while the NFT keeps the same blockchain identity.
Stattic vs dynamic NFTs
The biggest difference between static and dynamic NFTs is whether their state is expected to change after minting. Static NFTs work well when the represented asset should remain fixed, while dynamic NFTs are more suitable when the asset’s current state is part of its value or utility.
| Factor | Static NFT | Dynamic NFT |
|---|---|---|
| Token identity | Remains fixed | Remains fixed |
| Metadata | Usually fixed | Can change |
| Trigger required | No | Usually yes |
| External data | Usually unnecessary | May use external data |
| Oracle dependency | Rare | Possible when off-chain data is required |
| Typical use cases | Art, collectibles, certificates | Games, sports, RWA, membership, evolving assets |
| Marketplace handling | Basic metadata display | May require metadata refresh and updated indexing |
What can trigger a dynamic NFT?
Dynamic NFTs do not all evolve in the same way because their behavior depends on what information the contract is designed to respond to. The most common trigger categories include on-chain activity, external data, user behavior, game progress, time, and randomness.
On-chain activity
A trigger can come directly from blockchain activity such as transactions, token ownership, NFT transfers, staking, DAO participation, or another smart contract’s state. The information already exists on-chain, so an external oracle may not be necessary.
On-chain data
Real-world information such as sports statistics, financial prices, weather, IoT sensor data, or external application data can also trigger an update. An oracle or another trusted data-delivery mechanism is typically needed to make the information available to the smart contract.
User behavior
The NFT can also respond to what its owner does. A membership token, for example, might gain new traits after a user reaches a loyalty threshold, attends multiple events, completes certain activities, or participates in a community over time.
Game progress
Games provide one of the clearest uses for dynamic NFTs because characters, equipment, and achievements naturally evolve. A character could level up as the player gains experience, while weapons could acquire new attributes through repeated use or specific in-game achievements.
Time
Changes can happen at predefined dates or intervals. An NFT might reveal content gradually, expire after a certain period, change with a season, or unlock new utility on an anniversary.
Randomness
Some applications require unpredictable but verifiable changes, such as item rarity, loot attributes, character traits, or reward distribution. Verifiable randomness can help make those outcomes harder for a project operator or participant to manipulate.
Dynamic NFT use cases
The ability to update an NFT expands its role beyond a fixed collectible. Dynamic NFTs are most useful when the represented asset has a state that changes over time and that changing state matters to ownership, utility, or value.
Gaming
Gaming is one of the most natural applications because game assets rarely remain static. A dynamic NFT character could update its level, skills, equipment, achievements, or appearance as the player progresses, while weapons or vehicles could gain traits based on use and performance.
A gaming NFT marketplace may need to display not only who owns an asset but also its current game state, rarity, progression, and utility. The challenge is making sure ownership mechanics support gameplay instead of overwhelming it, especially when dynamic traits affect scarcity and economic value.
Sports collectibles
Sports are another strong use case because player and team data change continuously. An NFT representing an athlete can update based on points scored, wins, assists, rankings, tournament progress, awards, or season milestones.
The collectible becomes tied to an unfolding real-world event rather than permanently capturing one moment, which can increase engagement but also increases dependence on accurate and timely external data.
Real-world assets
In tokenized RWA applications, a dynamic NFT could reflect changes in the underlying asset, such as valuation, maintenance status, certification, utilization, or condition. Dynamic metadata can help keep the digital representation closer to the current real-world state.
The quality of the NFT still depends on the reliability of the source feeding that information. For a look at how real estate and other real-world assets are being tokenized, see our real estate NFT marketplace guide. Putting inaccurate data into a smart contract does not make the information trustworthy simply because it appears on-chain.
Membership and loyalty
Dynamic NFTs can also act as evolving membership credentials. Instead of issuing a new token every time a user reaches another tier, one NFT could progress from Bronze to Silver, Gold, or VIP based on purchases, participation, event attendance, referrals, or other activity.
Benefits can evolve at the same time, allowing the NFT to function as both a digital identity and a programmable loyalty asset. A cleaner ownership history results from keeping the same token rather than replacing it whenever the membership state changes.
Art and media
Artists can create NFTs whose visuals evolve according to time, location, seasons, weather, blockchain events, collector activity, or external cultural events. The artwork becomes a changing experience rather than a permanently fixed file.
The same model can support gradual reveals, interactive storytelling, or media that changes as its ownership history develops. In these cases, the changing state becomes part of the creative concept rather than only a technical feature.
Real-world dynamic NFT examples
NBA The Association
The NBA and NBPA used dynamic NFTs for The Association, a collection connected to the 2022 NBA Playoffs. Each NFT represented a player and could visually evolve when predefined on-court milestones were reached, with real NBA performance data delivered on-chain through Chainlink oracles. The collection included 30,000 NFTs, showing how dynamic metadata can operate across a relatively large collection rather than only one experimental asset.
LaMelo Ball Collectibles
LaMelo Ball’s collection tracked parts of his real-world performance, including points, assists, steals, rebounds, and blocks, while the Gold Evolve NFT was programmed to transform if Ball won NBA Rookie of the Year. He won the award in 2021, triggering the artwork change and demonstrating how external statistics can affect more than a simple data field. They can also trigger new visuals, rewards, access, or other token functionality.
How dynamic NFTs works in NFT marketplaces
Dynamic NFTs create additional requirements for NFT marketplaces because the asset displayed today may not have the same attributes tomorrow. A marketplace built only around static metadata can display outdated information even when the underlying NFT is functioning correctly.

Metadata must be refreshed
Marketplaces commonly index NFT metadata so users do not need to query every blockchain contract in real time. For static assets, the indexed data may rarely change, while dynamic NFTs require the marketplace or its indexer to recognize when metadata has been updated and retrieve the new state.
Without an effective refresh mechanism, the smart contract and marketplace UI can show different versions of the same NFT. Metadata-update events and indexing behavior become part of the marketplace architecture rather than only a token-level concern. For ERC-721 collections, ERC-4906 standardizes MetadataUpdate and BatchMetadataUpdate events so marketplaces and other applications can detect when token metadata should be refreshed.
Search and filters need updated traits
Marketplace filters often rely on NFT attributes such as level, rarity, class, equipment, status, or collection traits. When those properties are dynamic, marketplace indexes also need to change so search results remain accurate.
If a game character evolves from Level 10 to Level 20 but the marketplace still indexes it as Level 10, searches and filters become misleading. Metadata indexing and refresh behavior is therefore an important consideration when defining NFT marketplace features.
Changing traits can affect rarity and market value
Dynamic traits can affect how buyers evaluate an asset because rarity and utility may no longer be determined entirely at mint. A rare game weapon may become more powerful, a sports collectible could unlock a new trait after an athlete reaches a milestone, or a membership NFT could move into a higher access tier.
Marketplaces may therefore need to distinguish between original traits, current traits, historical changes, and attributes that can still change again. For buyers, understanding that state becomes part of evaluating the NFT rather than simply checking a static rarity score.
Marketplace support does not control the NFT
A dynamic NFT can exist independently of a particular marketplace, but the frontend still needs a way to retrieve and display the asset’s latest state. Even on a decentralized NFT marketplace, asset ownership and marketplace compatibility remain separate concerns.
An NFT can update correctly at the contract level while a particular marketplace is slow to recognize or render the change. Asset decentralization does not automatically guarantee consistent display across every trading interface.
Gaming marketplaces have additional complexity
Gaming assets can change much more frequently than conventional collectibles because a character might level up repeatedly, change equipment, gain achievements, or acquire new attributes. When every update affects marketplace discovery and valuation, the indexing architecture needs to support a much more active stream of metadata changes.
Projects planning this type of marketplace should account for dynamic assets during architecture design rather than trying to add support after launch. See our guide to building an NFT marketplace for the wider development process.
How dynamic NFTs are built
There is no single architecture for a dynamic NFT because the right design depends on what needs to change, where the data comes from, and how decentralized the update mechanism needs to be. A practical build process starts with the token state and ends with testing how wallets, indexers, and marketplaces respond to changes.
1. Define what can change
Start by identifying which properties should remain permanent and which are allowed to evolve. For example, the token ID and contract address stay fixed while the level, image, status, or equipment can change.
Keeping this distinction clear reduces unnecessary contract complexity and gives users a clearer understanding of the asset. It also helps developers decide which information needs to live on-chain and which can remain in metadata or an application layer.
2. Choose the NFT standard and metadata architecture
ERC-721 and ERC-1155 are common choices for Ethereum-compatible ecosystems, but the token standard is only one part of the design. Developers also need to decide where metadata lives and how updates will be represented.
Options include off-chain metadata referenced by a token URI, IPFS-hosted metadata, partially on-chain state, or fully on-chain metadata and graphics. Each option creates different trade-offs around cost, flexibility, availability, and decentralization. Because IPFS is content-addressed, changing metadata usually creates a new CID, so the project needs a mechanism to point the NFT to the updated metadata.
3. Define the triggers
The update conditions should be explicit enough for both developers and users to understand. A trigger might be a player reaching Level 20, an athlete passing a performance threshold, an NFT being held for a year, or an asset price moving beyond a defined level.
Predictable trigger rules make it easier to test edge cases and explain what can happen to the token. They also reduce disputes when a state change affects rarity, access, or market value.
4. Connect external data when necessary
When the required information exists outside the blockchain, developers need a reliable way to deliver it on-chain. Oracle infrastructure such as Chainlink can provide data feeds, API connectivity, automation, or verifiable randomness for these scenarios. Not every dynamic NFT needs this layer. On-chain events can trigger updates directly when the required state already exists on the blockchain.
5. Implment update logic
Smart contracts or connected application logic determine how the NFT responds once the trigger is confirmed. Security is particularly important because the update mechanism effectively determines who or what can change the NFT.
Permissions, admin controls, oracle inputs, and upgrade mechanisms should be reviewed carefully. A flexible update system is useful only when users can trust the rules governing those changes.
6. Test marketplace compatibility
Development should not stop once minting and update logic work correctly. Teams also need to confirm that wallets show the correct state, marketplaces refresh metadata, trait filters update properly, media renders correctly, and contract events can be indexed.
A dynamic NFT that works technically but appears incorrectly on the platforms where users trade it still creates a poor user experience. Marketplace compatibility should be tested as part of the product rather than treated as a post-launch detail.
For a full breakdown of how dynamic NFT development affects overall project scope and budget, see our NFT marketplace development cost guide.
Risks and limitations of dynamic NFTs
More programmable assets introduce more dependencies, which means dynamic NFTs can fail in ways static NFTs do not. The main risks usually come from data quality, permissions, contract complexity, metadata availability, marketplace support, and the cost of repeated updates.
Oracle risk
When an NFT depends on external information, incorrect or unavailable data can produce an incorrect state. The smart contract can execute perfectly and still produce the wrong result if its input is wrong.
Data-source centralization
Using blockchain does not automatically make the entire system decentralized. When one company-controlled API determines the data used to update the NFT, that source becomes a centralized dependency.
Projects need to decide how much trust in external data is acceptable for their use case. Critical applications may require stronger redundancy or validation than entertainment-focused collectibles.
Smart contract vulnerabilities
Additional update logic can create a larger attack surface than a simple static NFT. Errors in permissions, access controls, automation, or upgrade mechanisms can allow unintended state changes or make the token behave differently from what users expect.
Metadata availability
When metadata or media is stored externally, its availability depends on the storage architecture. Dynamic NFTs need both reliable update logic and reliable access to the information those updates reference.
Marketplace compatibility
Different wallets and marketplaces may refresh metadata at different speeds or interpret changing traits differently. Temporary discrepancies between the NFT’s actual state and what users see can appear, especially when traits change frequently.
Update costs
On-chain changes require transactions, which can introduce gas costs and operational overhead. High-frequency updates may become impractical when every minor state change needs its own on-chain transaction.
Developers need to decide which data genuinely belongs on-chain and which can remain in an off-chain application layer. That decision should reflect both trust requirements and the expected frequency of change.
Conclusion
Dynamic NFTs extend NFTs from fixed digital assets into programmable tokens that can evolve with data, events, and user activity. They are particularly useful in gaming, sports, loyalty, RWA, and other applications where the represented asset changes over time.
Their added flexibility also creates new requirements for smart contracts, data sources, indexing, and marketplace compatibility. The right architecture depends not only on what should change, but also on how those changes will be verified, stored, displayed, and traded.
FAQ
Yes. If the NFT’s contract or metadata architecture allows updates, an NFT’s attributes, image, or other metadata can change after minting while the token keeps the same blockchain identity.
Not necessarily. The token and some state may be on-chain while images or metadata are stored elsewhere, and the exact architecture varies by project.
No. Chainlink is one option for bringing off-chain data, automation, or randomness into smart contracts, while dynamic NFTs triggered entirely by on-chain events may not need an external oracle.
Yes, provided the marketplace supports the NFT’s blockchain and standard. The marketplace also needs to refresh changing metadata correctly for users to see the latest state.
A static NFT generally keeps the same metadata after minting, while a dynamic NFT can update its metadata or state when predefined events, data, or conditions occur.
How useful was this post?
Click on a star to rate it!
Average rating / 5. Vote count:
No votes so far! Be the first to rate this post.
