Skip to content
  1. Home
  2. ERC Standards
  3. ERC Standards
  4. ERC-4907 Explained: Rentable NFTs and the Owner/User Split
ERC Standards

ERC-4907 Explained: Rentable NFTs and the Owner/User Split

ERC-4907 adds a time-limited “user” role to ERC-721 so NFTs can be rented without transferring ownership. Learn how it works and its uses in property, equipment, gaming and subscriptions.

NUVZ Tokenization Team Updated 4 min read Technically reviewed

ERC-4907 extends ERC-721 with a second role — the user — who has time-limited rights to use an NFT while the owner keeps ownership. The owner (or an approved operator) calls setUser(tokenId, user, expires), and when the expiry passes the user role lapses automatically, with no transaction needed to “return” the asset. It turns NFTs into leasable assets.

Key takeaways

  • Three additions: setUser, userOf, userExpires, plus an UpdateUser event.
  • Ownership never moves during a rental, so collateral, royalties and title stay with the owner.
  • Automatic expiry — userOf returns the zero address once expires passes.
  • For ERC-1155 assets, the analogous pattern is ERC-5006 (rentable multi-tokens).

How ERC-4907 works

function setUser(uint256 tokenId, address user, uint64 expires) external;
function userOf(uint256 tokenId) external view returns (address);
function userExpires(uint256 tokenId) external view returns (uint256);
event UpdateUser(uint256 indexed tokenId, address indexed user, uint64 expires);

Applications — a game, an access-control system, a booking platform — check userOf(tokenId) to decide who may use the asset right now. Implementations typically clear the user when the NFT is transferred.

Use cases

Property and space access

A tokenized unit, parking space or co-working desk can be leased by assigning the tenant as user for the lease term, with smart locks or access systems reading userOf. The owner (or SPV) keeps the title NFT. See real estate tokenization.

Equipment and vehicle leasing

Machinery or vehicles with IoT-enabled access can be rented by period; usage data and payments can be tied to the user role.

Memberships and licences

Software licences, club memberships or event passes can be lent or sublet for defined periods.

Gaming and metaverse

Players rent items or land for a season without the owner risking a sale.

Planning a tokenization project?Our engineers have shipped ERC-1155, ERC-3643-style and Hedera token programmes for real estate, loans, energy and carbon. Get a straight answer on architecture, cost and timeline.
Chat with an expert

Design considerations

  • Payments and deposits — ERC-4907 does not handle rent. Pair it with a rental marketplace contract that collects payment and calls setUser.
  • Early termination — decide whether owners can revoke a user before expiry; the base standard lets the owner or approved operator call setUser again.
  • Legal agreements — for physical assets, the lease contract governs; the NFT records and automates access.
  • Collateral use — owners can pledge the NFT while it is rented, but lenders must understand the encumbrance.

Example rental marketplace flow

  1. List: the owner approves the rental marketplace as operator and lists the NFT with a daily price and maximum duration.
  2. Rent: a renter pays rent plus any deposit in a stablecoin; the marketplace calls setUser(tokenId, renter, expiry).
  3. Use: the application (game, access system, booking platform) checks userOf(tokenId) on each access.
  4. Expire: at expiry, userOf returns the zero address automatically.
  5. Settle: the marketplace releases rent to the owner and returns the deposit, minus any agreed deductions.

Implementation sketch

// Simplified ERC-4907 logic — not audited.
struct UserInfo { address user; uint64 expires; }
mapping(uint256 => UserInfo) internal _users;

function setUser(uint256 tokenId, address user, uint64 expires) public {
    require(_isAuthorized(ownerOf(tokenId), msg.sender, tokenId), "not owner nor approved");
    _users[tokenId] = UserInfo(user, expires);
    emit UpdateUser(tokenId, user, expires);
}

function userOf(uint256 tokenId) public view returns (address) {
    return uint256(_users[tokenId].expires) >= block.timestamp ? _users[tokenId].user : address(0);
}

Physical-world integrations

For property, vehicles or equipment, the user role becomes useful when it controls something physical:

  • Smart locks query the rental contract (via a backend) before opening.
  • Telematics associate usage data with the current user for billing.
  • Insurance policies reference the user and rental period.

The lease agreement remains the legal basis; the token automates access and records who had rights when.

Frequently asked questions

No. Only the user role is assigned; ownership stays with the owner.

userOf returns the zero address automatically — no transaction is needed.

Yes, ERC-5006 defines a similar user role with amounts for multi-token contracts.

No. Payments are handled by a separate marketplace or escrow contract.

Technically yes; implementations typically clear the user on transfer. Rental marketplaces often hold the NFT in escrow to protect renters.

The user role applies to the NFT as a whole. For fractional property, the SPV or manager decides on tenancy and income flows to fractional holders.

Written by the NUVZ Tokenization Team

NUVZ is the RWA and Web3 engineering brand of ESS ENN Associates (est. 1993). Our team has designed and shipped tokenization platforms for real estate, education loans, solar PPAs, energy, carbon credits, bank deposits and trade documents. About us · Case studies

This article is for general information only and is not legal, tax or investment advice. Token standards evolve — always confirm the current status of an ERC at eips.ethereum.org and take advice from qualified counsel in each jurisdiction before issuing tokens.

Keep reading

Related guides

All insights →

Get Expert Advice on Your Token Design

Questions about this standard or your own tokenization use case? Send us a note. A NUVZ engineer will reply within one business day.

Prefer a call? Pick a 30-minute slot with our team.

Book a 30-min expert call
  • Mutual NDA available before you share details
  • Reply within one business day
  • Your data is used only to answer your enquiry

Protected against spam. We never sell or share your data with third parties for marketing.

Chat with our experts