PollCraft / How it works
How a real-time poll works without a server
PollCraft has no accounts and no database. That’s the privacy promise, and it also sets real limits. This page explains exactly how votes travel, what “real time” means here, and how to read your results.
The poll lives in the link
When you press Create poll, your question and options are encoded into the part of the web address after the #. Browsers never send that fragment to the server, so our server only ever sees a request for the empty vote page. The page then reads the poll out of the address on the voter’s own phone.
That is why links are longer than on other poll sites, and why a truncated link can’t be read: the link is the poll.
Votes come back as reply links
A voter’s answer is encoded the same way into a reply link. It has to reach you somehow, and without a server that “somehow” is you: the voter taps Send vote and picks the chat, email or text you’re already using, or shows it as a QR code for you to scan. Opening or pasting replies on your device adds them to your tally.
What “real time” means here
- Instant on the host’s device: every counted vote, tap or shared-device ballot updates the chart immediately, across tabs of the same browser.
- Not synced to voters’ phones: voters see their own ballot, not the running chart. Put the chart on a projector with Present mode.
- Fully instant in the room: pass-the-device and show-of-hands modes need no network round trip at all.
Reading results: small polls wobble
If everyone who matters voted (your whole team, the whole class), the count is simply the answer. But if the voters stand in for a larger group, such as the 30 people who answered out of 300 at a conference, the result carries sampling error.
The usual 95% margin of error for a share p from n votes is 1.96 × √(p(1−p)/n). For 60% from 30 votes that is about ±18 points, so the true figure could plausibly be anywhere from 42% to 78%. Try it on the right.
Two cautions: this assumes voters were picked at random, which a self-selected poll never quite is; and it can’t fix a leading question. See the question-wording examples.
How much can you trust a 60/40 split?
Drag the sliders. The bar shows the result; the shaded band is where the “true” share of a bigger group could plausibly be (95% confidence).
±17.5 points, so anywhere from 42% to 78%. The range crosses 50%, so with this few votes you can’t say the leader has a true majority.
This only applies when voters are a random sample of a bigger group (say, 30 students standing in for the whole year). If everyone who matters voted, the count is simply the answer. Formula: 1.96 × √(p(1−p)/n), the standard normal approximation.
Where AI is used
Three optional buttons use an AI model: “Check wording with AI” in the poll maker, “Suggest poll questions”, and “Summarise themes” for open-text answers. They run only when you press them, send only the text involved to a model through Vercel AI Gateway, and nothing is stored. Everything else, including counting and ranked-choice rounds, is plain code in your browser.
Limits worth knowing
- Up to 12 options, 200-character questions and 80-character options per poll.
- Results are stored in one browser. Use a different device or clear your data and they’re gone, so export a CSV when a poll matters.
- Voter ids stop accidental double votes, not determined ones. Use pass-the-device for anything binding.
Questions people ask
Is PollCraft a real-time polling tool?
On the host’s device, yes: charts update the moment a vote is counted. Votes don’t sync to every phone automatically, because there is no server storing them. In-room modes are instant; remote votes arrive when each voter sends their reply link.
Can I move a poll to another device?
Open the host board link on the other device to get the poll itself. Votes counted on the first device stay there, but you can re-paste reply links on the new device, or export a CSV.
Why not just add a server?
A server that stores votes needs accounts, retention rules and security for other people’s data. PollCraft is built for people who would rather not create any of that for a two-minute poll.