With Synthetix V3 now "live," it is a perfect time to question past assumptions to ensure the community is aligned on the long-term vision. This post will focus on the SNX token and its role in the ecosystem.
The Synthetix vision has always been highly aspirational. The difficulty of deploying the Synthetix protocol to multiple chains significantly exceeds that of most other DeFi protocols. This is because most protocols deploy an independent instance on each chain, this introduces operational complexity, but it is by far the easiest way to maintain a presence across multiple networks. Many protocols then control these distinct instances via unified governance. Although this introduces additional complexity, governance usually operates off-chain or on a single network. A few protocols go even further, where actions on one chain impact all others. This could be in the form of bridging, liquidity management, or shared liquidations. Protocols may also support asset fungibility across chains through wrappers or bridges. The Synthetix community in early 2020 envisioned something far grander: a single protocol spanning multiple networks, where the system behaved as if every action on every chain were happening on one unified chain. While we are closer today to implementing this than we were three years ago, it remains elusive. Numerous unsolved technical challenges must be addressed. Given how crypto has evolved over the last few years, it's worth reconsidering whether this multi-chain approach remains the optimal one.
Imagine an instance of Synthetix deployed to five different EVM networks. The SNX token can move seamlessly between any of these networks and be used to provision liquidity (SNX LP) on each network to support trading. Complexity arises when these SNX LP positions also support liquidity on other networks. If Alice only trusts Mainnet, she can LP SNX there and provide liquidity to any of the other four supported networks. However, there's a potential contradiction: if she only trusts Mainnet, why would she want to support liquidity on other networks? Bob can LP SNX on Optimism and supply liquidity to Mainnet, Optimism, and Base. Carol can LP on Avalanche and only supply liquidity to that network (poor red-triangle Carol). In theory, the market should sort this out, and liquidity will flow where there is the highest demand for trading. This design assumes each network has a meaningful percentage of users unique to that network who transact nowhere else. If they cannot LP and trade on their network of choice, they will be excluded from Synthetix completely. We can challenge this assumption later; for now, let's examine what would be required to achieve this.
The complex approach is to deploy distinct markets and pools on each network and then allow LPs to provide cross-network liquidity from any network. For context, In Synthetix V3, a market represents a single asset, for example, sBTC, and a pool allows LPs to send liquidity to a market aggregator that then delegates to multiple markets. The primary pool will be the Spartan Pool, which will be comprised of all of the "officially supported" markets. In Synthetix V2x there is only one pool that contains all supported markets, all LPs are forced to delegate liquidity to this pool.
OK, so let's look at a specific trader to understand how this would impact them. Let's say this trader only trades on Base. They love to swing trade ETH; to ensure they can keep opening new positions, there must be enough liquidity delegated to the Base Spartan Pool and/or delegated to the Base ETH pool. Remember, in this setup, this doesn't require anyone to LP on Base at all; all of this liquidity could be coming from Mainnet or another chain. This works for the Base trader because demand for sETH on Base will cause LPs on other networks to delegate liquidity to this Base market directly via a single market pool or via pools that contain the ETH market.
For this implementation to work, there is a lot of cross-chain communication required. An insane amount actually, especially as the number of supported networks scales. It is possible to implement this via CCIP and some other upcoming Chainlink infrastructure, but the question we must ask ourselves here is not, "Can we?" but "Should we?"
Ultimately, what we want is a highly efficient market for liquidity, where demand on any chain is met by supply on that chain. One assumption is that liquidity is finite, so we must be able to share liquidity across networks to avoid liquidity fragmentation—a situation where you can trade on every network but liquidity is poor across all of them due to this finite pool of liquidity being spread too thin. This creates a cold start problem: Insufficient liquidity on any one network suppresses demand and thus reduces the incentives to provide further liquidity. Now, liquidity is finite, but some liquidity is more finite than others. Part of what necessitates this multi-chain complexity is the awareness in the community that SNX liquidity is unlikely to be sufficient to satisfy the demand across all networks in the short term. So, to avoid introducing other collateral, we must contort ourselves into knots to enable this cross-chain liquidity system to avoid fragmenting the limited SNX liquidity. I should point out here that I think in the long term if demand exists, the SNX token will scale to support the levels of liquidity required. The problem is that in a bear market, this is a lagging process, where demand does not sufficiently increase SNX collateral. So we are forced into a trade-off: increase the complexity of the system to cement the role of SNX as primary collateral, or find a compromise.
A critical assumption in this investigation is that markets must exist on every chain. I believe this is a sound assumption. But it is one we should challenge. The equivalent situation here would be if Coinbase had a distinct exchange for every operating system so that no matter which OS you liked, you could still trade. How much liquidity could be expected on Coinbase: Debian? This analogy misses the point slightly; a better analogy would be if Coinbase had distinct markets for each database engine users preferred. The idea that users have a sufficiently powerful database preference that this would influence their usage of a trading platform is laughable. Yet, this is precisely the situation we find ourselves in at this moment in crypto. There are diehard proponents of specific chains who refuse to even acknowledge or transact on alternative networks. Sadly, I am one of them… Why are we in this situation with smart contract platforms but not databases? In this analogy, DBs are the state storage layer of CeFi and L1/L2 networks are the execution and/or state storage layers for DeFi. The reason is simple: it is called tokens. While a proponent of a database engine might be just as obnoxious as your average crypto reply guy—“Akkkktually, Clickhouse is not even a real database engine!”—there is no mechanism by which this kind of tech tribalism flows through to end users. In crypto, we have built an extremely powerful incentive mechanism to facilitate this kind of user preference. This phase may eventually pass, but for now, I think it is fair to assume there are distinct groups of users on most networks.
Ok, so this fragmentation of users at the execution layer is not amazing, and we seem to be stuck with it for the time being. While users ultimately want utility, they are also extremely incentivized to want that utility only on the network they support. So we can build the most optimal exchange ever, and if it only exists on one chain, it will be siloed and won’t get as much traction as it could. This is particularly true when the competition, centralized exchanges, can pick whatever tech stack they want and put all their users into a single database, and no one cares. This means all of their liquidity is in a single silo, a huge advantage over a cross-chain DEX. As an aside, one approach to solving this is to abstract away the network and act more like a centralized exchange; this is the experiment Infinex intends to run. From a Synthetix perspective, this is a valuable experiment. But Synthetix must optimize for a reality where Infinex fails, which means meeting users where they live, as a protocol, on every chain where users want to trade or provide liquidity.
If we accept that the Synthetix protocol needs to be where the users are, how does it get there? There are three approaches, as I see it.
Deploy a fork of Synthetix on every chain and let God sort it out.
Implement a unified cross-chain protocol where state changes must be pushed to all chains.
Deploy an independent instance on each new chain and minimize cross-chain messaging and liquidity fragmentation by leveraging non-SNX collateral.
Le Choix Un: Forks all the way down
This is not a viable approach, although it would be pretty funny. The main thing preventing us from doing this is the reliance on the SNX token for collateral. If you have 10 SNX fork tokens, they will likely all trade down and significantly reduce liquidity on each of the forks, defeating the purpose of trying to avoid fragmenting liquidity. Most protocols can just deploy a new instance of their contracts and let the liquidity find its way to the new network; Aave and Uniswap are great examples of this. With Synthetix, we need a lot of SNX on the network to act as collateral, and we also have a lot of governance overhead. So we would likely need to fork the SNX token on each network. You could test this process with Base. We could deploy an entirely new instance of Synthetix, including SNX, and just prepend a 'b' to it all. So we would have bSNX, bsUSD, and bsBTC. As funny as this might be, I do not feel this is our best hope. But again, it would be very funny, and I am not saying we should not consider it. One advantage to the fork approach today versus a few years ago is that deployments are now far easier due to the release of Canon. Back in the day, even deploying Synthetix to one network could be a multi-day process. Deploying multiple instances across networks, even if each deployment was distinct, was just not viable back then.
Le Choix Deux: Unified liquidity theory
OK, come on, lazy green circles, just solve all the technical issues and build a networked protocol that can sustain all of the cross-chain messaging required. Then we can continue to rely solely on SNX collateral, and we will all be saved. This is great in theory, and we are headed in that direction, but what if our premise above is incorrect? What if there are insufficient distinct users on all of these chains to generate incremental volume? And what if we spend so much time building this supporting infrastructure that another protocol builds a single-network solution that is so much better that users begin to migrate to it? There is precedent here; dYdX is obsessed with deploying to ghost chains and yet they have built a trading engine that is sufficiently powerful to get traders to migrate there. What if their new engine on Cosmos is so much better than all other DEXs that EVM users mass migrate? I believe the majority of our effort should be spent on core product features rather than supporting infrastructure. But we should, at the same time, at least run some experiments to determine whether there is sufficient volume on other chains to justify a cross-chain solution. But how?
Le Choix Trois: Test the sacrilegious waters
I and a few other OGs are responsible for the dogma of pure SNX collateral, but our acolyte Samantha of the many aliases has elevated it to a crusade. Anyone who challenges the sanctity of pure SNX collateral must be burned at the stake or tied up and thrown in a lake, or ideally both. Even the noble duo of Fifa and ha-oN will not be spared this fate if they are tempted by the filth that is Ether collateral. And yet we have an amazing opportunity to test the thesis of latent network demand without requiring cross-chain SNX collateral. We can deploy perps to Base and enable ETH collateral as the sole collateral. This will reduce the risk of diverting SNX liquidity from Optimism. This will not require much cross-chain communication at all. The major issue will be migrating and burning fees back to Optimism. But there is another potential option: We could use the fees generated on this network to buy back and burn SNX. This allows us to test two novel approaches simultaneously with fairly low stakes. If either of these approaches is ineffective, we have established a beachhead on the new network and can upgrade later and replace ETH collateral with SNX. We can also switch back to burning the debt on that network rather than doing buybacks. This raises the final problem: the optimal incentive mechanism for liquidity provisioning is to only burn debt on the network where the liquidity is provided rather than burning global debt. If we burn everyone's debt regardless of which network they LP on, we create a “free rider” problem, where it might be beneficial to camp out on the "safest" network even if that is not the network with the most demand.
If we are unleashing ETH collateral on a new network, I think Base is the best choice. It will allow us to generate incremental volume without threatening trading revenue on Optimism. It is also lower stakes than Arbitrum. This should be a win for SNX LPs. The counterargument is this: Had we instead let people migrate SNX to Base and LP there, SNX would capture 100% of the fees on both networks, rather than sharing the fees. This is true, but there is minimal risk to SNX LPs because we control governance. We can run this controlled experiment and then decide what is best for SNX holders once we have the data. This test would not be a one-way door; if we get to a point where we have excess SNX collateral on Optimism, we can allow SNX to migrate to Base and enable it as collateral. This will dilute the yield on ETH, and a new equilibrium will be reached. We can even implement caps on ETH liquidity or remove it as collateral completely. This is why governance power must be solely vested in SNX LPs. Crucially, this experiment will prove the thesis that there is incremental volume on a new network that does not cannibalize existing volume on Optimism. Provided the fee share to SNX is high enough, we should get a good sense of the incremental revenue we can generate. I think we should start with something on the lower end, and then we can adjust as we get traction. Capturing 40% of the fees for SNX LPs is a good starting point, and we can tweak it from there. We must identify whether ETH LPs are even willing to join the network; if the fee split is too high for SNX, we will not properly test the propensity of people to LP ETH.
If we run this experiment and see strong demand for both LPing ETH and trading on a new chain, will we have destroyed the SNX token? I don’t think so. If this works, we can expand the experiment to other chains; Arbitrum and Polygon would be the first two obvious ones. We may have enough data at this point to realize that Optimism trading is also constrained by SNX liquidity. If this appears to be the case, we can allow ETH collateral on Optimism as well. Taken a step further, if it appears that demand for liquidity backed by ETH is much higher than demand for SNX-backed liquidity, we can even decide to disable SNX liquidity on Optimism. However, if we do this, I believe we need to take an additional step.
If after we run these experiments, it appears that market demand for ETH-backed trading is far higher than SNX-backed trading, we must accept this and lean into it. The next step would be to create an AppChain on the Optimism superchain. This will allow us to migrate governance onto one chain that we control; it will also be where you can get a leveraged sUSD loan on your SNX. This is still a critical feature of the Synthetix network and one of the key benefits of staking SNX. I don’t think we even need to enable trading on this network, as there will be minimal ETH liquidity on it. This will be the network where all the backend functionality of SNX exists. If, in the future, we believe we can develop a cross-chain shared liquidity system efficiently, this will be the place where the liquidity lives and is delegated to other chains. This would require attracting ETH liquidity to the chain, but if the yield is high enough, LPs will likely migrate.
SNX LPing has always been challenging due to the hedging required, making the risks very high. This, combined with high inflation, has meant that very few integrators wanted to create staking solutions for SNX. By migrating to an AppChain, we can reduce the risk of staking SNX and remove inflation completely. This will potentially enable staking SNX to be integrated into many more platforms and open up the network to a far wider range of users. Right now, the risk-adjusted yield for LPs is much lower due to the hedging requirement. It is possible that SNX would still act as an insurance fund for the network, but this would not require active maintenance and would be a much lower risk than continuous hedging.
They can still be supported in this new design; they will require CCIP, but in principle, even with liquidity siloed on each chain, we can still support the fungibility of Synths between chains. This does require cross-chain messaging, but it is not nearly as onerous as supporting cross-chain liquidity. Bridges are still a very lucrative and nascent market, and while focusing on perps is the optimal strategy for now, we absolutely should continue to experiment with Synth Teleporters and other novel mechanisms. This approach does not preclude this.
To conclude this post, we are faced with several technical challenges; we can sidestep these and test out one of our core assumptions. Is there latent demand for trading on other networks? We can do this with minimal risk by leveraging ETH collateral. If this works, we can then expand this experiment to other networks. If this path seems like the right one, we can then decamp to our own AppChain and collect fees from multiple networks, leveraging ETH collateral and simply using SNX to coordinate and govern the protocol. We forgo a percentage of the total fees, but we can rapidly expand and avoid another protocol reaching a level of dominance. This is not a one-way door; we can always test exclusive SNX collateral on any network at any time, and we can cap ETH collateral or other collateral as needed. This lets us rapidly scale our presence to multiple chains with minimal technical overhead. There is a lot of data to gather along the way, and we should iteratively test each step, as we have always done with Synthetix. The key question I will end with is: Would we rather have a percentage of the total addressable fees now, or wait longer to capture 100% of future fees once we are ready to deploy a truly cross-chain implementation? The good news is that we can potentially have both, and if it turns out that the former is more lucrative, we will end up with a far more accessible network, where anyone can easily stake and join the network with much lower barriers to entry.