productivity

Pass-the-Phone Vote

Pass one phone around for private in-person voting, keep intermediate results hidden, and reveal only the final tally after everyone votes.

Local processing
About your filesFiles and content selected in this tool are processed in your browser and are not uploaded to a Browser Kitty backend.
Operation demo See the basic workflow in a short video.

About this tool

Pass-the-Phone Vote is a browser tool for running an in-person vote by handing one smartphone from participant to participant. After a person confirms a choice, that selection disappears and the app returns to a neutral handoff screen. Vote totals and percentages remain hidden until everyone finishes and the group explicitly reveals the final tally.

Confirmed votes are kept only as aggregate counts per choice; the app does not store a history such as 'participant 1 voted for A.' Ballot setup, progress, tallying, and result display are processed on the device, and voting data is not sent to an app server. It is intended for casual in-person decisions among family, friends, small meetings, or workshops where a single device can be passed around.

Good for

  • Take a group vote among family or friends without showing earlier participants' choices
  • Run an in-person vote in a small meeting or workshop using only one phone
  • Hide interim results until everyone has voted so later participants are not influenced by the current tally
  • Keep only the final aggregate tally rather than retaining who selected which option

What it can do

Key capabilities available in this tool.

How to use

  1. Open the tool and start from Yes / No, two-choice, or a custom ballot.
  2. Enter the question, configure 2–10 choices and 2–100 participants, then start the vote.
  3. Hand the phone to the first participant. They open the voting screen, choose one option, review it, and confirm the vote.
  4. After confirmation, the selected answer disappears and a neutral handoff screen is shown; pass the phone to the next person.
  5. Repeat until everyone has voted. Interim counts and percentages stay hidden.
  6. Use the press-and-hold reveal action to show the final tally. You can then copy/share the result or run another vote with the same setup.

Supported

  • Ballot types: Yes / No, two-choice, or custom, with 2–10 choices.
  • Participants: 2–100 people using one device passed from person to person.
  • Tally: shows vote counts, integer percentages, and total votes; interim results stay hidden until reveal.
  • Recovery: sessionStorage keeps only the question, option labels, aggregate counts, participant counts, and safe progress state; unconfirmed choices are not stored.
  • Result actions: copy the tally, share it through Web Share on supported devices, or repeat the vote with the same setup.

Limitations and notes

  • This tool is not intended for public elections, audited electronic voting, legally binding ballots, or situations requiring tamper-resistant election security.
  • It does not verify participant identities or technically enforce one vote per person; the group controls who receives the device.
  • It cannot prevent someone with device or developer-tool access from inspecting or altering browser state. This is a privacy-oriented handoff UX, not a cryptographic voting system.
  • Remote participation and synchronized multi-device voting are not supported; the workflow is designed around sharing one device in person.

Frequently asked questions

Does the app store who voted for which option?

No voter-to-choice history is retained. When a vote is confirmed, only that option's aggregate count is incremented. Recovery data in sessionStorage contains aggregate counts and safe progress state, not unconfirmed choices.

Is voting data sent to a server?

No. The GitHub Pages version downloads the HTML initially, but ballot setup, voting, tallying, and result display then run on the device, with no app-server upload of voting data.

Can participants see interim results?

Not through the normal flow. Counts and percentages stay hidden until everyone has voted and the tally is explicitly revealed. The reveal uses a press-and-hold action, with a confirmed alternative for users who cannot hold it.

Can this be used for elections or high-stakes voting?

Do not use it for public elections or voting that requires auditing, legal force, or tamper resistance. It is intended for casual in-person decisions among family, friends, small meetings, or workshops.

Offline version and source code

Save the standalone HTML to configure ballots, pass one device around, tally votes, and reveal results without runtime external connections. If you use Web Share for the result, the operating system passes the text to the destination you explicitly choose.

View source on GitHub