How voters can signal more than Aye/Nay *today*

For treasury proposals, simply voting Aye/Nay isn’t very informative for proposers. While there would be options for changing the OpenGov protocol to be more expressive, I’d like to propose a social contract on top of the existing protocol which needs no changes to runtime nor frontend

Interpreting binary referendum votes on treasury proposals can be very tricky. Debate platforms like Polkassembly are underused by the ones who have significant voting power

Interpretation spectrum of Aye/Nay/Abstain

Reasons for a Nay could be

  • I vote Nay by default on everything until I made up my mind (i.e. to get points in the 1kv programme for participation or to protect the treasury from proposals approved with very low turnover)
  • the proposal has insufficient quality for me to build an opinion
  • This topic shouldn’t get treasury funding
  • This team should get no treasury funding at all
  • The amount requested is too high. I might approve an amount lower than XXXX DOT

Reasons for an Aye could be

  • I approve this exactly as proposed
  • I approve this and would even approve amounts up to XXXXX DOT
  • I approve this although the amount is a bit high. If you expect me to approve again, limit amount to XXXXX DOT for a comparable scope


  • I vote Abstain by default on everything until I made up my mind (i.e. to get points in the 1kv programme for participation)
  • I want to help with turnover threshold for this matter won’t tell my opinion

encoding signals into voting amount decimals

Votes are usually above 100mDOT, therefore we have 9 decimal digits available to encode additional information

  • the least significant digit should indicate the encoding used to signal additional feedback:
    • 0: no encoded information (default which already is the case with today’s voting UIs)
    • 1: the encoding proposed here
    • 2-9: reserved for future encodings/ social contracts
  • 6 digits for the maximum amount which could expect my approval (same scope if Nay, increased scope if Aye)
  • 2 digit for specific flags:
    • 1: this is my default vote on everything. I haven’t looked into it (yet)
    • 2: deliverables are unclear
    • 2-99: reserved

Why not just post additional sentiment on polkassembly?

Experience shows that whales don’t tend to comment with their voting accounts, which may be due to additional linkability risks if they do (if whales don’t want to be doxed, they might chose to avoid any other actions with their account than signing votes). Encoding their additional preferences in the voting amount decimals, however, would not open any other link.


Thank you @brenzi for the great topic post

I also think it would benefit OpenGov if people gave a reason for why they voted in a certain way.

This is the suggestion I had in mind:
One Polkassembly, it can be a simple drop-down menu with options users can select as a reason. This would generate a lot of feedback for people that submit proposals.