Your effective rate
Your tip and your rate limit are both derived from your active stake, so they change when your stake changes. Read the current values for any wallet:
GET https://fastrelay.sh/api/user/{wallet}/ratejson
{
"wallet": "7xKX…",
"staked_relay": 25000,
"tip_sol": 0.0006311,
"tip_lamports": 631100,
"base_tip_sol": 0.001,
"rps": 77,
"max_stake_relay": 100000
}| Field | Meaning |
|---|---|
staked_relay | Active stake, in whole $RELAY |
tip_sol | The tip this wallet owes per transaction, in SOL |
tip_lamports | The same tip in lamports — use this as your transfer amount |
base_tip_sol | The unstaked tip, so you can show the saving |
rps | Requests per second currently allowed |
max_stake_relay | Stake at which the tip reaches zero and rps its ceiling |
A few points on the curve, for calibration:
| Active stake | Tip per transaction | Rate limit |
|---|---|---|
| 0 | 0.001 SOL | 5 rps |
| 10,000 | 0.00084487 SOL | 35 rps |
| 25,000 | 0.00063110 SOL | 77 rps |
| 50,000 | 0.00032988 SOL | 136 rps |
| 100,000 | 0 SOL | 200 rps |
No authentication is required — stake is public on-chain state. A wallet that has never
staked reads as staked_relay: 0 with the full tip and the 5 rps floor, rather than an
error.
Read it before you build your tip. Hardcoding
0.001 SOLworks but overpays once you stake. Fetchingtip_lamportsand using it for the transfer amount means the same code keeps working as your stake grows.