EOS Referendum System


Got questions about the EOS Referendum System? We’ve got answers.

EOS is a blockchain platform made for the development of decentralized applications (dapps). It makes building decentralized applications much easier by providing a set of services and functions that resemble a more traditional operating system. Think of it like a blockchain based Amazon Web Services (AWS).

The idea behind EOS is to bring together the best features and promises of the various smart contract protocols (such as the security of Bitcoin, computing support and tooling of Ethereum).

A few key benefits of EOS are:

– No transaction fees
– Smart contracts
– Token creation
– High throughput / TPS (sub-second blocks)
– Short account names (aka address)
– Account recovery
– Account permissions (owner/active)
– Governance

These features can enable more modern web scale applications to be run with all the benefits of security and decentralization that a blockchain provides.

A vote in which EOS token holders are asked to decide on a question that impacts a change to the EOS Constitution, system-level Ricardian Contracts, or the EOSIO codebase. A simple proposal or poll allows the EOS community’s voice to be heard on specific matters without changing any contracts or system code. A referendum, if passed, should produce an actionable result to enact a change on the EOS mainnet, as decided by the EOS community.

To be an effective, decentralized, yet self-governed blockchain, the EOS codebase and governing documents can be modified through token holder consensus by way of referendum through proposing, voting, and ratification. This principle is found in the EOS Constitution.

Article XI – Amending – This Constitution and its subordinate documents shall not be amended except by a vote of the token holders with no less than 15% vote participation among tokens and no fewer than 10% more Yes than No votes, sustained for 30 continuous days within a 120 day period. Reference

Each proposal can define its own voting thresholds, but all proposals that fall under the “Constitution and its subordinate documents” must meet these predefined thresholds.

When you engage in voting, you are signing the Referendum Ricardian Contract.

Staking your EOS tokens for important issues, such as REX and the constitution can have a direct effect on how the network progresses and evolves.

Whether you have 1 or 100,000,000 tokens, staking your EOS for a proposal is one of the most powerful ways you can interact with the network.

The other benefit is security. If you plan on holding your EOS tokens longer than 120 days anyways, it will take 72 hours from the time you unstake them to do anything with them. You can put an alert to tell you if they are unstaked and change your keys before hackers can send them anywhere.

Ricardian Contracts are contracts that are both human and machine readable. They are presented to a user to provide the intention of the associated Smart Contract. When interacting with a proposal on the Referendum, you are agreeing to a Ricardian Contract for that action. Depending on the action you take, the appropriate Ricardian Contract will display in Scatter or your preferred UI:

In order to vote for a proposal, you will need to use a referendum voting User Interface and login with your EOS account using Scatter or Lynx.

Here is a definitive list of EOS Referendum voting interfaces:

Web Wallets & interfaces:


Mobile Wallets:


Command Line Interface:

There are essentially three different types of referendum proposals:

  1. Simple – polls or community consensus
  2. Contract (complex) – related to the Constitution, Ricardian or Smart Contracts
  3. System (complex) – EOSIO code related proposals

*Contract and System proposals are both considered “Complex Proposals”.

Crafting a successful proposal that’s technically feasible requires advanced knowledge of the EOSIO software and governance system.

Over time, there will be more tools to help facilitate that process for the average user. In the meantime, it is still possible for anyone to submit a proposal using one of the other various tools or wallets that support this functionality.

We’ve included some guidelines to help you:

Complex Proposal Guidelines

Like the name, these proposals involve complex changes to EOS contractual agreements like the Constitution, Ricardian Contracts, or the system code. If your complex proposal does not meet the standard requirements, it is subject to be rejected by Block Producers.

  1. Must be coherent, legible and well documented
  2. Needs to have a GitHub Pull Request (includes Contract changes)
  3. System code changes must have already been tested and stable on a public Testnet (JungleKylin, etc…)
  4. System code changes must have some form of a 3rd party security audit performed prior to submission

Simple Proposal Guidelines

Community consensus through polls or proposals are a great way to get a feel for what the community thinks about specific topics, ideas, events or happenings. Be respectful, and kind with your simple proposals. Slander and/or libel defamatory statements about other token holders are not productive to the community.

Helpful Hints

Gain added visibility for your proposal with these helpful tips:

  1. Rallying community support beforehand, and use what the community wants/needs to lobby a Block Producer for support.
  2. Leverage a Block Producer you trust to submit your proposal.
  3. Multi-language proposals are up to the submitter to provide and are recommended.

We encourage everyone to research their choices when voting on proposals. Your well researched vote facilitates the change you wish to see and is a vital part of EOS governance.


The good stuff.

Get all the insider news and resources in your inbox every month or so.

You win the internets! Yay!