In order for your proposal to go to a vote you must explicitly request a vote, ideally via a reply on the forum.
We only start snapshot votes every Thursday. There is no minimum required discussion time but common practice is to allow a week or so.
In the case of an L2 gauge please note there is a one week delay in BAL emissions. i.e. if the gauge gets votes in a voting round that ended on June 8th, the pool would see emissions begin on June 15th. Additionally any L2 gauge getting less than 0.1% of the vote might not see emissions bridged every week due to gas costs.
If you want to add a gauge for your pool to receive BAL emissions, please create a new topic in this category following the template which will appear upon creating the new topic.
Note that after you create a pool you must create a gauge for it before you start a governance proposal. Include the address of the gauge you deployed in your proposal.
For pools on Ethereum
This is the gauge factory on Ethereum. Simply call thecreate
function with your pool’s contract address. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
.
For pools on Polygon
- This is the child chain liquidity gauge factory on Polygon. Call
create
function with your pool’s polygon contract address.- This is the Polygon Root Gauge Factory - call
create
using the contract address on polygon you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your polygon root gauge that should be included in your gauge proposal.
For pools on Arbitrum
- This is the child chain liquidity gauge factory on Arbitrum. Call
create
function with your pool’s arbitrum contract address.- This is the Arbitrum Root Gauge Factory - call
create
using the contract address on Arbitrum you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your arbitrum root gauge that should be included in your gauge proposal.
For pools on Optimism
- This is the child chain liquidity gauge factory on Optimism. Call
create
function with your pool’s optimism contract address.- This is the Optimism Root Gauge Factory - call
create
using the contract address on optimism you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your optimism root gauge that should be included in your gauge proposal.
For pools on Gnosis-chain
- This is the child chain liquidity gauge factory on Gnosis. Call
create
function with your pool’s gnosis contract address.- This is the Gnosis Root Gauge Factory - call
create
using the contract address on gnosis you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your gnosis root gauge that should be included in your gauge proposal.
For pools on Polygon zkEVM
- This is the child chain liquidity gauge factory on Polygon zkEVM. Call
create
function with your pool’s polygon zkevm contract address.- This is the PolygonzkEVM Root Gauge Factory - call
create
using the contract address on zkEVM you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your polygon zkevm root gauge that should be included in your gauge proposal.
For pools on Avalanche
- This is the child chain liquidity gauge factory on Avalanche. Call
create
function with your pool’s Avalanche contract address.- This is the Avalanche Root Gauge Factory - call
create
using the contract address on AVAX you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your Avalanche root gauge that should be included in your gauge proposal.
For pools on Base
- This is the child chain liquidity gauge factory on Base. Call
create
function with your pool’s Base contract address.- This is the Base Root Gauge Factory - call
create
using the contract address on Base you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your Base root gauge that should be included in your gauge proposal.
For pools on Fraxtal
- This is the child chain liquidity gauge factory on Fraxtal. Call
create
function with your pool’s Fraxtal contract address.- This is the Fraxtal Root Gauge Factory - call
create
using the contract address on Base you got from the previous step. For 2% capped gauge, enter20000000000000000
for relativeWeightCap. For uncapped, enter1000000000000000000
. The result of this transaction is your Fraxtal root gauge that should be included in your gauge proposal.
Once you, the proposer, feel sufficient discussion has taken place you must find a delegate with over 200,000 veBAL to post your snapshot for you. The Balancer Maxi’s often provide help with this, so feel free to contact @solarcurve, @Xeonus, @ZenDragon , @zekraken, @Mike_B, @Tritium or @0xDanko for help posting your snapshot.
More details on the snapshot/governance process can be found in the governance section of the docs
Please note that Balancer protocol has an Emergency subDAO, that empowers a small group to “kill” pools and gauges in the event of malicious activity and/or potential loss of funds. Ultimately, veBAL holders have the collective power over gauges activity, being able to kill gauges at anytime through governance regular voting process.
Gauges for Custom Pools
The following conditions must be met for a custom pool to be added to gauges:
- There must be a analytics dashboard that shows:
- Swap volume over time
- Deposit Balances in LP
- Fees earned
- 50% of all collected fees must be sent to the balancer treasury
- One example of such a trade should exist.