XTC in Sonic: Minting vs Swapping, and Price Differences 🌀

Let’s do a quick overview of getting Cycles Token (XTC) in Sonic by swapping or minting, and explain why there could be price differences between these options!

Sonic
5 min readFeb 21, 2022

Whether you want to get some Cycles Token (XTC) to add liquidity to Sonic, or to use them to refill/top-up canisters you’re developing you have two options on how to get XTC via the Sonic app today:

  1. You can mint ICP into XTC (burning ICP to create cycles).
  2. You can swap WICP for XTC (using the WICP <> XTC pool).

But, as many have asked and mentioned there might be a price difference/impact between minting and swapping! How can that happen and when is it convenient to do a swap or a mint instead? Let’s review both options, and explain price variations.

XTC: Price Differences Between Minting and Swapping

At times when minting XTC (ICP to XTC), you might see a positive/negative percentage next to the price of XTC (see example below). This indicates whether, when minting you are getting a better or worse deal than just swapping WICP for XTC in the WICP<>XTC liquidity pool.

If the price impact percentage is NEGATIVE when MINTING XTC…

It means that at that moment minting XTC is more costly (by that percentage) than just swapping XTC for WICP in the pool.

If the price impact percentage is POSITIVE when MINTING XTC…

It means that at that moment minting XTC is cheaper (by that percentage) than just swapping WICP for XTC in the liquidity pool.

Using that detail, you can choose whether it is more convenient for you to swap or mint to get XTC.

Why Can There Be A Price Difference?

The price difference can occur because you are obtaining XTC in two different ways, where the price is defined differently.

When You Mint XTC ⛏️

You are burning your ICP to create cycles, and then use those cycles to wrap them into Cycles Token (XTC). This is the “native” way of acquiring cycles on the Internet Computer, burning ICP.

Cycles on the Internet Computer can be considered a stablecoin, they are pegged to the XDR currency basket (around USD $1.4). Therefore, when you mint you always get a known and expected amount of cycles depending on how much ICP you burn:

  • $1.4 = 1 Trillion Cycles
  • Total Burnt ICP Price / 1.4 = Number of Trillion of Cycles you obtain
  • Burn $140 of ICP = 100 Trillion Cycles

When you swap WICP for XTC 🤝

You are not going the normal route. You’re not burning ICP to get XTC and getting the standard fixed “stable” price. Instead, you are trading one coin for the other using Sonic’s WICP/XTC liquidity pool.

In this liquidity pool, the price of the asset is defined by the ratio of reserves in the pool. When you provide liquidity to the pool, you need to provide an equal value of XTC and WICP (for example, 1$ of WICP and 1$ of XTC). As long as the ratio of XTC and WICP in the liquidity pool remains the same as the ICP to XTC mint ratio, $1 of ICP will equal $1 of Cycles when swapping.

However, liquidity pools can slightly shift in price because of demand. Sometimes many people will swap for a lot of XTC or WICP, and the ratio might be affected slightly. Let’s imagine many people swap XTC for WICP and a lot fewer people swap WICP for XTC. Meaning there is now a lot less WICP in the pool, but a lot more XTC entered in.

Let’s give an example 🧐

If the reserve ratio starts at 10 WICP and 150 XTC, then the pool price of WICP is 15 XTC. If the current dollar price of WICP is $21 and the current dollar price of XTC is $1.4, then 1 WICP = $21 and 15 XTC = $21 in the pool.

Voila, our ratios are balanced and whether we swap from the pool or mint XTC from ICP, it’s all the same! (Price of ICP might vary since this post is published).

However, let’s say someone makes a swap that is 50% of our WICP pool balance (or 5 WICP in this example), then we are going to drastically change the reserves (and thus the price) of the pool to 15 WICP and 100 XTC. The price of 1 WICP is now 6.67 XTC.

The price of WICP has drastically gone down, and the price of XTC has drastically gone up. 1 WICP still fetches $21 but the 6.67 XTC that you receive in return now only fetches $9.34.

Getting a Better Deal & Auto Balancing

When that happens, you might see situations where (because the ratio on the WICP<>XTC shifted by a couple of percentages), it might be cheaper to swap WICP for XTC instead of mint.

You might ask yourself: does this mean the pool is broken!?

No. It will automatically balance itself back to the ICP → XTC mint price. When people see the price difference in the pool benefits them, they would take advantage of that price difference and prefer swapping instead of minting. When that happens (following the example above), the amount of WICP would be reduced until the price difference is back to normal and there’s no benefit from swapping.

These liquidity ratio variations happen at early stages when a pool’s TVL (total value locked) is still growing, therefore any big operation or swaps can affect the ratio of assets in the pool more intensely. That is why on early days you might see price impacts of +10–15%. But, as the pool grows and more people provide liquidity, the pool will be less and less affected by these operations and the margins for price impact become narrower.

This, for example, happened in Sonic’s first days! On the first day, there was a moment where the WICP<>XTC pair pool ratio shifted and gave a +20% price advantage for getting XTC via the pool versus minting! Now that the pool’s TVL has grown immensely, we’re seeing slight variations of less than +-1%.

Wrapping it up 👋

Hope this piece helps clear doubts and make your Sonic experience better! If there are any other topics or questions you would like us to cover, feel free to connect with us on Twitter or our Discord! See you there.

--

--