- What does “no opinion” mean?
It means you are providing no information about how this choice ranks with
respect to the other choices. For example, if you give one choice the rank 1,
and give all other choices the rank “no opinion”, your ballot
becomes useless because it doesn't express any preferences. Voters often pick
“no opinion” when what they mean is that they don't like the choice
or that they don't have any information about it. In these situations, it is often better to give the choice a low rank rather than to select “no
opinion”. A good reason for a voter to give a choice the rank
“no opinion” is because the voter isn't supposed to
express an opinion about that choice.
- Why doesn't the voting interface use my favorite language?
CIVS supports several different languages, including Chinese, French, German,
Italian, Hebrew, Portuguese, and Thai. If your favorite language is not supported,
your help in localizing CIVS to it would be much appreciated!
- What is the difference between Condorcet voting and voting methods
that I am familiar with?
Condorcet voting methods let voters rank their preferences and do a good
job of aggregating all the voter preferences into a single ranking.
[ More information on Condorcet voting ]
- For how long a period should I enable voting?
This is up to you. The best time period depends on your voters.
For voters who are aware of the poll or who check email frequently,
a couple of days is usually enough time. Most people vote right away, or
not at all. Election durations of more than a week are usually too
long, unless your intention is to set up a long-running public survey.
- I would like to separate out the acceptable choices from the
unacceptable choices. Can I do that?
Just create a choice named something like “choices ranked below this
are unacceptable”. You can then use the poll results in
various ways. If you want reject choices that are considered unacceptable
by a plurality of voters, reject those that are ranked below this pseudo-choice.
If you want to find the choices that are acceptable to every voter,
they are the ones that unanimously (n–0) beat this pseudo-choice.
(This is handy for scheduling meetings where everyone needs to be present.)
- How many candidates/choices can I meaningfully rank with a poll? It
depends on the number of voters. Empirically, it seems that to rank the top N
choices, you should have at least 3N voters.
- How big a poll can I run?
CIVS is used regularly for polls with hundreds of voters. You can set up a
public poll where any number of people can vote. Elections have been
successfully run with a couple of thousand voters, and this is a load it should
stand up to even if voters all try to vote around the same time. Election
results are now cached, so the system has become much more scalable.
However, CIVS hasn't been stress-tested at 20,000 voters or higher. The server
is implemented in Perl, so it can easily handle 4,000 voters per hour. If your
voters don't show up faster than that, and they usually don't, it should be
fine no matter how many voters there are. If you want to have a private poll,
the system will only allow you to add 1,000 voters at a time, but in principle
you can have as many voters as you want. CIVS does limit the rate at which
new voters can be added to a poll by controlling how quickly it is willing
to send out email invitations. For polls with more than 10,000 voters, you may
have to spread out the invitations over hours or days.
Note that using the experimental proportional method for your poll can
dramatically increase the load on the CIVS server, so avoid that mode for large
polls, especially where there are a lot of candidates to choose from.
How reliable is CIVS?
There have been no known data losses due to hardware failure on the Cornell
installation, and no problems with poll results being corrupted due to bugs,
since 2006. Each poll is stored in a separate database, so if there
were data corruption, it could can affect only one poll.
A complete ranking of choices could embarrass some candidates.
Can I avoid that?
By default, full poll results are available to every voter. However,
you can designate a smaller set of people who are allowed to see the poll
results. They can then report the winners to the voters, using some mechanism
outside of CIVS.
I'm paranoid. Can I make sure the person or people running the CIVS web site
can't learn what my voters are voting on? Yes, just
give your choices nondescriptive names like A, B, C, .... Then, send
all voters an explanation of what those names stand for. Less convenient
for voters, but completely private.
- Can poll choices include images? Sure. Just use an
HTML <img> tag. Many standard HTML tags are supported,
though there is filtering to block XSS attacks.
- Can poll choices include Unicode characters including emojis?
No problem, assuming users' browsers know how to render them.
- Why doesn't CIVS support my favorite election method (STV, ...)?
The focus has been on supporting Condorcet methods, which guarantee (when they can)
that no one is preferred over the winner. However, the interface for adding new
election methods is relatively clean, so you can add your own election methods if
you like. We may even add them to CIVS if you provide the code.
- Can I answer multiple questions within one poll? Yes. While CIVS only
allows one ranking to be defined per poll, it is possible to create polls in
which incomparable things are ranked at the same time. For example, if you
wanted to pick a place to hold a meeting and also a time to hold it, you could
have several choices that are meetings and several that are times, and instruct
the voters to rank all places above all times. Assuming your voters followed
instructions, the poll result will have all places ranked above all times, and
their relative rankings will match what you would have gotten if you had run
two separate polls.
- What happens if I enter a voter's email address wrong?
They will not receive their voter key and will be unable to vote. If you
determine that you entered a bad email address for a voter, you can fix the
problem by adding them again under the correct email address. If the bad
address wasn't a good address for the wrong person, a bounce message may come
back to the CIVS supervisor, and you may receive an email identifying such
bounces. However, don't count on learning all the bad addresses this way:
bounce notifications may not be sent, parsing email bounces is fragile, and the
supervisor may not have time to help you. The best policy is to verify all
emails that you give to CIVS before adding voters.
- Why do the website or the invitation emails appear in a language
other than the one I want to use?
CIVS uses your browser preference settings to decide what languages you speak,
and it displays instructions and sends emails to voters in the most preferred
language that it supports. If you are seeing a language other than the one you
prefer to use, change your browser settings accordingly. If your users speak
multiple languages, you will want to write instructions in all the languages;
CIVS does not translate for you.
- Some voters never got their voter keys. What do I do?
It depends on whether you sent the voter key to the right address in the first
place. If so, you can send it again by “adding” that voter with the
poll control page. The same voter key will be generated, so
the voter won't be able to vote twice. If the email address was broken,
then email should have bounced. In that case it should be safe to add
the voter under their correct email address. You can check with the CIVS
supervisor whether the email bounced, assuming you were not notified.
- Why doesn't the poll end automatically at the specified time?
We wanted to give poll supervisors the flexibility to write complex
specifications of when the poll should end, such as “by March 3 or
when we get at least 100 votes”. It's too hard to handle all these cases.
The supervisor can easily monitor progress through the poll control
page. The supervisor needs to...supervise.
- The voters haven't bothered to vote. Can I send them their voter
keys again? Yes, just “add” them again at the poll control page.
This will send them all email. Make sure you use exactly the same email address
you did the first time; otherwise, a new voter key will be generated because
it's a different voter as far as CIVS can tell. For security and privacy reasons,
CIVS doesn't record voter email or voter keys, so it has no way to send an already
generated voter key to a new email address.
How long will poll results remain available?
We are making a best effort to keep poll results forever, for any poll
that receives more than one vote and doesn't look like a test of the system.
However, you may want to make a copy of the poll results page for
- Why doesn't the system notify voters when the poll has ended?
Because it doesn't know who the voters are any more. Once voter keys are
sent out, all information about the voters is destroyed. It's the job of
the poll supervisor to close the poll and notify voters or
- Can I make current poll results visible before the poll closes?
This increases the danger of strategic voting. However, it is the
behavior for “public” polls.
- I lost the email that lets me see the election results. What do I do?
There is a button on the poll control page that lets
the poll supervisor resend the link to you.
- Why don't voters see the ballot in their favorite language?
CIVS supports several languages, including at least the following: English,
German, French, Italian, Chinese, Hungarian, Hebrew, Portuguese, and Thai. The
language used by CIVS is determined by the user's preferences, as set in the
web browser. For example, in Firefox, this is under the “Content”
tab. If voters' preferred language is supported by CIVS, but is not
displayed to them, then they have not set their language preferences
Security and Privacy
For a discussion of security and privacy in CIVS, see
CIVS is a free service maintained and updated by volunteers. New feature
suggestions and implementations are welcome. The
CIVS suggestion box is
a good source of feature ideas. In addition:
- Additional language support would be great. Existing languages have been
provided by volunteers. Adding support for a new language is not difficult and
does not require programming expertise.
CIVS currently supports five algorithms for deciding winners.
However, many other voting methods have been proposed. With tens of thousands
of users, CIVS is a great place to evaluate voting methods. New voting methods
can be plugged into CIVS in a modular way, by creating a new Perl module
that implements a well-defined interface.
Running CIVS takes resources, especially for large polls.
The CIVS project
welcomes donations. The suggested donation is 1 penny per voter, which
is actually still well below the level needed to support running CIVS. If
your organization is running polls with hundreds of voters, please consider