Skip to main content

This is an updated version of the tutorial that was originally published on March 17, 2022.

Polkassembly is an open-source platform for anyone to discover and participate in Moonbeam’s on-chain governance. You can open/interact with discussion posts to engage with other community members around different topics. You can also browse on-chain proposals, referendums, and treasury requests (amongst others), discuss them with the community, and vote directly from the website. You can also check council members and motions, technical committee proposals, and more through a user-friendly interface. If you want to participate in on-chain governance, such as commenting on discussions, voting on a proposal, or seconding a proposal, signing up for an account is required.

Refer to the documentation website for an overview of Moonbeam’s governance features.

In this tutorial, we’ll go through the steps of voting on Polkassembly with MetaMask from start to finish. You’ll learn how to sign up for Polkassembly, how to vote on active referenda, and how to free up any funds locked in democracy. In this particular example, we’ll be interacting with Polkassembly on Moonbeam, but the process is exactly the same for Moonriver. For a detailed video tutorial on interacting with Polkassembly, check out How to Participate in Moonbeam Governance with Polkassembly.

On the homepage of Polkassembly on Moonbeam, you’ll see the latest referenda currently open for voting, in addition to any proposals. Proposals are eligible (but not guaranteed) to move to referendum status once per launch period after a 400 GLMR or 4 MOVR bond has been submitted. Each launch period, the most seconded proposal moves to referendum status, at which point the bond is refunded. There is no guarantee that a proposal will move to referendum status, so the proposer and seconder bonds could remain locked indefinitely. Please note, tokens locked in democracy will remain locked until the selected lock time has passed and the expired locks are cleared.

Home page of Polkassembly, featuring the latest Moonbeam governance referenda

Principles of Moonbeam’s On-Chain Governance

A token holder’s influence in a vote is determined by two parameters specified at the time of voting: lock balance and conviction. Lock balance is the number of tokens that a user commits to a vote (note, this is not the same as a user’s total account balance). Akin to Polkadot’s governance, Moonbeam uses a concept of voluntary locking that allows token holders to increase their voting power by locking tokens for a longer period of time. Specifying no lock period means a user’s vote is valued at 10% of their lock balance. Additional voting power can be achieved by specifying a greater conviction. For each increase in conviction (vote multiplier), the lock periods double.

Lock Periods Vote Multiplier Approx. Lock Moonbeam Approx. Lock Moonriver
0 0.1 None None
1 1 7 days 1 day
2 2 14 days 2 days
4 3 28 days 4 days
8 4 56 days 8 days
16 5 112 days 16 days
32 6 224 days 32 days

Sign up for Polkassembly

There are two ways you can sign up for a Polkassembly account: using a username and password or with your wallet. Polkassembly supports multiple wallets, including Talisman, and MetaMask (supports Ledger, Trezor and other MetaMask compatible wallets). If you sign up using a username and password, you’ll be able to connect your wallet later to perform actions such as voting on or seconding a proposal.

To sign up with a username, you can take the following steps:

  1. Click Login in the top right corner
  2. Click Sign Up
  3. Enter a username
  4. Enter your email address
  5. Click Next
  6. Create a password
  7. Re-enter that password
  8. If you agree to the Polkassembly end user agreement, go ahead and click Sign Up

How to sign up for a Polkassembly account using a username/password

To sign up with your wallet, you can get started by clicking on Sign-up with Web3 address. You’ll then be prompted to select your wallet from the list of wallets. For this example, MetaMask will be selected. MetaMask will pop-up and then you can choose the account you want to connect with and click on Connect.

On Polkassembly, you can take the following steps to finish signing up with your wallet:

  1. Select your preferred Wallet. In this case we’ll choose MetaMask.
  2. Confirm your address in the Choose linked account dropdown.
  3. If you agree to the Polkassembly end user agreement, go ahead Click on Sign-up.
  4. MetaMask will pop-up again, and you’ll be prompted to sign a message. Click on Sign.

Sign up for a Polkassembly account using MetaMask

Once you’ve signed the message, your account will be created and you’ll automatically be logged in. Your wallet address should appear in the top right corner, if not you can follow the instructions in the next section to log in.

Please note that you can add an email address which can be used to recover your account from the Settings menu at any time.

Logging In

If you’ve already signed up for an account, you can login using the same method you signed up with.

To login using a username and password, you can follow these steps:

  1. Click on Login at the top right corner.
  2. Enter your username.
  3. Enter your password.
  4. Click Login.

Log into your Polkassembly account using a username/password

To log in using your wallet, click on Login with Web3 address. You’ll then be prompted to select your wallet from the list of wallets, this example uses MetaMask. MetaMask will pop up and you’ll choose the account you signed up with.

On Polkassembly, you can take the following steps to finish logging in:

  1. Select your preferred Wallet. In this case we’ll choose MetaMask.
  2. Choose your Web3 address from the Choose linked account dropdown.
  3. Click on Login.
  4. MetaMask will pop up and you’ll be prompted to sign a message.

Log into your Polkassembly account using MetaMask

Once you’ve signed the message, you’ll be logged in and your wallet address should appear in the top right corner.

How to Participate in Discussions

Once signed in, you’ll be able to actively participate in any of the existing discussions or create your own. To view the latest discussions, navigate to the Discussions tab in the left hand side menu. You can click on any of the discussions in the list to read the description and comments, comment on the post, subscribe to notifications, share the post on Twitter, and more. Some discussions will include polls that you can vote on.

To create your own discussion, return to the Discussions tab’s main page and select New post. From there, you can:

  1. Add a title for your discussion post.
  2. Enter a description.
  3. Optionally, you can include a poll to gain further insight into what others think about your post. The length of the poll is defaulted to two weeks, after which it will be closed and can no longer be voted on.
  4. Choose a category that best fits your post.
  5. Click on Create Post.

Participating in discussions on Polkassembly

The discussion will be created instantly. If you added a poll, you’ll see two sections: Poll Signals and Council Signals. The Poll Signals section displays a general overview of the poll and current votes, and the Council Signals shows what current council members, if any, have voted and what their vote is. Council votes are also included in the Poll Signals section.

You can also create additional polls where you customize the specific question, answer options, and length of the poll.

Polls are voted on off-chain, so to vote you don’t need to have your wallet connected. If you voted on a poll, you can change your vote at any time.

To add a comment to an existing discussion, click on the discussion, and then you can simply take the following steps:

  1. Scroll down to the text box and add your comment.
  2. Click on Comment.

Adding a comment to a discussion on Polkassembly

How to Second/Endorse Proposals

You can second/endorse a proposal if you agree with it and want to help push it to become a public referendum. At every launch period (7 days Moonbeam, 1 day Moonriver), the most seconded proposal moves to public referendum.

Seconding a proposal requires matching the deposit of the original proposer. This deposit is returned once the proposal is moved to public referendum. Note that a proposal might not move to public referendum ever, and proposals don’t expire. Consequently, seconding/endorsing a proposal will lock your tokens for an unknown time period.

To view the list of proposals, you can head to the Proposals tab under the Democracy section in the left hand side menu. Each of the proposals will have a label attached to them, such as Proposed or Tabled. If a proposal has the Tabled label, it has already been brought to a vote, but if it has the Proposed label, you’ll be able to second the proposal.

If you click on a proposal and have signed up or logged in with a username and password, MetaMask should pop up and prompt you to connect an account.

On the proposal page, you’ll be able to read a description of the proposal as provided by the proposer, in addition to on-chain information and the timeline for the proposal. Once you’ve connected with your wallet, you’ll be able to see the Second button.

To second a proposal, you’ll have to match the deposit that the original proposer set. This bond is returned once the proposal becomes a referendum. If you want to second a proposal, make sure the proposal has the Proposed label, and take the following steps:

  1. Click Second on the menu bar on the right.
  2. Verify you’re using the correct account from the Endorse with account dropdown.
  3. Click on Second.

Second or endorse a governance proposal on Polkassembly

MetaMask will pop up and you can confirm the transaction. You must have enough balance to cover the deposit amount and gas fees.

Once the transaction goes through, you should see the Endorsed by field in the top right corner has increased by one, and the total Locked GLMR should also increase. You’ll also notice that in MetaMask, your balance has decreased by the amount of the deposit plus gas fees.

How to Vote on a Proposal

Once a proposal reaches a public referendum, token holders can vote on it using their own tokens. You can vote with either your free balance or with staked tokens. Two factors account for the vote weight: the amount locked and the locking period. When voting on a referendum, you’ll be able to explicitly provide the balance to lock and the locking period for your vote. The locking period refers to the number of days (in blocks) that the tokens will be locked after the referendum has been enacted (if approved).

Once the locking period has expired, you can unlock the tokens through Polkassembly as well, but this is covered in the next section.

To view the list of referenda, you can navigate to the Referenda tab under the Democracy section. Each referendum will have a label attached to it, such as Started, Passed, Executed, or NotPassed. If a referendum has the Started label, you’ll still be able to vote on it. If the referendum successfully passes but has not yet been executed, you’ll see Passed. If it passed and has been executed, you’ll see Executed. If the referendum fails to pass, it will have the NotPassed label.

If you click on a referendum with the Started label and haven’t connected your MetaMask account yet, MetaMask should pop up and prompt you to connect an account. On the referendum page, you’ll be able to read a description of the proposal as provided by the proposer, in addition to on-chain information, and the timeline for the proposal.

To vote on a referendum, make sure the referendum has the Started label, and take the following steps:

  1. Press Cast Vote Now.
  2. Enter the amount you’re willing to lock for the vote in the Lock balance field.
  3. Verify you’re using the correct account from the Vote with account dropdown.
  4. Choose how long you want to lock your tokens for from the Vote lock dropdown. The default is no lockup period, which results in a vote weight of 10% of your locked tokens, or you can specify a conviction multiplier up to 6, which amplifies your vote weight 6x and locks the number of tokens you specified in the prior step for 32 enactment periods. For more information on vote lock periods, see this guide to voting on the Moonbeam docs site.
  5. Click on Aye or Nay depending on whether you agree with the referendum or not.

How to vote on a proposal on Polkassembly

MetaMask will pop up and you can confirm the transaction.

When the transaction is complete, the Turnout amount and the Aye or Nay amount will be updated on the right side panel.

How to Clear Democracy Locks

Once the locking period has expired, you can request to unlock your locked tokens. Unlocking democracy locks is a two-step process. First, you have to remove any votes and then you can unlock your tokens. This process can be completed from the settings page.

To navigate to the settings page, click on either your username or your wallet address in the top right corner. From the dropdown, select Settings.

Once on the settings page, scroll down towards the bottom of the page until you see the Unlock democracy locks section, and take the following steps to remove a lock:

  1. Verify the correct account is selected from the Choose account dropdown. If it’s not the correct account, you can switch accounts in MetaMask and refresh the page.
  2. Choose the proposal you want to remove the lock for and click Remove. Note: you may see a lock balance of 0 for certain votes where you chose no lockup period — you’ll need to remove those votes before proceeding to the next step.
  3. MetaMask will pop up and you can confirm the transaction.

Clear expired democracy locks on your tokens through Polkassembly

To finalize the unlock and return the locked balance to your free balance, you can:

  1. Click on the Unlock button.
  2. MetaMask will pop up and you can confirm the transaction.

Finalize token unlock from democracy on Polkassembly

Once the transaction goes through, you’ll notice that the Unlock democracy locks section has been updated and the lock no longer exists. You can check that your balance has changed by searching for your address on Moonbeam’s Subscan, and expanding your GLMR balance, which will show you your transferrable balance, staked balance, democracy balance, and more.

A Forum for Governance

The goal of Moonbeam’s governance mechanism is to advance the protocol according to the desires of the community. Autonomous enactments and forkless upgrades unite the community towards that common mission. Regardless of the proposal, understanding the context and the reasoning for the change is important. Polkassembly provides a framework for proposers to add context around their proposal, and a platform for the community to provide feedback. This way, Polkassembly enables proposals to evolve and be refined based on community input.

And that’s it! In this guide, you learned how to create an account, vote on a proposal, and free tokens locked in democracy. There’s a lot more that you can do in Polkassembly. For example, you can also second proposals, start discussion threads, and create polls. Polkassembly unites the power of Moonbeam’s on-chain governance with the seamless user experience enabled by Polkassembly and MetaMask.

Moonbeam Team

Author Moonbeam Team

More posts by Moonbeam Team