> For the complete documentation index, see [llms.txt](https://davestaxcp.gitbook.io/freewallet.io-user-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://davestaxcp.gitbook.io/freewallet.io-user-manual/freewallet-functions/voting-with-tokens.md).

# Voting with Tokens

Counterparty supports voting through actions taken with user-created tokens, as well as broadcasting information onto the Bitcoin blockchain. <mark style="color:yellow;">This means that you can post the terms and options of your vote as a broadcast, and let users vote on its outcome with full transparency by using tokens.</mark>

This Dividends distribution process was described in the [Paying Dividents to Token Holders](/freewallet.io-user-manual/freewallet-functions/paying-dividends-to-token-holders.md) section.

This function has been used successfully in the past, but is less commonly used due to the Bitcoin fees that occur when inviting token holders to vote.

<mark style="color:green;">Let explain his process with an example,</mark> using a made up token called "EXAMPLE"

* You create a token named ‘<mark style="color:green;">EXAMPLE</mark>’
* You distribute the <mark style="color:green;">EXAMPLE</mark> token to various users (the more tokens they have the more votes they will receive)
* You can create another token named <mark style="color:red;">EXAMPLEVOTE</mark> and [pay a distribution](/freewallet.io-user-manual/freewallet-functions/paying-dividends-to-token-holders.md) of exactly 1 EXAMPLEVOTE to all holders of EXAMPLE in one single action.
* Now all holders of the <mark style="color:green;">EXAMPLE</mark> token now have 1 vote per EXAMPLE token they hold which is represented by the <mark style="color:red;">EXAMPLEVOTE</mark> token.
* From the same address you minted the <mark style="color:green;">EXAMPLE</mark> token you publish a [Counterparty Broadcast](/freewallet.io-user-manual/freewallet-functions/broadcast-information-on-the-bitcoin-blockchain.md) that explains the terms and options of voting with <mark style="color:red;">EXAMPLEVOTE</mark>. For this example, the instructions include sending a certain amount of <mark style="color:red;">EXAMPLEVOTE</mark> to a specific Bitcoin Address.
* Within that Broadcast you explain that sending <mark style="color:red;">EXAMPLEVOTE</mark> to a specific "<mark style="color:orange;">Bitcoin Address #1</mark>" counts as a <mark style="color:orange;">YES</mark> vote, and sending to another specific "<mark style="color:purple;">Bitcoin Address #2</mark>" counts as a <mark style="color:purple;">NO</mark> vote.
* To cast their votes, holders of <mark style="color:green;">EXAMPLE</mark> can then send the <mark style="color:red;">EXAMPLEVOTE</mark> they have received to whichever choice they agree with.&#x20;
* The results of the poll will be public and verifiable thanks to the Bitcoin blockchain and will simply be recorded as token sends of <mark style="color:red;">EXAMPLEVOTE</mark>.

Since you can create whatever rules you would like with a public Counterparty Broadcast transaction that publicly shows the 'choices' or different Bitcoin Addresses to send to for voting, this feature can be used for many purposes.

<mark style="color:yellow;">It may be a good idea to create burn addresses for this purpose</mark> (addresses where the private key is not known). This way, the votes cannot be recycled or moved. \
\
For more information about creating a “burn address” see below on the topic [How do I create a Burn Address for use on Counterparty?](/freewallet.io-user-manual/common-questions-using-freewallet-faq/how-do-you-create-a-burn-address-for-use-on-counterparty.md)
