Alternative Transaction Fee Policy

Original Post: Commonwealth

This proposal is the writeup from the discussion here: Commonwealth

Long discussion time because this wouldn’t be implemented until v16 anyway.

This proposal defines standards that make a token acceptable for inclusion in the fee token whitelist as well as performing the first review to these standards. This whitelist should be frequently reviewed in order to ensure that new users of Osmosis are able to pay gas fees for their first transaction.


Transaction fees on Osmosis have been payable in assets other than OSMO since v5. This is managed by the txfee module which specifies a denom to be accepted and an OSMO pool to use as a spot price for the quantity of that denom to accept. Any transaction fees paid in these denoms are collected in the module address and converted into OSMO for distribution to stakers at epoch.

This whitelist was initially set as all OSMO paired tokens with usable liquidity on 1st December 2021. Since this point there have been many new tokens listed on Osmosis that fees could be paid in, enabling new users to fund the transaction fee for their first trade on the chain. This becomes more important with the minimum fee requirement from Proposal 354 being implemented in v15.

As tokens used for fees are converted to OSMO at epoch, all tokens with sufficient liquidity to perform this swap should be suitable for use as fees to minimise the incidence of first-time users being without a usable fee token. These pools should be consistent, and trusted by Osmosis Governance to be consistently liquid.

  • An OSMO pool containing at least 5000 paired OSMO of liquidity.
  • That has maintained this liquidity for at least 30 days.
  • A maximum Swap Fee on this pool of 0.5%

This proposal does not indicate a requirement for for all tokens possible to be added or removed in order to keep maintenance manageable as the number of tokens listed increases. Any suggested token in the discussion period for a review proposal that meets these criteria should be included in the review proposal.

According to these criteria this proposal makes the following changes to the whitelist resulting in 94 tokens being able to be used for gas fees on Osmosis.

Changed Pool (1)

  • ION

Removed (2)

  • IXO
  • BOOT

Added (71)

  • WETH
  • WBTC
  • stOSMO
  • DAI
  • AXL
  • INJ
  • STRD
  • MARS
  • LORE
  • IST
  • WBNB
  • axlUSDT
  • DOT
  • JKL
  • FET
  • SOMM
  • KAVA
  • qOSMO
  • BLD
  • QCK
  • LUM
  • FLIX
  • stIBCX
  • ARB
  • TORI
  • CHEQ
  • UMEE
  • WFTM
  • CTK
  • KUJI
  • GRAV
  • NCT
  • DSM
  • CMDX
  • BAND
  • PLQ
  • GLTO
  • SWTH
  • DEC
  • TGD
  • LINK
  • VDL
  • PEPE
  • LAMB
  • NETA
  • GKEY
  • L1
  • ACRE
  • WETH.grv
  • SKOJ
  • DARC
  • LUNA
  • DIG
  • WYND
  • ODIN
  • USDC.grv
  • MNTL
  • BUSD
  • DHK


  • ATOM
  • USDC
  • AKT
  • CRO
  • SCRT
  • JUNO
  • EEUR
  • ION
  • XPRT
  • MED
  • BCNA
  • NGM
  • USTC
  • IRIS
  • LIKE
  • DVPN
  • BTSG
  • XKI
  • LUNC
  • IOV

Full Details on Pools here: Transaction Fee Whitelist - Google Sheets

Target on-chain date: 13th July 2023

1 Like

Updated with the above numbers for when v16 is live.

In summary:

  • 71 new assets would be added to the permitted fees
  • ION changes to Pool 1013
    • Assuming the migration proposal passes
    • Both ION pools are 0.5% swap fee, I raised the cutoff from 0.3% because of this but also aware that we want as low a swap fee on transaction fees as possible.
    • Oddly people do use ION as a fee despite it only being internally on Osmosis.
  • IXO and BOOT both to be removed as they fell off the bottom of this.
  • CMST and FIL are not added despite getting incentives as they have insufficient liquidity.
    • Do we want a carveout for incentivised pools automatically being added here, this would solve ION also.



Regarding ION: Migration proposal? Does this have to do with the fact that we are incentivizing Pool #2 and the ION DAO incentivizing Pool #1013? In any case I believe we should stop incentivizing ION. Period. If any other DAO was incentivizing a different pool than the one we were, such as Jackal starting to incentivize a JKL/OSMO pool that wasn’t Pool #832, or Agoric starting to incentivize a BLD/OSMO pool that wasn’t Pool #795, I have a strong feeling there would be calls to stop incentivizing the token. The ION DAO has been incentivizing Pool #1013 for about a month and a half now, and the spike in volume it has caused is rather clear when just looking at a bar chart. I also don’t understand why the swap fee standard needed to be raised to 0.5% just for ION, especially since the ION/ATOM pool has a 0.333% swap fee. The ION DAO should lower the swap fee on of the ION/OSMO pools to 0.3% if they want to see ION be an accepted tx fee token. People also seem to use BOOT too. Should we lower the threshold so that BOOT can stay on the list since the swap fee standard was raised for ION?

Regarding CMST & FIL: I could go either way on these two. Personally, I would like to see all stablecoins accepted though, that the same flat fee be set, and swapped with Community Pool OSMO rather than liquidity pool OSMO at the same exchange rate.

Johnny Wyles


Yes - they’ll be posting something up later today. Aiming to move to 50:50 from the 80:20 as the 80:20 was a more experimental pool at launch and 50:50 will work better with SFS and/or Supercharged migration.

Can of course propose that we stop entirely, I’m of the opinion that we should be incentivising projects building directly on Osmosis though.

I don’t know why they keep setting weird swap fees. There were issues with the IBCX pools too.

Johnny Wyles


Changed this proposal to define a set of criteria based on feedback and perform the initial review. Hopefully the capability will be included in v16 then governance can add the list, which is probably the better way of managing this. Have made a github issue for it: Fee Tokens Whitelist: Allow modification of multiple denoms in same proposal · Issue #4693 · osmosis-labs/osmosis · GitHub

Until then, OSL mentioned that several users have been stuck having transferred USDC across, so I’m going to get a single addition proposal up for USDC.axl ASAP

Johnny Wyles


Confirming that the ability to add multiple will be added in v16. Will put together a full list of the additions before then and aim for on chain immediately after v16 launch.



So I saw this on Twitter. Thought it was a pretty interesting user friendly feature and something that Osmosis may want to consider adapting/modifying to fit its needs. (Don’t mean for this to screw with any of your plans though. )

On face value, it seems that there would be fewer long term headaches with such an approach that would stem from having to maintain a manageable list of approved tx fee tokens. It seems that such an approach would provide those that may just have an LST to be able to seamless acquire OSMO to pay for txs and allow for a simple liquidity standard to be set so that different token standards don’t need to be created for each LST base token, or any issues that may arise if just one LST is whitelisted, like stATOM because it is available on CamelotDEX on ARB.

Such a feature appears that it would allow for any and all major bridged tokens to be converted, especially new ones (if the liquidity standard is set low enough or exceptions made), and would particularly be useful if/when bridging costs ever comes down.

I think there is still value in allowing there to be multiple transaction fee tokens that Osmosis will accept, but by taking an approach similar to Shade’s, whitelisted tokens perhaps can be easily limited to just ATOM and the four major stablecoins on Osmosis (USDC, DAI, IST, and USDT). This would perhaps allow room for governance, if it wishes (and I think is an idea worth exploring) of setting a flat minimum stablecoin tx fee amount or standard conversion rate where the tx fee whether a user chooses to pay in USDC, DAI, IST, or USDT, pays the same, like how it is on Crescent and perhaps facilitate OSMO purchases from the Community Pool at spot price at the time of epoch to starting building up a ‘stablecoin reserve’. This would provide stakers a slightly better deal as the 0.2% swap fee can be avoided. Additionally, the ATOM that is collected in tx fees could be used to purchase OSMO from ProtoRev, and avoid the 0.2% swap fee as well, as I still believe using ProtoRev ATOM revenue to match incentives for ATOM LST pools would be more efficient and effective than OSMO incentives if an LST incentive category is going to be created.

(Side note: Buying and burning OSMO with ProtoRev ATOM revenue doesn’t make any sense to me if an LST incentive category is going to be created, and ATOM LST pools are to incentivized with OSMO as I would guess that the amount of OSMO being spent on such incentives on a daily basis for just ATOM LST pools would be at a minimum roughly equal to amount of OSMO that could be purchased using daily ProtoRev ATOM revenue. Wouldn’t mind being proven wrong here though. ATOM incentives seems like it would be more attractive to ATOM LST pool liquidity providers, and thus effective in building liquidity, but also more efficient than OSMO incentives as I would venture to guess that most ATOM LST liquidity providers are likely to swap most of their OSMO rewards for ATOM to be able to acquire more ATOM LSTs)

I don’t see a problem with moving forward with current plans, but just thought that such an approach may be something to work towards as it seems like a solution that would be easier to manage in the long run.

Johnny Wyles


@RedRabbit33 Totally possible - the only faucets are community run right now though I believe so would need to make something more sustainable. Since fees are a source of revenue I’ve seen people disapprove of automating subsidising them too much.

If we follow the criteria above then we’ll still have those in place, but 99.9% of people will just be able to use what they come with. Adding tokens as fees would be part of a major launch on Osmosis.

Togg LeTek


To @Leonoor’s Cryptoman‘s point, I love a good factual metric we can track.

I understand the approach Johnny and I want to mention that an automated system on-chain would 1000% be the ideal route to go, yet, the development time to implement something to that nature is just not possible to add to the roadmap for a while. I get that.

Personally, I would like to see the passing of a proposal that makes the above a stipulation, that it gets added to the dev teams ever growing list of things to do.

In terms of the list I think we all would have opinion on what to change, add, or remove, but simply saying “5k in OSMO paired in a pool” is a good start.

Now, I will ask, on the protocol are you aware if the txfee module pays the swap fee for a pool? If so, I would like to see another maximum fee % stipulation happen.

Johnny Wyles


Good point on the maximum fee %.

Looks like adding a multi-message version of this might not be out of scope for v16 too so I’ve delayed for now. Will either end up a text prop when v16 is finalising or a parameter change when it is live. The fewer control mechanisms we move off-chain the better!

I also meant to add this dashboard I found today and totally forgot until I saw your post: Has some pretty good sources for adding the most effective tokens and removing some others.

Leonoor’s Cryptoman


It might be a good move to watch how this progresses after the v15 upgrade.

Right now a lot of people might not use the fee payment method yet, because you can send txs for 0 $OSMO on chain. But when that changes, this whole overview might change as well.

Leonoor’s Cryptoman


I love it. Sounds like a good summary and I like the flexibility of a 5k OSMO threshold. A nice factual metric.

Just for the process; during the V15 upgrade we will create the next list which is ok to use to pay for fees? And after that at each major upgrade we will revise that list, right?

Johnny Wyles


Sort of - I tried to make it so that revising this list wasn’t essential for an upgrade to occur. But is possible to do by anyone with some technical knowledge. This isn’t perfect by any means… I don’t even think we should have a whitelist that gets revised, just automatic usage, but that’s far more complicated to implement than making guidelines around an existing system.

Won’t be in v15 since that’s already on testnet and should be live before this passes, but v16 yes.

Bumping this since it will be going on chain on Thursday after the upgrade.
Adding 71 new assets as gas fees.
Removing 2, changing 1’s pool.
Total of 94 assets able to be used for gas fees on Osmosis.
Few notables that don’t make the 30 day cutoff such as NTRN and ARCH, but we will need another review of this after the CL pools are up and running anyway.

Good to go for me!

We would need to review the list on a regular basis anyway at every major upgrade. So missing one only has the effect that it takes some time before being added.

1 Like