How to create a personality Quiz
Updated over a week ago

Here you can find how to create a personality quiz with variables and score calculation, and redirect each user to different success pages based on their score.

1- Create a new formaloo.

To do it, you can use one of our existing templates or start from scratch. We will explain how to create a quiz from scratch in this article, step by step.

You can customize your form and change color, font, background, etc. Learn more here.

2- Think over the structure of your Quiz

Let’s consider our example.

We are creating an Engagement Quiz “How to define Your Spirit Animal”. Here is the structure of our Quiz:

  • Start screen

  • Introduction (here we ask name and email of the customer)

  • Questions for defining a spirit animal

  • Test results

3- Create this structure in Formaloo.

  • Customize your Start screen (add Title, Description, and Image)

By clicking on «Click to select the image», you can easily access pictures and photos that are stored on your device.

You can also add a Title and Description to your Quiz. All of these features will be automatically added to your Start screen. The description part is fully customizable: you can add tables, format your text, and insert images, links, and special characters.

create a form

  • Create an introduction

Add Field «Text» from the menu on your left. Customize it the way you need using the tab Edit Field.

  • Create Questions

Add Field «Dropdown» from the Edit Field tab. Add your question by writing text in the Title field. Then scroll down to see the Options field. Here you need to add all the options of answers you have for your question.

  • Add variables

In order to create logic, we need to add Fields «Variables» and name them after your Results names. You should have as many Variables as many results you have.

To calculate the actual value of all the variables, you should set the default value of each variable. To do this, go to the "Edit" tab of every variable and put 0 to Default Value.

You should set an ID for every variable so that later you will be able to call your variables. It will help you with answer piping.

Read this article to learn more about answer piping.

Watch this video or read this article to learn more about variables.

  • Create Test results

In Formaloo there is a default Success Page.

In simple words, a Success Page is a page that shows up when a customer succeeded in finishing a test. Basically, it is a page with Test results.

With your form, you may set up more than one success page. Then, using logic, you can lead users to different success pages based on their answers.

You can add images, links, tables, etc to your success pages.

You can read this article to learn more about success pages.

Let’s keep in mind that for every person the result will be different. It depends on the person's answers. That’s why you need to create several success pages.

One of your success pages should be the default success page. This helps your logic conditions show the default success page if no rule was true. In the following, you will see how it works in the logic section.

  • Customize the submit button's text

To see the test result, the customer needs to press the Submit button. Customize it with your own text and after clicking on it, it will redirect your customer to the results.

Scroll down and change the text on the button.

So, the basic structure of our Quiz is ready. Now let's work with Logic.

Logic is a set of actions that will eventually «launch» our Quiz. We have prepared the questions, but to calculate the user's personality, we need to add Logical rules to the questions. That’s why we need to ask automation to create a link between our Questions and the "Test Results" (Success Pages).

Watch this video to learn more about Logic.

4- Add Logic rules to your Quiz to show the users’ personality

  • Go to the «Logic & Calculator» tab. Then go to the advanced logic

  • Add a rule on each question to score your variables based on the user’s response

Set a logic rule between your question ⇒ user’s answers ⇒ user’s test results.

See our example;

Add Condition:

if (the question) What would you say is your most defining characteristic? is (the answer) Option 1. I’m a joker - knock knock… then add 1 (point) to (the variable) A horse

add logic

You need to add this type of condition to every question, answer, and variable that you have.

For example:

if (the question) How would your friends describe you? is (the answer) Option 2. Dopey then add 1 (point) to (the variable) An eagle

logic and calculation

if (the question) If you could live anywhere in the world, where would it be? is (the answer) Option 3. Put me in the Australian outback then add 1 (point) to (the variable) A lion

In our example, we have 4 questions and 5 options for answers to these questions. It means that we should have 20 Logic conditions.

  • Add a rule for comparing the final value of the variables

Now let’s set the rule for what automation should do to compare the values.

Scroll down to the last question where the quiz ends and all personality variables have a final value.

This is where we can compare the final values of variables and show the success page relevant to the biggest variable.

Basically, it needs to follow this rule:

We have A, B, C, D, E:

if D is > than E then after submit go to success page D

if C is > than D and if C is > than E then after submit go to success page C

if B is > than C and if B is > than D and if B is > than E then after submit go to success page B

if A is > than B and if A is > than C and if A is > than D and if A is > than E then after submit go to success page A


E is Elephant

D is Fox

C is Lion

B is Eagle

A is Horse

Let’s consider our example:

if A horse is greater than An eagle


if A horse is greater than A lion


if A horse is greater than A fox


if A horse is greater than An elephant

, then After Submit Go to Success page A horse

You can see the complete logic in our template of an Engagement Quiz «How to define Your Spirit Animal» here:

Did this answer your question?