I'm building a quiz system online which features simple text questions, slightly longer-form text questions, multiple choice questions, and fill in the blanks style questions. Each quiz could have up to 20 questions (but more likely 10 on average).

My question is this: is it better to present the questions one by one with a "Next" and "Back" button, or all at once with appropriate spacing between them? Is there any wisdom on the subject?

In my initial design I created a one by one style, but now I'm concerned there's too much clicking of buttons for simple questions.

  • Is it a "graded" quiz style, or more like a survey?
    – LS97
    Aug 2, 2014 at 8:47
  • Good question, it's graded. Users will receive their marks when their submission has been reviewed. Aug 2, 2014 at 8:49
  • 1
    In that case I would say one question per page. I don't have any UX to back it up so I'm not posting it as an answer, but it's what I've seen done most effectively.
    – LS97
    Aug 2, 2014 at 10:12
  • Is there a natural grouping of some questions? Is there interrelationships between some? Is there a need for gradual disclosure i.e. do earlier questions reveal something about later ones? If they're just all short random questions I'd put them on the same page.
    – robert
    Aug 6, 2014 at 9:03

7 Answers 7


I've designed both formats of quiz. Which one is better depends on the situation. Both formats tend to be equally doable from a technical standpoint.

Situations where I've found all questions on one page to be better:

  • When the user is allowed to answer the questions in any order
  • When information from one question helps the user answer another question
  • When you anticipate that the user will often go back and forth between questions

Situations where I've found one question per page to be better:

  • When per-question instant feedback is beneficial for the user
  • When the user is likely to make several validation errors such as if you have complex validation rules on text-based questions
  • When you want to capture a timestamp of when the user answers each question
  • If you want to use Google Analytics to track performance on specific questions, it's easier to set up the custom events when the questions are asked one at a time.
  • When there is a time limit per question

If you go for the one question per page approach make sure you include some indicator that displays to the user how far they are through the quiz.

Sources: Past experience, formal user testing

  • These are excellent points thanks, I think I'll go with the all-at-once approach by default but offer users the option to view one-by-one. Aug 3, 2014 at 8:05
  • Also, for all-in-one: When the user wants to quickly double-check their answers before submitting. Sep 11, 2017 at 13:20

You need to consider the form-factor the users will be using and also avoid latency between questions.

Displaying sequentially can reduce the "clutter" and would work better in many situations such as smaller screens, but should be done dynamically client side if possible to get near instant transitions. Loading new content from the server on every press can feel very slow. A progress indicator is also important as is considering whether you need to save progress / answers as your user progresses or only on completion. Also if subsequent questions may depend on earlier responses a "wizard" approach may help.

You could also consider an infinite scrolling type interface: Show first couple of questions on clearly demarked "panels" and as the user progresses show more.

Ultimately though if retention and UX is critical you should A-B test with real users. Read more here http://en.m.wikipedia.org/wiki/A/B_testing

And you could of course give the user the choice.

  • I think I'll go with displaying everything at once by default, but give users the choice. I'm also guessing that for smaller screens one-by-one would be optimal, thanks for your input! Aug 3, 2014 at 8:04
  • If you intend your users to review all before answering or go back over their questions this is probably a good option.
    – Andy Boura
    Aug 3, 2014 at 8:07

The best approach is to support both leave the decision as an option to the test writer. Some teachers prefer one over the other. Some teachers also may want to control whether or not the student can navigate to previous questions.

  • This is an interesting point, my only concern would be that the UX from the teacher's perspective would complicate their UI. Aug 3, 2014 at 8:07
  • As I have written several such tests for my students, the UI can be as simple as a set of check boxes or radio buttons: show all questions at once? Allow student to go back to a previous question? Allow student to change answer after clicking next? Present questions in test order, or in random order for each student? It's not that hard for a teacher to figure out. Aug 3, 2014 at 14:25

Simply give an option for a user to choose how many questions should be displayed at once. This will give user "Control and Freedom"


I tend to prefer a stepped process as long as there is a clear indicator of progress. So, something like "Question 1 of 5" then "Question 2 of 5" and so on.

To me, it's distracting to have all the questions on one page. I find myself drifting between questions.

  • This is a great option when the questions can be grouped into categories rather than into a set number per page: Demographic Info, Qs on Topic 1, Qs on Topic B, .... Sep 11, 2017 at 13:24

It's better to show the questions one by one or group by group. Because the user can focus on the question. Bytheway It's better to already load all the questions And you should have a progress bar. I tested this method. It works great and we had positive feedbacks.


one by one, reason being is that users can be put off when they see a large amount of questions. secondly, when they do one by one, they are less likely to abandon, as 'I've come this far' mentality, and progress bar shows how close to end.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.