Appearance
Fees
Every fee in the protocol, what it applies to, and how to check the current value yourself rather than trusting this page.
Summary
| Action | Protocol fee | Gas |
|---|---|---|
| Deposit a skin | None | None — you send no transaction |
| Mint | None | None — paid by the protocol |
| Approve the marketplace (once per wallet) | None | Yes |
| List an item | None | None — a signature, not a transaction |
| Cancel a listing | None | Yes |
| Buy | Royalty + platform fee, deducted from the price | Yes |
Withdraw (deTokenize) | withdrawFee per token — currently 0 | Yes |
Current values
Read from the deployed contracts on Robinhood Chain:
| Parameter | Where | Value |
|---|---|---|
| Platform fee | LootMarket.platformFeeBps | 200 bps = 2% |
| Platform fee hard cap | LootMarket.MAX_PLATFORM_FEE_BPS | 1000 bps = 10% |
| Royalty | LootSkins.royaltyInfo (ERC-2981) | 500 bps = 5% |
| Withdrawal fee | LootSkins.withdrawFee | 0 |
| Max burns per call | LootSkins.MAX_BATCH | 50 |
These are current values, not guarantees
The platform fee, the royalty rate and receiver, and the withdrawal fee are all owner-settable on-chain. The cap is not — MAX_PLATFORM_FEE_BPS is a constant, so a platform fee above 10% cannot be set without replacing the contract implementation entirely.
Verify before a transaction that depends on the number. Instructions below.
Depositing is free
You pay nothing to deposit, and you send no transaction to do it. Accepting the Steam trade offer costs nothing, and the ERC-721 mint that follows is sent and paid for by the protocol.
The only cost of depositing is the wait — see Track your deposit.
Listing is free; approving is not
Creating a listing is an off-chain EIP-712 signature. No transaction, no gas, no fee. Your token does not move.
The one-time setApprovalForAll before your first listing is a transaction and costs gas — a few cents on this chain. It is charged by the network, not by LootFi, and once granted it covers every future listing from that wallet.
Cancelling costs gas too: cancel for one order, setMinimumNonce to invalidate many in a single transaction. See List & sell.
On a sale
Both deductions come out of the price the buyer pays, in one transaction. The buyer sends the price; the seller receives what is left.
buyer sends: price P
┌─────────────────────────────────────────────────┐
│ royalty = P × 500 / 10000 ( 5% ) │──► ERC-2981 receiver
├─────────────────────────────────────────────────┤
│ platform fee = P × 200 / 10000 ( 2% ) │──► fee recipient
├─────────────────────────────────────────────────┤
│ seller gets = P − royalty − fee (93% today) │──► seller
└─────────────────────────────────────────────────┘
overpayment above P is refunded to the buyer in the same transactionWorked example at today's rates — a listing at 1 ETH:
| Buyer pays | 1.0000 ETH (+ gas) |
| Royalty (5%) | 0.0500 ETH |
| Platform fee (2%) | 0.0200 ETH |
| Seller receives | 0.9300 ETH |
Both are computed in basis points against the order price and both are paid before the NFT transfers. The contract also refuses to settle if royalty plus fee would exceed the price, so the seller's share can never go negative.
Price your listing gross, not net
The price you sign is what the buyer pays, not what you receive. To net a specific amount at today's rates, divide by 0.93.
The royalty follows the ERC-2981 standard, so it is advisory as far as the token contract is concerned — LootMarket is what actually enforces it on sales made here. A transfer made outside the marketplace pays no royalty and no platform fee, because no contract is in a position to take one.
On a withdrawal
deTokenize charges withdrawFee per token burned. It is currently 0.
Excess value is not refunded
Unlike a marketplace purchase, deTokenize keeps anything you send above withdrawFee × count. There is no refund path.
Send exactly the fee. At 0, send 0.
You still pay gas for the burn. See Withdraw your skin.
Verifying each value yourself
Contract addresses are in Deployments — this page deliberately does not restate them.
With cast
bash
RPC=https://rpc.mainnet.chain.robinhood.com
# platform fee, in basis points (200 = 2%)
cast call <LootMarket> "platformFeeBps()(uint16)" --rpc-url $RPC
# the hard cap — a constant, not settable (1000 = 10%)
cast call <LootMarket> "MAX_PLATFORM_FEE_BPS()(uint16)" --rpc-url $RPC
# royalty on a hypothetical 10000-wei sale: returns (receiver, amount).
# amount is the bps rate directly, since the sale price is the bps denominator.
cast call <LootSkins> "royaltyInfo(uint256,uint256)(address,uint256)" 0 10000 --rpc-url $RPC
# withdrawal fee, in wei, per token
cast call <LootSkins> "withdrawFee()(uint256)" --rpc-url $RPCOn the explorer
Open the contract on robinhoodchain.blockscout.com, go to the Read tab of the proxy, and call platformFeeBps, MAX_PLATFORM_FEE_BPS, withdrawFee, or royaltyInfo.
From a past sale
Every fill emits OrderFulfilled, which carries the price, the royaltyAmount, and the platformFee actually charged. That is the strongest evidence available — not what a contract says it will charge, but what it did charge. See Events & indexing.
What is not a fee
- Gas is paid to the network, not to LootFi, on any transaction you send.
- Reference prices shown in the interface are third-party market data. They are informational, not quotes, and no fee is derived from them. See Reference prices.
- Steam's holding periods cost nothing. They cost time. See Trade protection.
Next
- Fees & royalties — contract-level detail.
- Admin & upgrades — who can change these values.
- Buy · List & sell · Withdraw your skin