Proposal: Transitioning the Moonbeam Treasury to Stablecoin Payments

Summary

We, the @TreasuryCouncil, propose enabling the Moonbeam Treasury to make payments in stablecoins for service providers that rely on real-world US-Dollar or Euro expenses. To achieve this, we suggest adopting a systematic Dollar-Cost Averaging (DCA) strategy to convert a portion of the Treasury’s GLMR tokens to USDC or USDT. This approach would reduce the total token expenditure, minimize volatility-related overhead, and improve financial predictability for all parties involved.

Background and Rationale

The Treasury Council has identified a recurring challenge: Funding services with real-world US-Dollar or Euro expenses while paying in GLMR tokens, which fluctuate in fiat based value. Currently, we’re using a 30-day Exponential Moving Average (EMA) to account for these volatilities, while at the same time many treasury proposals include safety margins to additionally compensate for token price fluctuations either explicitly or implicitly.

We firmly believe that the Treasury could reduce its total token expenditure by paying out in stablecoins for real-world expenses that ultimately need to be converted to fiat currencies. This approach has precedent in the Polkadot ecosystem, where the Polkadot Treasury has been gradually converting DOT to USDC and USDT and moved to stablecoin payouts.

Technical Implementation

We propose leveraging Hydration Network’s Omnipool for GLMR token conversion through a DCA strategy using XCM and our sovereign account on Hydration. This method ensures trades will be split into small enough chunks over an extended period of time to minimize slippage and prevent arbitrage opportunities.

The implementation flow would be as follows:

  1. Transfer GLMR funds from the Moonbeam Treasury account to the Moonbeam sovereign account in Hydration
  2. Create a DCA schedule to swap the GLMR tokens for USDC/USDT at predetermined intervals
  3. Transfer the acquired stablecoins back to Moonbeam via XCM

The XCM call would allow for either selling fixed amounts of GLMR or purchasing fixed amounts of stablecoins, providing flexibility in our approach. The code to generate the call data is available at
PolkaTools/treasuryDCAHydration.ts at main · albertov19/PolkaTools · GitHub (commit hash 5946d9f3545ac22812a7dd4e0ce3e34e2a27ca71)
The Treasury Council has thoroughly discussed technical aspects with MBF’s XCM specialist, Alberto, who will provide support throughout the potential implementation process.

Market Impact Considerations

To minimize market impact on GLMR, we propose starting with converting just 25% of the estimated monthly constant treasury inflow to stablecoins. This conservative approach would establish a stablecoin reserve without significantly impacting GLMR price and allow us to stay solvent with GLMR payments at the same time over the duration of the transition period.

In absolute numbers, this would translate to approximately 1,000 GLMR per day being converted to stablecoins — a minimal amount compared to GLMR’s daily trading volume, GLMR-Stablecoin pool’s depth’s on major DEX’es and other relevant metrics.

Additionally, we propose implementing a lower-bound price threshold of $0.045 as a protective measure. If GLMR’s price were to drop below this threshold (approximately one third or 35% below its current value of ~$0.069 at the time of posting), the conversion would temporarily pause until the minimum price threshold is reached.

Anticipated Benefits

  1. Reduced Treasury Expenditure: By paying directly in stablecoins for real-world expenses, we eliminate the need for safety margins that compensate for price volatility.

  2. Improved Budget Predictability: Recipients with fiat expenses will have certainty about the dollar value of their treasury grants.

  3. Lower Price Impact: DCA strategy distributes selling pressure over time, resulting in less market impact compared to lump-sum conversions by grant recipients.

  4. Treasury Resilience: Building a stablecoin reserve improves the Treasury’s ability to fund critical infrastructure and operations during bear markets.

  5. Less Friction: Stable payouts reduce concerns about price swings affecting grant values.

Implementation Timeline

Runtime upgrade RT3700 is scheduled to come into affect in June, providing the technical capabilities to the on-chain Treasury for stablecoin payouts to be executed. Building a substantial reserve of stablecoins to leverage for significant expenses is likely to require a more considerable amount of time.
For now, this program will only affect the Moonbeam Treasury, not the Moonriver Treasury, due to technical considerations.

Despite recent market movements, we believe this strategy to be appropriate regardless of market timing, as expenses need to be paid regardless, and through this program, are expected to be reduced in total GLMR terms. Spreading trades over time will minimize market impacts and ensure best averaged value. Additionally, some diversification is generally perceived to have a net positive effect towards both risk-aversion and performance.

Should this proposal be perceived positively overall, we the Treasury Council may consider to kick things off in due time.

Community Feedback Requested

Beyond general support or opposition, we welcome community feedback on several key aspects of this proposal:

  1. Stablecoin Selection: Do you prefer USDC or USDT as the primary stablecoin for treasury diversification?

  2. Conversion Percentage: Is 25% of treasury inflows an appropriate starting point? Should this be higher or lower?

  3. Price Threshold: Is $0.045 an appropriate lower bound for GLMR price to pause conversions?

This proposal is meant to initiate a conversation about optimizing our treasury operations. We welcome your thoughts, concerns, and suggestions as we work together to build a more continuously resilient and efficient Treasury for the Moonbeam ecosystem.

8 Likes

Hey @_yrn, Great proposal, I think the approach is healthy and well thought out.

I really like the idea of putting an automatic cut-off at $0.045, it’s an excellent security measure to avoid selling at a loss in unfavorable market conditions.

That said, I still wonder about the timing: at ~$0.067, it’s still a fairly low price historically. I understand the DCA’s interest in smoothing out the risks, but I wonder if this is really the best time to start the conversion.

Two small suggestions:

  • Just to be clear, is it planned on USDC and USDT, or only one of the two? I’m thinking that mixing the two might be a good idea, in case one of them has a problem.
  • It would be useful to set up a checkpoint in 3 months or after a certain amount of volume has been converted, to make an initial assessment and adjust the strategy if necessary.

Thanks a lot for the work :clap:

4 Likes

Hey @rom1.dot - thanks for the feedback.

W.r.t. the USDC and/or USDT:
We’re talking about a volume of approx 1000 GLMR per day which translates to roundabout 65$ at current prices. If we split this in two different stablecoins we won’t be able to really spend it. Treasury proposals are usually starting at 4 or 5 figures, that’s why I’d prefer to stick with one.

My preference would be USDC as USDT is not considered MICA compliant for the european market.

To your second point: I absolutely agree that this will be time-boxed and re-evaluated.

To @_yrn - great proposal and I absolutely agree with the proposed numbers :pray:

5 Likes

Thanks for the reply @dev0_sik, totally get your point.

Given the low volume, it makes sense to keep things simple and stick to one stablecoin for now.

I also share your preference for USDC, especially with the MICA angle in Europe, it’s definitely the safer bet.

Glad to hear there’s a re-evaluation planned, that’s exactly what I was hoping for.

Thanks again for the clarity and the work you’re all doing, this kind of evolution in treasury strategy is great to see :clap:

2 Likes

For informational purposes - the DevRel team has tested the code that generates the call data in Chopsticks and it is all good.

Ideally with the introduction of RT3700 - we can test the full flow of swapping GLMR for USDC and then transferring it back and doing a Treasury spending in stables, to confirm the entire flow.

On another note, the furrent flow will leave the USDC in the Moonbeam Sovereign account that is in Hydration. We will need another governance proposal to move it back to the treasury account in Moonbeam (via XCM).

Also, I just thought about this proposal. The treasury has also 500k GLMR in Hydration

5 Likes

That’s a wrap!

Referenda #114 is currently live!

With your valuable feedback and refinements, the Treasury Council is pleased to share the finalized plan for transitioning the Moonbeam Treasury to stablecoin payments via DCA strategy.

Here’s the adjusted plan that has been proposed and is now up for voting:

Treasury Stablecoin DCA Proposal Finalized Plan

Plan Summary

This initiative aims to reduce GLMR expenditure, mitigate volatility, and enhance financial predictability for the ecosystem.
The Treasury will convert 1.8 million GLMR — equivalent to roughly 25% of the expected Treasury inflows over a 6 month period — to USDC.AH (Polkadot Assethub native USDC) over 6 months using Hydration Network’s Omnipool and XCM transfers. These funds will be comprised of those 1.8M GLMR of these expected inflows and not add the roughly 456,000 GLMR from the Treasury’s existing Hydration GLMR LP position ( <= click the link to check its current size) in Hydration Network for now. This was decided by the Council and Alberto to get started asap without adding additional XCM batch call complexity which would have required additional time, effort. Still, this will be on our agenda in the weeks ahead — thanks to @AlbertoV19 for bringing this up.

Approximately 2.400 GLMR will be traded every 3.600 blocks (~6h), yielding ~730 trades over a 6 months time period.
Hydration Network has recently transitioned to 6 seconds blocktimes which was being accounted for in our calculations. A $0.05 price floor was incorporated that would pause conversions if GLMR’s price would fall significantly (>50% below $0.10 from when the code was put together). A $0.05 price floor was unanimously favoured over as a $0.045 price floor again to speed things up significantly as the latter would have required refactoring of previously tested XCM code.
With regards to HDX transaction fees, our Sovereign Account’s current balance of 52,705 HDX should very much be sufficient for the expected amount of swaps’ fee costs.

Notes

  • Stablecoin Choice: USDC.AH will be the stablecoin of choice due to MiCA compliance, per community preference and as the only stablecoin choice over USDT or Moonbeam Wormhole USDC for increased Hydration accumulation and Treasury payout simplicity.
  • Technical Execution: Post-RT3700 (expected to go live in June 2025), Treasury stablecoin payouts will be enabled from the tech side of things. @AlbertoV19 has been taking care of implementing our needs into the specific XCM call data for our dedicated purposes, with Treasury Council verification. Chopstics was used to test the XCM code and ensure reliability.
  • Governance: The 2M GLMR Root proposal deposit will be funded by the Treasury. A separate governance proposal at the end of the 6-months DCA period will address transferring USDC.AH back to Moonbeam.

Expected Benefits

This strategy will eliminate volatility-related safety margins, ensure predictable fiat budgets, minimize market impact, and build a more diversified Treasury for increased resilience and predictabilities.

Community Input

Your feedback shaped the plan: USDC.AH focus (@dev0_sik, @rom1.dot), the $0.045 threshold (slightly increased to $0.05), and a 3-month checkpoint (@rom1.dot). The 25% inflow conversion and DCA strategy over a 6 month period addresses timing concerns.

Next Steps

The Council has submitted the governance proposal as the XCM call data has been carefully crafted and tested. After the 6 months DCA period an evaluation review will be conducted by the Council and all dials looked at carefully.

We’re always welcoming & appreciating any thoughts and comments on any of the specific details and the entire endeavour.
Thank you, @rom1.dot, @dev0_sik, @AlbertoV19, and the community for your collaboration!

Best regards,
@_yrn on behalf of the @TreasuryCouncil

Notes

6 Likes

Treasury Update: DCA #2 — GLMR → USDC via Hydration

This batch call initiates the second six-month GLMR → USDC DCA, extending the Treasury’s strategy of systematically converting GLMR inflows into stablecoins to support stable-denominated payouts. The goal remains straightforward: Remove discretionary timing from conversions, have predictable USD-denominated payouts for proposing parties, and make treasury cash flows predictable rather than reactive. Instead of trying to time markets, the Treasury continues to favour a fixed, repeatable process that reduces balance-sheet volatility and simplifies long-term planning.

DCA #1

DCA #1 is effectively complete. It accumulated 92,946.10 USDC, which will be transferred back to Moonbeam as part of this batch, and left 468,954.43 GLMR on Hydration after execution stopped when the lower GLMR price boundary was reached. That same boundary is now lowered to $0.001 in this call, ensuring the new DCA continues regardless of market conditions, as the Treasury must perform payouts either way and does so more effectively and more predictable in stablecoins. In addition, 430,000 GLMR was previously withdrawn from the Omnipool LP position to consolidate balances ahead of the new schedule.

DCA #2

For DCA #2, the Treasury is committing 100% of its projected GLMR inflows over the next six months. At roughly 40,500 GLMR of inflows per day, this corresponds to approximately 7.29M GLMR over 180 days. With around 14.8M GLMR currently held by the Treasury on Moonbeam, this commitment is fully covered upfront, already. Accounting for the ~469k GLMR already on Hydration, the Treasury will send ~6.82M GLMR, rounded up to 6.9M GLMR for operational simplicity. The DCA will execute roughly every 14,400 blocks (~24 hours at 2s blocks), swapping ~38,300 GLMR for USDC per day.

Implementation Details and Batch Call

One implementation detail is worth highlighting. The DCA is configured without a fixed maximum sell amount on Hydration. Large GLMR transfers will trigger Hydration’s circuit breaker mechanism, temporarily withholding liquidity (currently up to ~2.6M GLMR for up to 24 hours). Setting a hard maximum risks failed executions when the full balance is not immediately available. Allowing the DCA to run until funds are exhausted keeps the process robust and allows it to continue seamlessly if topped up later, without additional scheduling complexity.

The batch call also includes required HRMP channel management actions and is submitted atomically (i.e. all calls in the batch execute successfully, or if any one call fails, everything reverts – no partial execution) via utility.batchAll. Full calldata and the associated preimage are provided for transparency, and the transaction has been tested end-to-end using Chopsticks to validate expected behavior prior to enactment by our XCM magician @AlbertoV19.

Encoded calldata:

0x1e02086b0305010100c91f000105010200c91f05000100a0724e180900000000000000000000e46b0b04010100511f04000103006d6f646c70792f747273727900000000000000000404010300a10f043205e5140007806803a415000000000001070050d6dc01824f12000100011e00081e0300016d6f646c70792f74727372790000000000000000670b05010100c91f05000101007369626cd407000000000000000000000000000000000000000000000000000005040001040a001f0000e417e86fc0cd21b50500000000006b0305010100c91f000105010200c91f05000100407a10f35a00000000000000000000a50142007369626cd4070000000000000000000000000000000000000000000000000000403800000000000000000000000000000000000001090001983a00000010000000160000000000f034e7e5453f1c0800000000000060694802000000000000000000000000000001070050d6dc01824f1200010001

Preimage hash:

0xfd5d299bf5a2ffb3381ba599a10c0fc59eb6fa2347dcf7a2ac5ca4e563aa2f22

Closing Note

This batch delivers the first USDC over to the Moonbeam Treasury on Moonbeam. Since Runtime Upgrade 3700, the network natively supports stablecoin treasury payouts, making this the final step prior to paying contributors and service providers directly in stables! :partying_face:
Beyond the mechanics, DCA #2 reflects a continued focus on operational reliability and measured progress — building treasury infrastructure that works quietly and predictably in the background while governance focuses on higher-level decisions.

Best regards
Yaron on behalf of the @TreasuryCouncil

2 Likes

Referendum 145 is up for vote :ballot_box_with_ballot:

1 Like

Wow…Dca1 is now lowered at 0.001$ from 0.05$ :rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl::rofl:

It seems that there are not too high expectations for the glmr price. You could have passed 0 :sweat_smile:

Hey @Raus_George,

Thanks for calling out the change to the lower boundary during stablecoin accumulation. I’ll focus on the substance rather than the emojis.

Yes that the boundary was lowered significantly — that’s well observed! Where the conclusion goes off track is in interpreting this as a price expectation. It isn’t.

This proposal is NOT a directional bet on GLMR, bearish or bullish. The Treasury isn’t in the business of price predictions. What we are dealing with is a very practical constraint: we regularly pay service providers whose costs are denominated in USD or EUR. Even when they accept GLMR or MOVR, they end up swapping to stables anyway to cover their fiat expenses — often with added volatility buffers baked into proposals. That’s understandable, but it’s also inefficient.
Paying directly in stablecoins removes that friction.

A long term DCA into stables combined with stablecoin payouts delivers budget predictability and is very, very likely to reduce total Treasury outflows over time.

The lower bound is simply a circuit breaker to avoid selling under stressed market conditions not a statement about where GLMR “should” or “will” trade. Price can go up, down, or sideways — the logic of our strategy stays the same.

If you disagree with the mechanism or specific parameters, happy to discuss that here constructively — that’s exactly why this proposal is up for feedback.
Hope that clears it up.

1 Like

Just putting the value of 0.001 on the Moonbeam forum, in a possible sale of Glmr for the stablecoin necessary for monthly expenses, does not bode well for the reader on the Forum. It is inconceivable and outrageous that you have exceeded this value. I would have understood a 0.01 because we don’t have much time left and we are already there, anyway, but 0.001? I hope that this project will come back, because it is getting worse and worse, referring to the Glmr price. I think that the team would also benefit from a Glmr-Usd swap at the price of at least $ 0.10 to pay its monthly dues. I am quite worried about this and I hope that we do not go to $ 0.001 because there Glmr will be bankrupt just like us. I hope that you know what you are doing there and I hope that you do your best to take care of the project so that return at an acceptable price. Success in what you do.

Again, this parameter is not price speculation, prediction, or signalling, but simply a Circuit Breaker.

An xcm root proposal goes a long way and once live it isn’t stopped at the click of a button.
The DCA process pauses if GLMR trades below that level — no forced selling at that price. A clearly defined safety stop in case of highly unlikely, disruptive events (ex.: liquidity issues, market dislocations, any unexpected edge cases). A preventative measure that is better to have implemented than not or set to 0.

If you still find this “outrageous” and suggest a circuit breaker price of $ 0.10 (which is 5x from here) that would prevent the DCA from executing at all and defeat its purpose. Doesn’t make any sense.

Nobody want’s GLMR to go to $ 0.001 — least of all the Moonbeam Treasury Council and we do not expect that by putting in a circuit breaker parameter.
I understand that seeing a very low number is unsettling, but this is about safety not expectation.

3 Likes