FAQ
What is providing liquidity?
Providing liquidity means depositing cryptocurrency assets into a liquidity pool on a decentralized exchange (DEX). These pools facilitate trading between crypto pairs without traditional market makers.
As a liquidity provider (LP), you receive liquidity tokens representing your share of the pool. These tokens can be redeemed for your original investment. Your contribution helps facilitate trading, and in return, you earn a portion of the trading fees generated from transactions within the pool.
What to consider when providing liquidity on a DEX?
Impermanent Loss: Be aware of impermanent loss, which occurs when the value of your deposited assets changes compared to their value at deposit. Greater price divergence can lead to higher impermanent loss.
Pool Composition: Evaluate the assets in the pool. Pools with volatile assets may offer higher returns but come with increased risk.
Transaction Fees: Consider the DEX’s fee structure. Higher fees could lead to greater rewards but might also reduce trading volume and overall profitability.
Tokenomics: Understand the liquidity tokens' economic model and how changes in asset supply and demand might affect them.
Smart Contract Risk: Assess the security of the DEX and its smart contracts. Prefer audited and well-established contracts to minimize risk.
Liquidity of the Pool: Check the total value locked (TVL) in the pool. Higher liquidity usually means less slippage and better trade execution.
Investment Duration: Decide whether to provide liquidity as a short-term or long-term investment. Some pools offer incentives for longer staking periods.
DEX Reputation and Volume: Research the DEX’s reputation and trading volume. Established and high-volume exchanges typically offer more stable earning potential.
Why do token prices on Krystal look different vs. in other apps?
Krystal uses a combination of data sources to determine token prices, which may lead to price differences compared to other apps:
Market Price: Krystal aggregates token prices in USD (e.g., 1 ETH = $4,000) from multiple sources, including centralized exchanges (Binance, OKX, Coinbase) and decentralized exchanges (Uniswap, SushiSwap, PancakeSwap). This data is sourced through Coingecko.
Pool Price: The pool price (e.g., 1 ETH = 4,008 USDC) reflects the current state of the liquidity pool, considering factors like token availability, fee tiers, and liquidity distribution.
Although Krystal integrates both market and pool prices for accuracy, several factors can still impact price precision:
Network issues or server errors
Discrepancies between decentralized and centralized exchange prices
Delays in EVM node updates
How does Krystal estimate a pool APR?
The formula to calculate pool APR at Krystal is shown below:
APR = (24h earning * 365) / Current liquidity * 100%
The APR might vary based on multiple factors
Uniformly Distributed Liquidity vs. Concentrated Liquidity:
For Uniformly Distributed Liquidity (as in UniSwap v2 and other similar protocols), the current liquidity is the total liquidity in that pool at this moment.
For Concentrated Liquidity (as in UniSwap v3 and other similar protocols), the current liquidity is the amount of liquidity at a specific price range chosen by users. Therefore, a narrower price range leads to smaller current liquidity, which then leads to higher APR.
Users’ Activities:
When a user makes a big deposit or withdraw, the amount of liquidity in the pool at the moment will be different than the amount of liquidity which generated earning in the last 24 hours. Therefore, the APR value will not be 100% accurate.
What is Share Price?
When you deposit assets into a Vault, you receive Vault Shares in return. These shares represent your portion of the Vault.
The Share Price tells you how much one share is worth in terms of the underlying assets (like ETH, USDC, or other tokens).
Share Price = Total Value of Assets in Vault ÷ Total Number of Shares Issued
What should I do if I can’t withdraw my funds via the Krystal interface? (e.g., data issue, UI bug)
Don’t worry — your funds are always safe.
If the interface isn’t working, you can still withdraw directly from the vault’s smart contract:
✅ How to withdraw manually:
Open the vault on Explorer (click the explorer icon next to the vault address).
Go to the “Read” tab → find your share balance.
Go to the “Write” tab → connect your wallet.
Call the
withdraw()
function with your share amount.If you’re doing an emergency withdraw and set
minReturnAmount = 0
, the transaction will ignore slippage protection, which is fine for small positions. But what if you're holding a large value and want to avoid high slippage loss?No worries — you can manually calculate and set your
minReturnAmount
using the vault’s smart contract. Here’s how:1. Get your share amount
Use
balanceOf(address)
→ function selector:0x70a08231
2. Get total share supply
Call
totalSupply()
→ selector:0x18160ddd
3. Get total vault value
Use
getTotalValue()
→ selector:0xcaa648b4
4. Estimate your withdrawal value
principalValue = (yourShare / totalSupply) * totalVaultValue
5. Apply your slippage tolerance
For 10% slippage:
minReturnAmount = principalValue * 0.9
Example Calculation
yourShare = 2988890466857239298455 totalSupply = 22672705752623181671029 totalVaultVaule = 2295323334552647861 slippage 10% minReturnAmount = (yourShare / totalSupply) * totalVaultValue * 0.9 = 272328459473129900
What is slippage?
Slippage is the difference between the price when an order is placed and the price when that order is executed. Slippage can happen when you swap, deposit and withdraw liquidity.
Swap Slippage
For any Swap transaction at Krystal, you can either choose the pre-selected slippage suggested by Krystal or set up your own slippage. As long as the execution price is within the slippage range, e.g., %1, your order will be executed. Otherwise, the order will fail, which means the swap will not occur.
Liquidity Deposit / Liquidity Withdraw Slippage
Slippage can also happen when you deposit or remove liquidity. The same logic as swap is applied: If execution price is within the slippage allowance, your order will be executed.
What're the Risks using Krystal Vault?
Vault holds a collection of working Liquidity Positions, so you are still exposed to the Impermanent Loss.
Private Vault provides efficiency when farming liquidity.
You could also invest in Public Vault by others for simplicity. Public Vaults carry inherent risks as anyone could create a Public Vault. Always understand how the vault works and DYOR carefully Vault: Risk Evaluation.
Enable TWAP for a Liquidity Pool
After enabling, it will take some time for the TWAP price to be ready.
TWAP price is required for Vault, for on-chain's validation.
Enabling TWAP (Time-Weighted Average Price) allows a liquidity pool to record historical price data, which is useful for calculating more stable, average prices over time.
This is supported on Uniswap V3 or compatible pools (like Algebra, Pancake V3, etc.). Anyone can enable TWAP by calling the increaseObservationCardinalityNext()
function on the pool. It requires a small gas fee but has no other risks.
Failed to simulate the transaction when using Solflare?
Users using Solflare to make transactions with Krystal on Solana may encounter simulation failure errors. You can continue the transaction by checking I trust this site.
For example, a user joining the WSOL/USDC pool with a single token (SOL) through Zap using the Solflare wallet extension.
Confirming that Zap often involves the simulation process in Solflare, which can result in a simulation failure error.
This is a limitation of Solflare when simulating complex transactions that involve more intricate processes compared to standard transfers. They provide more details about this issue in the official documentation here.
You can continue the transaction by checking
I trust this site
andApprove
Compliance with FATF Recommendations
In accordance with FATF (Financial Action Task Force) recommendations, Krystal has implemented measures to restrict distribution to specific countries.
You can find more details here: https://www.fatf-gafi.org/en/countries/black-and-grey-lists.html
Last updated
Was this helpful?