How the results are calculated
What the results measure
AussieTally records Yes/No answers from people who choose to participate. It is an independent passion project, not a government service or a representative national poll. Results are unweighted. Participation, topic selection and access to a mobile phone can all affect who responds.
Who can vote
Voters verify control of an Australian mobile number and declare that they live in Australia and are at least 18. Location, birth year and sex are self-reported. A phone code does not prove citizenship, residency, age or that someone has only one phone.
One account can cast one confirmed vote per topic. A database transaction stores the vote and duplicate-vote record together. Repeated submissions return the original vote. Confirmed votes cannot be changed.
Demographic detail, with limits
State, city/region and self-reported sex are captured when a vote is cast. Estimated age groups use the vote year minus birth year: 18–24, 25–34, 35–44, 45–54, 55–64 and 65+. An estimate can differ from actual age by one year. We do not collect full dates of birth.
Overall totals remain visible. State, city, age and sex groups require at least 50 votes. We also withhold a dimension when subtraction from national or state totals could reveal a smaller group. Published rows may therefore not sum to the national total. These precautions reduce identification risks; they are not a guarantee against every inference from public data.
Public downloads
CSV and JSON contain the same permitted aggregates as the results page. Each request produces a current snapshot in one database statement. The file can be newer than the page you are viewing. No phone numbers, birth years, user identifiers or individual vote records are included. Snapshots created before the current privacy rules are no longer available publicly; their original records are retained privately.
CSV uses a single table. Fields: schema_version; issue_id; question; is_demo; as_of_utc; close_date_utc; dimension; group; total; yes; no; yes_percent; suppression_threshold; suppressed_dimensions. A blank percentage means there are no votes. Text starting with spreadsheet formula characters is escaped. JSON uses as_of and close_date and nests demographic counts under groups.
Consistency checks and snapshots
Displayed results are counted directly from vote records in Postgres, without a client row limit. A separate check compares those counts with the stored headline tally. A match demonstrates internal consistency, not the authenticity of every participant or an independent audit.
The scheduled job saves daily public aggregate snapshots when configured and running. Each snapshot includes its exact payload text and a SHA-256 checksum. To reproduce it, hash the UTF-8 payload string without adding a newline. Checksums identify content; privileged database operators still have administrative access. A gap in snapshots can indicate a missed job and does not itself prove tampering.
A separate daily job publishes available snapshots and their checksums in our public result archive. You can download and retain your own copies. The archive is operated by AussieTally and is not an independent audit or an immutable record. New snapshots may take until the next successful publication to appear.
Topics, corrections and demo data
Suggestions are free and reviewed for relevance to Australian federal issues, neutral wording, sources and duplication. We fix the question at publication. If a published question needs a material correction, we close it and publish a replacement. Results stay available unless a topic must be removed.
Demo topics, votes and downloads are labelled and kept separate from the live tally. They are examples, not evidence of real public opinion.