Poll Types
The visual poll builder offers exactly two question types: Multiple Choice and Single Choice. Both present a fixed list of choices, and both are charted the same way on the results page. The Question Type dropdown in the Visual Poll Builder contains these two entries and nothing else.Polls have no notion of a correct answer. There is no answer key, no scoring, and no grading anywhere in the poll interface. Use a survey or an assignment if you need graded responses.
Single Choice
Students select exactly one choice. Selecting a new choice clears the previous one, which is standard radio-button behavior. Good fits:- Yes/no and true/false questions
- Forced-choice preference questions (“which would you rather”)
- Quick concept checks where you want students to commit to one option
- “Is this code snippet thread-safe?” (Yes / No)
- “What is the time complexity of binary search?” (O(1) / O(log n) / O(n) / O(n log n))
- “Which design pattern is this?” (Singleton / Factory / Observer / Strategy)
Multiple Choice
Students select any number of choices. Each choice toggles independently. Good fits:- “Select all that apply” questions
- Gathering preferences where students may agree with several options
- Surfacing misconceptions, since a student may hold more than one
- “Which of these are valid JavaScript variable declarations?” (var x / let y / const z / int w)
- “What topics would you like more review on?” (Arrays / Recursion / Trees / Graphs)
- “Select all sorting algorithms with O(n log n) average case” (Bubble / Merge / Quick / Selection)
Answering is required for both types. The student poll page marks every question required unless the question definition explicitly opts out, and the visual builder never opts out. A student cannot submit a Multiple Choice poll without picking at least one choice.
Choosing a type
Choices
Both types need a list of choices, and the rules are the same for each:- Click Add Choice in the builder to add a row. The builder starts with one empty row.
- Two or more choices is the sensible minimum, but nothing enforces it. The builder refuses to delete the last remaining row, and a one-choice poll publishes without complaint.
- Blank choice labels are dropped when the builder writes its JSON. If every label is blank, the builder substitutes a single choice literally named
Choice 1. - The Remove choice button appears on a row only when more than one choice exists.
How results are counted
Both types produce the same visualization: a horizontal bar chart of the number of responses per choice. See Poll Visualizations for what the results page does and does not show. Counting matches each submitted answer string against the choice labels from your question. Two consequences are worth knowing:- An answer that does not exactly match one of the choice labels is not counted, and no bar reflects it.
- Answers prefixed with
other:are skipped, so a hand-written “Other” text option collects nothing on the chart.
Response data format
Each response is stored as a JSON object keyed by the question’s name. The student poll page names the first elementpoll_question_0 unless the element already defines its own name, in which case that name is used instead.
Single Choice stores one string:
Hand-writing other question types
The Poll Question JSON field is a raw SurveyJS payload, and save-time validation only checks thatelements is a non-empty array whose first element has a type and a title. Any SurveyJS type therefore saves successfully, and Preview Poll renders it with the real SurveyJS runtime.
Multi-question polls are limited in the same way. The visual builder is single-question only, and the results page charts the first question, so answers to later questions are collected but not displayed.