Guide

A poll in one HTML file,
with live results.

One vote per person, a bar that moves while you watch, and no poll service in the middle. Send a link, get an answer.

Updated 2026-09-09 · by Hostus Team

Picking a date for six people should not need an account. The tools that do this well are fine, and they all put your question on their domain, with their branding, in their layout, and they all want the voters to accept something.

A poll is a list of options and a tally. Here it is as one file you own.

What it looks like

A live one: four Thursdays, one vote each, and tapping a different option moves your vote rather than adding a second. The votes in it came from people reading this page.

Nobody signs in. Your own vote is marked so you can see where you landed, which is the part people miss when they build this from scratch.

The prompt

Make me a poll page: which Thursday works for the reading group, four options.

One vote per visitor, tapping another option moves the vote instead of adding one. Show a bar and a count per option and the total, updating live for everyone. Mark the visitor's own choice.

Use the hostus.data SDK: data.watch("votes", render), data.add("votes", { day }) for the first vote and data.set("votes", key, { day }) to move it. No backend, no keys, one HTML file. Publish to Hostus and give me the link.

The one line that matters is the third: without it you get a page where one person can vote nine times, which is how most hand rolled polls behave.

How one vote per person works without accounts

The server issues each visitor a signed cookie for that document, so the page can tell which record belongs to whoever is looking. The page never sees an identity, never stores one, and never asks for an email.

It is per browser, which is the honest limit: someone determined can vote again from a private window. For picking a Thursday that is fine. For an election it is not, and you should use something built for elections.

When you want a poll service instead

Use a dedicated poll tool when you need any of: results hidden until the end, ranked or weighted voting, a hard identity check, or a poll that someone else in your team can edit without touching HTML.

Use the file when you want the question to sit inside a page you control, with the rest of the context around it, on a link that does not expire and does not carry someone else's logo.

Good to know before you switch

The storage runs because the page is hosted on Hostus: the server is what decides who each reader is. Download the file and open it from your desktop and the list is empty. The HTML is yours either way, and any host will serve the page, but the shared part is ours to run.

There is no spreadsheet view of the records. You read them on the page, or you ask Claude, which has a tool for it. If a dashboard with filters is what you need, this is not that yet.

Questions people ask

How do I make a poll without a backend?

Write it as one HTML page that stores votes against the hosted document, then publish it. Visitors vote without signing in and the results update live for everyone.

How is one vote per person enforced?

By a signed cookie the server issues per document and per visitor. It is per browser, so it stops accidental double voting rather than a determined person with a private window.

Can voters change their vote?

Yes, if the page is written to update the existing record rather than add a new one. The prompt above asks for exactly that.

Can I hide the results until the end?

Not with the page reading its own data, because whatever the page can render, the visitor can see. If hidden results matter, use a poll service built for it.

Does it cost anything?

No. A poll is a handful of records, and the free plan holds 1,000 per collection with no card and no trial clock.

Ask the question on your own link.

One HTML file, free plan, live results.