All case studies
Case study · Blockchain

NFT Staking with Tiered Time-Locked Rewards

Solidity NFT staking contract — users lock ERC-721s for fixed periods and earn ERC-20 rewards at rates that step up the longer they stay staked (4 → 8 → 12.5 → 20 tokens per day).

Industry
Blockchain
Engagement
Discovery → Launch
Region
Global
Status
Live

NFT Staking with Tiered Time-Locked Rewards · Cover image

01 · The challenge

What needed solving

A collection owner wanted to reward long-term holders with a yield mechanism — stake your NFT, earn the project token — but without the "stake-and-flip" pattern where users harvest after one block. They needed a structure that paid more for holding longer, with no early exits.

02 · Our approach

How we framed the work

We started with a discovery sprint to map the user journey, business goals and real constraints. From there we wrote a fixed-scope plan: clear milestones, weekly review gates on a staging URL, and a written exit criterion for every phase. The blockchain space rewards teams that ship — not teams that plan — so we biased the engagement towards working software from week two onward.

03 · The solution

What we built

Solidity NFT staking contract (staking_v_2.sol) that takes ERC-721 deposits and emits ERC-20 rewards. Each Stake struct packs tokenId, timeOfLastUpdate, owner and a TimeFrame enum (ONE_DAY, TWO_WEEKS, FOUR_WEEKS, EIGHT_WEEKS, TWELVE_WEEKS). Lock period is chosen at stake time and enforced — calls to unstake or claim before the period elapses revert with "lock period is not completed". Reward accrual is tiered across the lifetime of the stake: 4 tokens/day in weeks 1–2, 8 in weeks 2–4, 12.5 in weeks 4–8, 20 in weeks 8–12 — calculateLockRewards walks the tier boundaries and pays the weighted sum.

04 · The results

What changed for the client.

4 (steps to 20 tok/day)
Reward Tiers
5 timeframes
Lock Options
ERC-721 → ERC-20
Stake Asset
  • Tiered rates make long lockups economically dominant — kills the stake-and-flip loop

  • Hard lock enforcement (no early unstake or claim) keeps emissions predictable for treasury planning

  • Five preset timeframes simplify the UX — users pick a tier, not a custom number of seconds

Tech stack

SolidityERC-721ERC-20StakingDeFiLockup

Want a similar outcome for your business? We'd love to hear about it.

Your case study, next

Let's build the next one together.

Fixed-scope quote in 24 working hours.