7Block Labs
Blockchain

ByAUJay

Curve Finance Liquidity Pools and AMM Mechanics 2025: Deep‑Dive for Protocol Designers

Short Summary

Your Handy Guide to Curve Pools in 2025

This guide is your essential playbook for designing, launching, and managing risks for Curve pools in 2025. We cover everything you need to know--Stableswap-NG, Cryptoswap (both Two and Tricrypto), crvUSD’s LLAMMA, RouterNG, fees and emissions, and all the latest cross-chain deployments and parameter settings. You’ll discover solid configurations, safety nets, and those tricky “gotchas” that founders and protocol PMs should keep in mind right from the get-go.

Why this matters now

Curve really expanded its surface area in 2024-2025! With Stableswap‑NG introducing dynamic off-peg fees and an MA oracle, there’s a lot going on. It’s exciting to see that Cryptoswap NG has tightened its EMA-oracle rebalancing, too. Plus, crvUSD has grown up with some new features like LLAMMA and Savings-crvUSD (scrvUSD). RouterNG has standardized multi-hop routing, which makes everything run a lot smoother, and with new chain deployments like Hyperliquid’s HyperEVM, we’ve got some fresh liquidity venues to explore.

So, if you're diving into the world of stablecoin markets, juggling those wild AMM pairs, or trying to whip up a borrowing setup that can sidestep those nasty “cliff” liquidations, remember that the choices you make about A, gamma, fee ramps, oracles, and gauges really have a big impact on your unit economics and the risks you take on. Want to learn more? Check it out here: (resources.curve.finance).


The 2025 Curve product surface at a glance

  • Stableswap‑NG (stable/pegged assets): This system has an invariant with amplification (A), a flexible off-peg fee multiplier, and a short-window MA oracle to keep things running smoothly. It's a permissionless factory loaded with some useful presets. If you're curious to dive deeper, you can find more info here.
  • Cryptoswap NG (volatile assets): Check out our Two/Tricrypto pools, which feature internal EMA oracles, price_scale re-centering, and rebalancing that's controlled by fee coverage and adjustment steps. For more in-depth info, take a look here.
  • crvUSD + LLAMMA: This cool setup has flexible, “soft” liquidations using an AMM that slowly moves collateral between stable and volatile assets across 4-50 bands. On top of that, there's scrvUSD, which lets you earn yield on your crvUSD. Want to dive deeper? Check it out here.
  • RouterNG: This tool lets you do multi-pool swaps with paths that can handle up to 5 tokens. Plus, it has a universal get_dy/get_dx function that works seamlessly across different pool types. If you want to dive deeper, check out more details here.
  • Gauges/veCRV/bribes: Nowadays, veCRV holders are getting their fees in crvUSD. It's all about those gauge votes and liquid lockers pushing emissions, and the Votemarket is stepping in to boost on-chain vote incentives. If you want the full scoop, check it out here.

Stableswap‑NG: how to set A, fees, and the “off‑peg” response

Stableswap remains the go-to option for exchanging assets that are pretty much on the same price level, all thanks to its clever invariant that strikes a balance between constant-sum and constant-product. In NG, you can play around with these settings:

  • A (which can range from 1 to 5,000, with presets usually hanging out in that zone): bumping up A can help minimize slippage when you're close to the peg, whereas dialing it down gives the curve a more x·y=k feel.
  • Swap fee (set between 0% and 1%) plus Off-peg Fee Multiplier (from 0 to 12.5): this cool feature ramps up fees automatically as the pool drifts away from the peg.
  • MA time (from 60 to 3,600 seconds, with defaults often in place): this short EMA helps smooth out how reactive fees and oracles are to those quick spikes. If you want to dive deeper, check out more details at (resources.curve.finance).

Practical Template (Tri-Stable, e.g., DAI/USDC/USDT on a Fast L2)

  • If you’re dealing with highly fungible assets, especially those that have tight pegs and minimal oracle noise, shoot for an A value between 1,000 and 2,000. But if you think there might be some short-term divergence, like with synthetic or bridged stablecoins, then setting A around 300-600 could be a better bet.
  • For fees, aiming for a baseline of 0.04-0.10% is a solid starting point. When it comes to the Off-Peg Multiplier, consider using 5-8 on fast L2s where arbitrage opportunities pop up quickly. However, if you're working with chains that have higher latency, it might be best to tone it down to around 2-4.
  • When it comes to the moving average time, aim to keep it between 300 and 900 seconds. This sweet spot helps you dodge that annoying fee thrash, especially when things get a little chaotic with the order flow.

Make sure to tweak your settings according to the arbitrage latency of your order-book partners! While higher off-peg multipliers can really speed up repricing, be careful--if the arbitrage takes longer than you thought, it could seriously affect your organic flow.

Governance/Admin Nuance You Can Exploit in NG

In the new governance setup, there's a cool quirk that you can make the most of: pools now have the flexibility to set their admin fee anywhere from 0% all the way up to 100%. This is a big shift from the old default of 50% we usually saw with veCRV. This change happens once the DAO picks a pool admin using the set_admin function.

What this means for you is that you can tweak the net fees for liquidity providers (LPs) on those special pools while still sending a chunk of the earnings to veCRV or any other chosen fee receiver. If you're aiming to boost your earnings, this might be a fantastic opportunity to check out!

If you want to dive deeper, take a look at the official docs here: Curve Docs.

What’s Still Relevant

The classic 50% admin-fee model remains the standard revenue split for pools and borrowing in DAOs. We collect these funds every week and distribute them in crvUSD to veCRV lockers. When you're mapping out your emissions and fee structures, it's best to stick with this split--unless you've decided to tweak the admin controls for NG deployments. For a deeper dive, check out more details here.

Implementation Note

Just a quick note: it's super important to ensure that any ramping and fee changes get applied gradually rather than all at once. This approach helps us avoid any potential manipulation windows. Also, let's keep those MA windows short--just a few minutes instead of stretching them out for hours--especially for stable pairs. For more info, be sure to check out the details in the Curve documentation!


Cryptoswap NG (Two/Tricrypto): concentrating liquidity that follows price

Curve’s volatile-asset AMM is pretty awesome, and here’s what you need to know about how it works:

  • price_scale: Think of this as the moving "center" where all the liquidity hangs out.
  • EMA price_oracle with ma_time: This takes the edge off those spot trades, so things don’t get too bumpy.
  • Rebalancing only happens when two conditions are met: (a) the shift surpasses the adjustment_step and (b) at least 50% of the realized IL cost is covered by the fees collected. This is a handy way to protect LPs from unnecessary pricing mayhem. You can dive deeper into it over at docs.curve.finance!

Key Parameters and Typical Magnitudes You’ll Encounter

  • mid_fee (that's the minimum fee when the balance is nice and even) and out_fee (the max fee when things are out of whack) are super important to grasp. Generally, you'll find that most production pools sit around mid_fee ≈ 0.26% and out_fee ≈ 0.45%. Plus, fee_gamma ≈ 2.3e‑4 is a key player in how fast fees start to climb as things get unbalanced. These figures are a good starting point, especially if you're working with blue-chip pairs. If you want to dive deeper, check it out here.
  • allowed_extra_profit is the extra arbitrage profit you can make (anything above a 50% baseline) before you even think about re-pegging. Don’t forget about adjustment_step, which is the tiniest change to price_scale when you’re rebalancing, and ma_time, the EMA half-life that plays a key role in how quickly the oracle reacts. If you want to dive deeper into this, take a look at this link.

When you’re getting everything ready for deployment, don’t forget to keep these factory guardrails in mind:

  • A
  • Gamma
  • Fee limits
  • ma_half_time needs to be under 604,800 seconds (which is 7 days)
  • initial_price has to fall within the range of 1e6 to 1e30
  • You can't have any duplicate coins

If you don’t follow these guidelines, your deployment will roll back. For all the details, take a look at the Curve documentation!

Here's a solid configuration for a WBTC/WETH TwoCrypto setup on Ethereum. We want to ensure a balanced order flow using liquid oracles. Take a look at this:

  • A = 15,000-25,000
  • gamma = this is set to the factory default for TwoCrypto NG
  • mid_fee = 0.26%
  • out_fee = 0.45%
  • fee_gamma ≈ 2.3e‑4
  • allowed_extra_profit ≈ 1e8-1e10
  • adjustment_step ≈ 1e11-1e13
  • ma_time = 1,800-3,600 s

If you see that your flow usually bounces back to the average, it's a good idea to start with a tighter (smaller) adjustment step. On the other hand, if you're frequently dealing with whipsaws, go ahead and relax those parameters a bit. Just remember to double-check everything with curvesim before you launch on the mainnet! For more info, check out the Curve docs.

For Tricrypto (like crvUSD/WETH/CRV), the EMA oracle provides the value of each asset (except the first one) relative to coin[0], which is typically the stablecoin. It's important to adjust the ma_time setting to fit your blockchain's block timing and arbitrage speed, since the oracle updates only once per block. For more info, take a look at the Curve documentation.


LLAMMA and crvUSD: liquidation as a banded AMM, not a cliff

LLAMMA operates with a cool setup of 4-50 bands, each functioning like a mini Uniswap v3 range. So, when the price takes a dip and lands in your loan's liquidation zone, LLAMMA kicks in and starts selling off your collateral for crvUSD using a process called soft-liquidation. If the price rebounds and starts climbing back up, it’ll swoop in and buy back during de-liquidation.

Liquidation happens at the band level, which means it's shared among multiple users, and that’s where arbitrageurs come into play. They help keep the AMM’s internal price, get_p, aligned with the external oracle. This arrangement not only makes liquidations more efficient but also reduces those pesky “auction” failures you might encounter in other systems. Want to dive deeper? Check out more in the Curve documentation.

Design Guidance for Treasury-Backed Borrow Markets in 2025

  • Bands: If you think the price is going to be a bit wobbly, you might want to use more bands--like somewhere between 20 to 30. This can help keep your rebalancing a bit smoother and cut down on slippage. But if you're dealing with some solid collateral and prefer to keep things more stable with less frequent changes, then aim for fewer bands, around 6 to 10 should do the trick.
  • Range Width: Place your upper band just a bit above that 30-day high, while the lower band should sit comfortably below a point where you might experience a 99% drawdown on your collateral (consider LSTs in relation to ETH).
  • Oracles: LLAMMA uses Curve oracles and the get_p function, so be sure you’ve got arbitrage access sorted out. Having the right incentives will help keep get_p aligned with price_oracle from one intrablock to the next. For more info, take a look here: docs.curve.finance.

Adoption Datapoint

By 2025, Llamalend (the crvUSD borrowing markets) experienced a massive surge in outstanding debt, more than doubling in Q2! After making a few adjustments to some parameters, we saw some solid improvements in stability. This clearly demonstrates that LLAMMA-based markets really can scale up when the ranges and rates are fine-tuned to hit those utilization targets.

By taking it a step further, mixing this with scrvUSD could really enhance the “flywheel” effect. This combo is set to offer more predictable rates and ramp up the demand for crvUSD.

Take a look at the info right here: (gov.curve.finance)


RouterNG: the practical glue for order flow

RouterNG makes it super easy to pull off slick multi-hop swaps across Stableswap, Cryptoswap, and even LLAMMA paths, all in a single transaction with up to 5 tokens. Developers can quickly snag quotes using the pool interface's exchange/get_dy/get_dx functions, making it a piece of cake to discover the best paths for MEV-aware routers, aggregators, or in-app treasury tools. If you want to take the user experience to the next level, think about adding a “best-execution via Curve” toggle that can leverage RouterNG’s cross-pool paths. For all the details, check this out: (docs.curve.finance)


Fees, gauges, and incentives: setting up your distribution game

  • Admin fees and distributions: So, here’s the deal--the DAO grabs those pool and crvUSD lending admin fees and hands them out every week to veCRV holders in crvUSD. This all kicked off on June 20, 2024! For any new protocols, it's a win-win: your LPs are earning fees right from the pool, and your veCRV strategy (or any collaborations with lockers) is pulling in those sweet crvUSD cash flows. You can check out more details here.
  • veCRV basics: When you lock up your CRV, you open the door to governance privileges, a slice of fees, boosts, and gauge voting. Just a little tip: you’ll need a minimum of 2,500 veCRV to whip up proposals, so factor that into your go-to-market strategy. You might want to think about partnering with a liquid locker if that number feels a bit steep. You can dive deeper into the details here.
  • Vote incentives: Check out platforms like StakeDAO’s Votemarket, where you can actually encourage veCRV/vlCVX voters to direct their weekly emissions to your gauge. It all happens on-chain and even crosses chains! In just two years, they’ve already handed out over $30M! So, make sure you include your vote-ops budget in your emissions plan from the start. You can dive deeper here.

2025 Nuance

Some NG implementations come with this awesome feature that lets you direct custom admin fees (ranging from 0% to 100%) to an admin or a fee receiver you prefer. If you're dealing with one-of-a-kind assets or looking to generate some liquidity without flooding the market with emissions, you can dial down those admin fees to keep your liquidity providers satisfied without needing to mess with a gauge. And as your organic volume grows, you can slowly increase the DAO's share.

Just a heads-up: you can count on having your work scrutinized by governance, so it's super important to document your reasoning clearly. Don't forget to share those P&L simulations too!

Take a peek at all the details here.


Cross‑chain in 2025: where to launch first

Curve is now fully operational on the big players in L1 and L2 networks, and there’s some thrilling news about its 2025 expansion to Hyperliquid’s HyperEVM. In those first few weeks, we noticed some impressive fee activity from certain trading pairs, and Curve seriously leveled up from Curve-Lite to a full-on DEX.

In the world of newer ecosystems like Sonic, partners like CrossCurve are shifting their liquidity over and are turning to Curve gauges to help boost their Total Value Locked (TVL). When you're mapping out your cross-chain strategy, don’t forget to check out where the internal oracles, CCTP rails, and arbitrage opportunities are hanging out. For more info, you can dive into the details here.

Practical Call:

If your stablecoin has found a cozy spot on a shiny new chain (like USDC on CCTP v2), it's a smart move to dive into those Stableswap‑NG pools. But, if you're juggling a token that's more of a rollercoaster ride, you might want to consider the Two/Tricrypto pools, which come with some reliable fee ramps. This way, you’ll give your liquidity providers a bit of a safety net while the price discovery unfolds. Check it out here: (xt.com).


Security and parameter‑hardening checklist

  • Stick to the official factories and those approved pool templates, alright? It’s a good idea to avoid custom forks unless you’ve got a solid team in place for handling formal verification.
  • Keep your oracles neat and tidy:
    • For Cryptoswap, set ma_time to the cautious side; just a heads up, EMAs update every block. It’s a smart move to pair this with stable references that aren’t easy to manipulate, making your monitoring more reliable. (docs.curve.finance)
    • When it comes to Stableswap-NG, stick with short moving average windows and lean on the off-peg multiplier to smooth out any bumps. (resources.curve.finance)
  • Keep an eye out for reentrancy issues: there was a bug in the 2023 Vyper compiler (0.2.15-0.3.0) that let some pool types get drained quite a bit. So, make sure you're using the latest compiler versions and that your reentrancy locks are up to date. Go with canonical factories that have already addressed these risks. This definitely needs to be on your vendor checklists. (coindesk.com)
  • For Cryptoswap, set those rebalancing guardrails: only re-peg when you hit the adjustment_step threshold, and ensure that realized impermanent loss (IL) is covered by fees (at least 50%). This is your main IL governor--don’t let it slide without doing some backtests first. (docs.curve.finance)
  • Simulation comes first: fire up curvesim with your chosen A, fee ramps, gamma, and expected flow to check out LP profit and loss, virtual price drift, and fill quality before you hit that launch button. (curvesim.readthedocs.io)

Two concrete build‑outs (parameterized)

1) USD Stablecoin Hub on a New L2 (USDC/DAI/USDT)

  • Pool type: Stableswap‑NG (3‑coin).
  • Parameters: A = 1,200; fee = 0.04%; off‑peg multiplier = 6; MA = 600 s.
  • Admin fee policy: We’re starting off with a default admin fee of 50% to keep things aligned with the DAO. After 90 days, we’ll reassess to see if we need to make some changes--like possibly dropping it to 35% if we spot LP retention issues but still see good volume.
  • Gauge: If you want to get this going, just make a request through governance. We’ll have some budget set aside for bribes during the first 8 epochs on Votemarket and we’ll also offer referral incentives to pull in market makers. (Check it out here)
  • Monitoring: Keep an eye on those peg spreads compared to CCTP parity quotes. If you notice “fee clipping” happening without the balance bouncing back, don’t hesitate to tweak the off‑peg multiplier.

2) Volatile Tri‑Asset Market (crvUSD/WETH/YourToken) on Ethereum

  • Pool type: Tricrypto NG.
  • Fees: Set the mid_fee between 0.20-0.30%. For the out_fee, aim for around 0.80-1.20%--better to play it safe if YourToken isn’t super liquid. The fee_gamma is roughly 3.5e‑4, allowed_extra_profit sits at about 1e9, adjustment_step is around 1e12, and ma_time is 1,800 seconds.
  • Initial price scale: Start things off by checking out the CEX quotes, and don’t forget to verify the path through RouterNG for scrvUSD inflows.
  • Admin fee: Stick to the default of 50%. The way veCRV alignments usually play out tends to offer more advantages than fiddling with small LP fee changes early on.
  • Risk management: If YourToken experiences any sudden price jumps, it's smart to widen the out_fee and increase the fee_gamma. This will help create a steeper fee curve during those imbalances, which protects against LP bleed. For more details, check this out here.

Operational KPIs you should put on the wall

  • It looks like the virtual_price (LP share value) and xcp_profit for Cryptoswap are just kind of hanging in there. This could mean the fee ramps are a bit too low, or maybe the rebalancing is happening more often than it needs to. If you want to dig deeper, you can check out the details here.
  • There's a clear gap between price_scale and EMA price_oracle that's worth noting. Those ongoing discrepancies might be a sign of some arbitrage friction or perhaps the ma_time is lagging a bit. If you're interested in more info, take a look here.
  • If you notice the off-peg dwell time for Stableswap stretches over 15 minutes during normal market hours, it might be time to bump up the off-peg multiplier or tweak the MA. You can get the full guidelines here.
  • It's pretty intriguing to watch how crvUSD borrow utilization and scrvUSD inflow rates are moving. Healthy pairs tend to show an increase in utilization along with steady scrvUSD inflows after rate cuts. Want to explore further? Check it out here.
  • Don't forget to keep tabs on the chain-level mix. It's super important to understand where your swaps and fees are actually happening. The data from 2025 shows a notable non-Ethereum share, and Hyperliquid has made a quick surge since its launch. Make sure to allocate emissions wisely. You can read more about it here.

Emerging 2025 practices we recommend

  • Admin‑fee staging on NG stables: Start things off at 50% to keep our DAO nice and in sync. For those more niche or exotic pools without gauges, think about dropping it temporarily (somewhere around 5-20%) just to keep the LPs satisfied, relying solely on fees for now. And hey, don’t forget to set up a reversion schedule! (docs.curve.finance)
  • scrvUSD as base liquidity: Team up your USD rails with scrvUSD to tap into that “low‑risk yield” vibe and ramp up crvUSD demand. Just make sure to kick this off with some clear communication about how fee distribution works (veCRV earning in crvUSD is an easy and appealing story for treasuries). (news.curve.finance)
  • Cross‑venue routing: Get RouterNG to play well with your aggregator at those CCTP-enabled spots. Start by seeding a solid core set of permissionless pools on Hyperliquid or Sonic, and once you notice some organic volume rolling in, feel free to request those gauges. (docs.curve.finance)
  • Security posture: Make factory templates a requirement; let’s not allow any Vyper builds with those annoying vulnerable reentrancy locks. Also, it’s smart to include pre‑deploy checks in your CI/CD setup to confirm compiler and bytecode fingerprints. (coindesk.com)

Build checklist (copy/paste into your PRD)

  • Pool Type and Chain(s)
  • Token List, Decimals, and Price Source Sanity Checks
  • Stableswap‑NG: A, fee, off‑peg multiplier, MA seconds
  • Cryptoswap NG: A, gamma, mid_fee, out_fee, fee_gamma, allowed_extra_profit, adjustment_step, ma_time, initial_price/price_scale
  • LLAMMA (If You're Borrowing): Bands count, liquidation range bounds, oracle source, arb incentives
  • Admin Fee Policy: Default vs customized NG admin and fee receiver
  • Gauge Plan: Bribing schedule/budget (Votemarket) and liquid‑locker partners
  • RouterNG Paths and Aggregator Integration Tests
  • Curvesim Backtests and Sign‑Off Criteria
  • Security Checks: Compiler versions, factory addresses, reentrancy tests
  • KPI Dashboard: Virtual_price, xcp_profit, price_scale-EMA divergence, off‑peg dwell, crvUSD utilization, chain mix

Final word for decision‑makers

Curve's 2025 stack is a game changer! It lets you adjust liquidity based on how your asset behaves, instead of forcing your assets into a strict curve. Whether you're getting ready to launch a stable hub, a funky tri-pair, or a credit backed by LLAMMA, your success really depends on nailing down the right parameters rather than relying on some heroic feats.

Start off with the presets and ranges we've talked about earlier. Use curvesim to run some simulations, deploy everything through a factory, and then make those final tweaks with some fee/peg guardrails and a smart incentives plan. After that, just sit back and let RouterNG and cross-chain deployments work their magic to ramp up your distribution. Want more info? Check it out here: (resources.curve.finance)


References and docs you’ll need open while building

  • If you're looking to create a Stableswap‑NG pool, we've got all the juicy details on parameters like A, fees, off‑peg, and MA. Check it out here: (resources.curve.finance)
  • Ready to dive into Cryptoswap NG? We’re breaking down A vs gamma, rebalancing, and EMA for you, so get ready for some solid insights: (docs.curve.finance)
  • Want to know everything about the Tricrypto/TwoCrypto oracle, including fees and admin controls? Here’s the place to get the lowdown: (docs.curve.finance)
  • Don’t miss out on the info about LLAMMA and liquidation bands for crvUSD. This one’s a must-read! Get more details here: (docs.curve.finance)
  • Curious about savings-crvUSD? We’ve got a handy explainer just for you. Check it out: (news.curve.finance)
  • Looking for the scoop on RouterNG? Our solid overview has you covered: (docs.curve.finance)
  • Get all the details on factory deployer API bounds, including ma_half_time and fee ranges. You’ll find all the nitty-gritty here: (docs.curve.finance)
  • Want to understand fee distribution in crvUSD and the basics of veCRV? It’s all right here for you: (resources.curve.finance)
  • Check out the Llamalend 2025 metrics for some valuable insights - there’s plenty to learn! More info here: (gov.curve.finance)
  • Stay in the loop on Hyperliquid deployment and get those chain activity snapshots. Here’s where you can catch up: (news.curve.finance)
  • Want to take a closer look at the 2023 Vyper incident? Here’s a retrospective on the historical security baseline and what went down: (coindesk.com)

7Block Labs: Your Go-To Resource for All Things Crypto

At 7Block Labs, we’ve got your back on a variety of tasks. Whether you need to parameterize pools to match your flow, simulate LP/arb economics, or create an admin-fee policy, we’re here to help.

But that’s not all! We’ll also take care of those factory deployments and link up RouterNG paths across different chains for you. It's all about making your crypto journey smoother and more efficient!

Like what you're reading? Let's build together.

Get a free 30-minute consultation with our engineering team.

7BlockLabs

Full-stack blockchain product studio: DeFi, dApps, audits, integrations.

7Block Labs is a trading name of JAYANTH TECHNOLOGIES LIMITED.

Registered in England and Wales (Company No. 16589283).

Registered Office address: Office 13536, 182-184 High Street North, East Ham, London, E6 2JA.

© 2026 7BlockLabs. All rights reserved.