{"id":37423,"date":"2021-08-19T09:00:00","date_gmt":"2021-08-19T06:00:00","guid":{"rendered":"https:\/\/forklog.com\/en\/?p=37423"},"modified":"2025-08-29T16:53:36","modified_gmt":"2025-08-29T13:53:36","slug":"what-is-impermanent-loss-il","status":"publish","type":"post","link":"https:\/\/forklog.com\/en\/what-is-impermanent-loss-il\/","title":{"rendered":"What is impermanent loss (IL)?"},"content":{"rendered":"<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\"><strong>What is impermanent loss?<\/strong><\/h2>\n<p>Impermanent loss (IL) is the temporary, notional loss that arises when providing liquidity to an automated market maker (AMM) on a decentralised exchange. It is the difference in the value of assets if simply held in a wallet (HODL) versus kept in a liquidity pool.<\/p>\n<p>Impermanent loss appears mainly in classic pools where a liquidity provider (LP) must supply both assets in equal proportions and one asset is volatile relative to the other.<\/p>\n<p>Impermanent loss using the DAI\/ETH pool on Uniswap, where both tokens are supplied 50:50:<\/p>\n<ol class=\"wp-block-list\">\n<li>Deposit 1 ETH and 1,000 DAI into the pool.<\/li>\n<li>A week later, 1 ETH equals 2,000 DAI.<\/li>\n<li>Had we held 1 ETH and 1,000 DAI in a wallet, the return would be 50% (the 1,000 DAI would be unchanged, while 1 ETH would be worth 2,000 DAI).<\/li>\n<li>Providing liquidity to an AMM pool on Uniswap yields less than the 50% return from simply holding the assets.<\/li>\n<\/ol>\n<p>The losses are called impermanent or <span data-descr=\"A paper loss or unrealised loss occurs when an asset\u2019s value falls below its purchase price, but the instrument is still held in the investment portfolio. The paper loss becomes real only when the investor sells the asset below the purchase price\" class=\"old_tooltip\">unrealised<\/span> because they are not locked in until the liquidity tokens are withdrawn from the pool. In the example above, if ETH returns to the original 1,000 DAI and funds are then withdrawn, there is no impermanent loss.<\/p>\n<p>Uniswap, SushiSwap and <a href=\"https:\/\/forklog.com\/en\/news\/what-is-pancakeswap-a-uniswap-style-dex-on-binance-smart-chain\">similar<\/a> AMMs follow a simple formula:<\/p>\n<p class=\"has-text-align-center\"><strong>x \u2217 y = k<\/strong><\/p>\n<ul class=\"wp-block-list\">\n<li><strong>x<\/strong> \u2014 the number of tokens of asset A;<\/li>\n<li><strong>y<\/strong> \u2014 the number of tokens of asset B;<\/li>\n<li><strong>k<\/strong> \u2014 the pool\u2019s constant product; this value does not change.<\/li>\n<\/ul>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"484\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/1-521-1024x484.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146156\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/1-521-1024x484.png 1024w, https:\/\/forklog.com\/wp-content\/uploads\/1-521-300x142.png 300w, https:\/\/forklog.com\/wp-content\/uploads\/1-521-768x363.png 768w, https:\/\/forklog.com\/wp-content\/uploads\/1-521.png 1393w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Example of Uniswap\u2019s DAI\/ETH liquidity pool. Source: <a href=\"https:\/\/chainbulletin.com\/impermanent-loss-explained-with-examples-math\/\">The Chain Bulletin<\/a>.<\/figcaption><\/figure>\n<p>The contract held tokens worth about $153.5m \u2014 29 116,6 WETH and 76,7m DAI.<\/p>\n<p>Using the formula above, we compute <strong>k<\/strong> for this pool at that moment:<\/p>\n<p class=\"has-text-align-center\">29 116,63 \u2217 76 737 921,22 \u2248 2,23 \u2217 10^12<\/p>\n<p><strong>k<\/strong> changes only when users add or withdraw liquidity, or when trading fees are charged (for example, 0.3% on Uniswap). Those fees accrue to the pool\u2019s liquidity.<\/p>\n<p><em>A detailed example of interacting with an AMM pool:<\/em><\/p>\n<ol class=\"wp-block-list\">\n<li>Deposit 1 ETH and 100 DAI into a Uniswap pool.<\/li>\n<li>After that, total pool liquidity is 10 ETH and 1,000 DAI (the LP\u2019s share is 10%).<\/li>\n<li>Over a week, trades totalling 100 ETH occur in the pool (50% in ETH and 50% in DAI), but the ETH\/DAI price does not change.<\/li>\n<li>No liquidity is added to or removed from the pool during the week.<\/li>\n<li>Total liquidity is now 10,15 ETH and 1,015 DAI, accounting for 0,3 ETH of accrued fees.<\/li>\n<li>The LP\u2019s share remains 10%, but the position has grown thanks to fee income.<\/li>\n<li>If funds are withdrawn after a week, there is no impermanent loss because the ETH\/DAI price ratio is unchanged.<\/li>\n<\/ol>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\">Impermanent loss in classic pools<\/h2>\n<p><em>Example of Uniswap\u2019s DAI\/ETH pool:<\/em><\/p>\n<ol class=\"wp-block-list\">\n<li>Deposit 1 ETH and 100 DAI; the LP share is 10%.<\/li>\n<li>The pool holds 10 ETH and 1,000 DAI.<\/li>\n<li>A week later, 1 ETH trades at 200 DAI.<\/li>\n<li>No trading fees in the pool.<\/li>\n<li>Calculate impermanent loss.<\/li>\n<\/ol>\n<p>First, compute <strong>k<\/strong>:<\/p>\n<p class=\"has-text-align-center\">k = 10 \u2217 1000 = 10 000<\/p>\n<p>Against DAI, ETH\u2019s global price doubled. Arbitrageurs bought ETH cheaply from the pool. With demand rising and supply limited, the price of 1 ETH reached 200 DAI.<\/p>\n<p>At the start of the week, when 1 ETH was 100 DAI, the pool held 10 ETH and 1,000 DAI. Let us find the new distribution after the price change. Set a few variables, starting with the price ratio between assets.<\/p>\n<p class=\"has-text-align-center\">r<sub>t<\/sub> = price of a in b,<\/p>\n<p>where a and b are the two assets in the pool.<\/p>\n<p>In our example, <strong>a<\/strong> is ETH and <strong>b<\/strong> is DAI. Initially, 1 ETH traded for 100 DAI, so the initial <strong>r<\/strong> is 100. Use <strong>t<\/strong> to denote the time at which <strong>r<\/strong> is measured.<\/p>\n<p>Combining the equation above with the AMM\u2019s constant\u2011product formula gives expressions for the quantities of each asset in the pool at any price ratio <strong>r<\/strong> at time <strong>t<\/strong>:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"621\" height=\"127\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/3-274.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146157\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/3-274.png 621w, https:\/\/forklog.com\/wp-content\/uploads\/3-274-300x61.png 300w\" sizes=\"auto, (max-width: 621px) 100vw, 621px\" \/><\/figure>\n<\/div>\n<p>Apply these to the initial position:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"114\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/4-171.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146158\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/4-171.png 576w, https:\/\/forklog.com\/wp-content\/uploads\/4-171-300x59.png 300w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><\/figure>\n<\/div>\n<p>We recover the initial state \u2014 10 ETH and 1,000 DAI. Now apply the same formulae at the end, when 1 ETH trades at 200 DAI. The new <strong><em>r<\/em><\/strong> is 200. Substitute it:<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"105\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/4_2.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146159\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/4_2.png 576w, https:\/\/forklog.com\/wp-content\/uploads\/4_2-300x55.png 300w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><\/figure>\n<\/div>\n<p>After the price change, the pool holds about 7 ETH and about 1,414 DAI. A quick check:<\/p>\n<p class=\"has-text-align-center\">7,07 * 1414,21 \u2248 10 000<\/p>\n<p>The constant\u2011product equation still holds. Our share is 10%, so after the change we are entitled to 0,707 ETH and 141,421 DAI.<\/p>\n<p>If the assets (1 ETH and 100 DAI) were simply held, their value would be $300. The dollar value of the pool position is:<\/p>\n<p class=\"has-text-align-center\">0,707 * 200 + 141,421 = 282,821<\/p>\n<p>Using this, the impermanent loss is:<\/p>\n<p class=\"has-text-align-center\">300 \u2014 282,821 = 17,179<\/p>\n<p class=\"has-text-align-center\">17,179\/300 \u2248 0,0572 \u2248 5,72%<\/p>\n<p>17,179 DAI, or about 5.72%, is what we would have earned by simply holding rather than providing liquidity. There is a gain on the initial 200 DAI position, but holding would have been more profitable.<\/p>\n<p>A simple formula to compute impermanent loss:<\/p>\n<p class=\"has-text-align-center\"><strong>staking<sub>USD<\/sub>\/holding<sub>USD<\/sub> \u2014 1<\/strong><\/p>\n<p>Apply it to our example:<\/p>\n<p class=\"has-text-align-center\">282,821\/300 -1 \u2248 -0,0572 \u2248 -5,72%<\/p>\n<p>To find the exact pool share (in each token), use formulae (2) and (3), the analytics platforms <a href=\"https:\/\/info.uniswap.org\/\">Uniswap Analytics<\/a> and<a href=\"https:\/\/translate.google.com\/website?sl=en&#038;tl=ru&#038;ajax=1&#038;prev=search&#038;elem=1&#038;se=1&#038;u=https:\/\/analytics.sushi.com\/\"> <\/a><a href=\"https:\/\/analytics.sushi.com\/\">SushiSwap Analytics<\/a>, or third\u2011party tools <a href=\"https:\/\/croco.finance\/dashboard\/\">Croco Finance<\/a>,<a href=\"https:\/\/translate.google.com\/website?sl=en&#038;tl=ru&#038;ajax=1&#038;prev=search&#038;elem=1&#038;se=1&#038;u=https:\/\/www.growing.fi\/\"> <\/a><a href=\"https:\/\/www.growing.fi\/\">Growing<\/a> and<a href=\"https:\/\/translate.google.com\/website?sl=en&#038;tl=ru&#038;ajax=1&#038;prev=search&#038;elem=1&#038;se=1&#038;u=https:\/\/apy.vision\/\"> <\/a><a href=\"https:\/\/apy.vision\/\">APY.vision<\/a>.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\"><strong>Why pool fees matter<\/strong><\/h2>\n<p>The previous example ignored trading fees. That simplifies the maths, but fees should be accounted for; they are integral to AMM economics.<\/p>\n<p>The higher the fee income, the smaller the impermanent loss. Beyond a certain level of fees, providing liquidity outperforms holding.<\/p>\n<p><em>Take the example above and add fees:<\/em><\/p>\n<ol class=\"wp-block-list\">\n<li>Deposit 1 ETH and 100 DAI in the pool;<\/li>\n<li>Our share is 10% (the pool has 10 ETH and 1,000 DAI);<\/li>\n<li>A week later, 1 ETH trades at 200 DAI;<\/li>\n<li>Fees accrued: 1 ETH and 100 DAI.<\/li>\n<\/ol>\n<p>Without fees, the impermanent loss is 17,179 DAI. With a 10% share, we are entitled to 0,1 ETH and 10 DAI from fees. At 200 DAI per ETH, 0,1 ETH is 20 DAI, so total fee income is 30 DAI. The total is therefore $312,821 ($282,821 + $30).<\/p>\n<p>Plug these numbers into formula (4):<\/p>\n<p class=\"has-text-align-center\">312,821\/300 \u2014 1 \u2248 0,042 \u2248 4,2%<\/p>\n<p>In this example, the impermanent loss is \u221212,821 DAI (17,179 \u2014 30). Thanks to fees, providing liquidity yields a 4.2% gain versus holding.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\"><strong>What formula is needed to plot impermanent loss?<\/strong><\/h2>\n<p>So far we have used the simple formula (4) to compute IL. It is fine for the current IL, but awkward when you want IL at different prices.<\/p>\n<p>From formulae (1), (2) and (3) you can derive another expression that makes IL calculations easier:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"218\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/11-48-1024x218.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146161\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/11-48-1024x218.png 1024w, https:\/\/forklog.com\/wp-content\/uploads\/11-48-300x64.png 300w, https:\/\/forklog.com\/wp-content\/uploads\/11-48-768x164.png 768w, https:\/\/forklog.com\/wp-content\/uploads\/11-48-1536x327.png 1536w, https:\/\/forklog.com\/wp-content\/uploads\/11-48.png 1999w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<p>Apply it to our example. We know the initial <strong>r<\/strong> is 100 (1 ETH trades for 100 DAI) and the final <strong>r<\/strong> is 200. Hence <strong>p<\/strong> equals 0.5 (100\/200). Use these values:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"90\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/12-12.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146162\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/12-12.png 571w, https:\/\/forklog.com\/wp-content\/uploads\/12-12-300x47.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/figure>\n<p>This matches the number from formula (4). Varying <strong>p<\/strong> yields IL for different price moves.<\/p>\n<p>This formula does not include trading fees. To plot IL with fees, use:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"180\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/13-27-1024x180.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146163\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/13-27-1024x180.png 1024w, https:\/\/forklog.com\/wp-content\/uploads\/13-27-300x53.png 300w, https:\/\/forklog.com\/wp-content\/uploads\/13-27-768x135.png 768w, https:\/\/forklog.com\/wp-content\/uploads\/13-27-1536x270.png 1536w, https:\/\/forklog.com\/wp-content\/uploads\/13-27.png 1999w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<p>Fees can be estimated from <span data-descr=\"Pool returns in annual terms (Annual percentage rate)\" class=\"old_tooltip\">APY<\/span> data provided by some AMM platforms.<\/p>\n<p>The chart below illustrates IL for various price changes. For example, a fivefold move implies 25.5% IL; a twofold move, 5.7%.<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"633\" src=\"https:\/\/forklog.com\/wp-content\/uploads\/0__3S1Yx3udbQh1yja-1024x633.png\" alt=\"What is impermanent loss (IL)?\" class=\"wp-image-146169\" srcset=\"https:\/\/forklog.com\/wp-content\/uploads\/0__3S1Yx3udbQh1yja-1024x633.png 1024w, https:\/\/forklog.com\/wp-content\/uploads\/0__3S1Yx3udbQh1yja-300x186.png 300w, https:\/\/forklog.com\/wp-content\/uploads\/0__3S1Yx3udbQh1yja-768x475.png 768w, https:\/\/forklog.com\/wp-content\/uploads\/0__3S1Yx3udbQh1yja.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Source: <a href=\"https:\/\/finematics.com\/impermanent-loss-explained\/\" title=\"https:\/\/finematics.com\/impermanent-loss-explained\/\">Finematics<\/a>.<\/figcaption><\/figure>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\"><strong>Does impermanent loss work the same way in other pools?<\/strong><\/h2>\n<p><a href=\"https:\/\/curve.fi\/\">Curve<\/a> is a decentralised exchange for stablecoins and tokenised bitcoin built on an AMM. Its pools contain only assets that should have the same or comparable value: stablecoins (USDC, DAI) or tokenised bitcoin (renBTC, wBTC). The risk of impermanent loss in such pools is minimal.<\/p>\n<p>Balancer offers pools with arbitrary weightings of <a href=\"https:\/\/forklog.com\/en\/news\/what-is-a-token\">tokens<\/a>. If a liquidity provider wants to supply large amounts of a particular token, they can choose a pool where that coin has a higher weight than others (for example, 80\/20 or even 98\/2). This also minimises impermanent loss. The larger a token\u2019s weight in the pool, the smaller the gap between holding the token and providing liquidity in it.<\/p>\n<p>Bancor\u2019s second\u2011generation pools automatically adjust token weights based on oracle data. This helps minimise impermanent loss even in pools with volatile assets.<\/p>\n<\/div>\n<div class=\"wp-block-text-wrappers-cards single_card\">\n<h2 class=\"card_label\"><strong>How to estimate impermanent loss easily<\/strong><\/h2>\n<p>Anyone using AMM platforms should understand impermanent loss. You can run your own IL calculations with a <a href=\"https:\/\/dailydefi.org\/tools\/impermanent-loss-calculator\/\">calculator<\/a> at dailydefi.org (based on Uniswap\u2019s formulae).<\/p>\n<p>In general, AMM users are always exposed to the risk of <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%BB%D1%8C%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5_%D0%B8%D0%B7%D0%B4%D0%B5%D1%80%D0%B6%D0%BA%D0%B8\">opportunity cost<\/a>, regardless of price direction. Compared with holding, when prices rise an LP\u2019s position appreciates more slowly; when prices fall, losses are larger.<\/p>\n<p>Trading fees and <a href=\"https:\/\/forklog.com\/en\/news\/what-is-yield-farming\">yield farming<\/a> help offset impermanent loss so that participating in an AMM pool can outperform simply holding assets.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Impermanent loss (IL) is the temporary, notional loss that arises when providing liquidity to an AMM-based decentralised exchange, measured against simply holding the same assets in a wallet.<\/p>\n","protected":false},"author":1,"featured_media":37424,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"select":"1","news_style_id":"1","cryptorium_level":"2","_short_excerpt_text":"","creation_source":"","_metatest_mainpost_news_update":false,"footnotes":""},"categories":[2113],"tags":[2119,2118,787],"class_list":["post-37423","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cryptorium","tag-101-defi","tag-101-trading-and-investing","tag-dex"],"aioseo_notices":[],"amp_enabled":true,"views":"118","promo_type":"1","layout_type":"1","short_excerpt":"","is_update":"","_links":{"self":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/comments?post=37423"}],"version-history":[{"count":1,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37423\/revisions"}],"predecessor-version":[{"id":37425,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/posts\/37423\/revisions\/37425"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/media\/37424"}],"wp:attachment":[{"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/media?parent=37423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/categories?post=37423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/forklog.com\/en\/wp-json\/wp\/v2\/tags?post=37423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}