Rebasing Token Explained in Detail
A rebasing token changes balances by adjusting supply. Instead of each user receiving a normal transfer, the token's accounting makes holder balances increase or decrease according to a rebase rule.
This means balanceOf(user) can change between two protocol actions even if the user did not move tokens.
Smart contract example
deposited[msg.sender] += amount;
token.transferFrom(msg.sender, address(this), amount);
If the token rebases later, the stored deposited value may no longer match the contract's real token balance or the user's economic claim.
Rebasing Token in Auditing
Rebasing tokens break the assumption that token balances only change through transfers. That matters for vault shares, lending collateral, reward snapshots, liquidation checks, and any accounting that caches raw balances.
Some protocols support rebasing assets deliberately. Others should reject them because balance drift can create windfalls, shortfalls, or stale collateral values.
Red flags in code
-
User deposits are stored as raw token balances without a share model.
-
The protocol assumes
balanceOfonly changes during its own functions. -
Rewards or fees are calculated from cached balances after a rebase.
-
Liquidation or collateral math does not define how rebases affect debt and collateral.
-
Supported asset onboarding does not classify non-standard ERC-20 behavior.
How to test or review it
-
Use a mock rebasing token that increases and decreases balances between actions.
-
Test deposit, withdraw, borrow, repay, liquidation, and reward flows across positive and negative rebases.
-
Check whether accounting is share-based, balance-delta based, or explicitly incompatible.
-
Verify user-facing claims remain fair after multiple rebases.
-
Add invariant testing around total assets, shares, debt, and user claims.
Keep learning this topic
Non-Standard ERC-20
A non-standard ERC-20 is a token that behaves differently from common ERC-20 assumptions, such as missing return values, fees, rebases, pauses, blacklists, or unusual decimals.
ERC-4626 Vaults
ERC-4626 is the tokenized vault standard where users deposit an asset and receive vault shares that represent a claim on the vault's assets.
Health Factor
A health factor is a lending-risk metric that compares a borrower's adjusted collateral value against their debt.
Oracle Manipulation & Price Manipulation
Oracle manipulation attacks distort price feeds, spot prices, and exchange rates. Learn Chainlink checks, TWAP defenses, and auditor review steps.
Smart Contract Audit Checklist
Use this SCH tool to turn the concept into practical audit work.
Practice this in real audit scenarios
Definitions help, but auditors need reps. SCH turns concepts like Rebasing Token into exploit labs, code review habits, and report-writing practice.
Start the free trial or see the full smart contract auditing course.