Why can one token transfer have a raw amount and a UI amount?
I used to think a token transfer had one amount: the number recorded on-chain.
But BEP-677 adds another layer: the raw amount and the UI amount don't have to be the same.
So what exactly is the number I'm looking at?
The raw amount is the blockchain-level amount.
The UI amount is the user-facing representation, calculated using a UI multiplier:
raw amount × UI multiplier ÷ 1e18 = UI amount
For example, a 2.0× multiplier can make 100 raw units appear as 200 UI units — without changing the raw balance.
And BEP-677 goes one step further.
It defines TransferWithUIAmount, which carries both the raw amount and the UI-adjusted amount alongside the regular BEP-20 transfer event.
That may sound like a small technical detail.
But it solves a real problem for tokenized RWAs: the economic representation of an asset may need to change without moving tokens on-chain.
That's also why this caught my attention when looking at bStocks.
Binance describes bStocks as BEP-20 tokens on BNB Smart Chain and says they integrate BEP-677 / Scaled UI Amount for RWA use cases.
So there are really two layers worth looking at:
what the blockchain records
vs.
what the user is meant to see.
When you look at a token balance, which layer are you actually looking at?
#bstockscis @BinanceCIS
I used to think a token transfer had one amount: the number recorded on-chain.
But BEP-677 adds another layer: the raw amount and the UI amount don't have to be the same.
So what exactly is the number I'm looking at?
The raw amount is the blockchain-level amount.
The UI amount is the user-facing representation, calculated using a UI multiplier:
raw amount × UI multiplier ÷ 1e18 = UI amount
For example, a 2.0× multiplier can make 100 raw units appear as 200 UI units — without changing the raw balance.
And BEP-677 goes one step further.
It defines TransferWithUIAmount, which carries both the raw amount and the UI-adjusted amount alongside the regular BEP-20 transfer event.
That may sound like a small technical detail.
But it solves a real problem for tokenized RWAs: the economic representation of an asset may need to change without moving tokens on-chain.
That's also why this caught my attention when looking at bStocks.
Binance describes bStocks as BEP-20 tokens on BNB Smart Chain and says they integrate BEP-677 / Scaled UI Amount for RWA use cases.
So there are really two layers worth looking at:
what the blockchain records
vs.
what the user is meant to see.
When you look at a token balance, which layer are you actually looking at?
#bstockscis @BinanceCIS
