How to Build Quizzes That Actually Generate Leads
A contact form sits on your page and waits. A quiz pulls people in. "What type of investor are you?" "How secure is your business?" "How much is manual work costing you?" - questions people actually want to answer. The difference in engagement isn't subtle. It's 10x.
Quizzes work because they offer something in return: self-knowledge, a score, a personalized recommendation. Visitors give you their attention and data because they get value back. That's a trade most people are happy to make.
But building a good quiz isn't just throwing questions on a page. The quiz needs logic - scoring, branching, calculated results. It needs to feel responsive, updating as people answer. Most form builders can't do this. You end up with a glorified survey that emails you the answers, not an interactive experience that hooks users and delivers instant insights.
Here's how to build quizzes that actually work - and how FormTs makes the technical parts straightforward.
Why Quizzes Convert Better Than Forms
Let's start with the numbers. BuzzSumo analyzed 100 million articles and found that quizzes are the most shared content format. Typeform reports that quizzes have completion rates 30% higher than standard forms. LeadQuizzes claims conversion rates between 30-50% for well-designed quizzes.
Why the difference? Three reasons:
Curiosity. "What's my score?" is a powerful motivator. People want to know where they stand. A cybersecurity assessment promises to reveal vulnerabilities. A personality quiz promises self-insight. That promise pulls people through to completion.
Reciprocity. You're giving something valuable - a score, analysis, recommendations. Asking for an email in exchange feels fair. "Enter your email to see your detailed results" converts better than "Subscribe to our newsletter" because the value exchange is concrete.
Qualification. Quiz answers tell you about the person. Someone who scores "Critical" on your security assessment has different needs than someone who scores "Excellent." You can segment leads before your sales team ever touches them.
The Four Types of Quizzes That Work
Not all quizzes serve the same purpose. Choose the format based on what you're trying to achieve.
1. Assessment Quizzes
"How secure is your business?" "Rate your website's SEO health." These quizzes evaluate the user against criteria you define. They work because everyone wants to know their score.
Assessment quizzes shine for B2B lead generation. A cybersecurity company can use a security assessment to identify prospects with gaps. An SEO agency can use a website audit quiz to surface opportunities. The quiz does the qualifying - you know exactly what problems each lead has.
Structure: 8-15 questions across several categories (security practices, technical measures, compliance, etc.). Each answer has a point value. Results show an overall score plus breakdown by category.
2. Personality Quizzes
"What type of entrepreneur are you?" "What's your leadership style?" These map users to archetypes. They're highly shareable because people love talking about themselves.
Personality quizzes work for brand awareness and top-of-funnel engagement. They're less about immediate sales qualification and more about getting your brand in front of people. The results are designed to be shared: "I'm a Visionary Entrepreneur - what are you?"
Structure: 5-10 questions, each answer adds points to different personality types. The type with the most points at the end determines the result. Results include a description of the type, strengths, weaknesses, and advice specific to that type.
3. ROI Calculator Quizzes
"How much is manual work costing you?" "Calculate your employee turnover cost." These take user inputs and compute a personalized number. They work because they quantify a problem.
ROI calculators are powerful for sales conversations. When a prospect sees "$47,000 annual cost of manual data entry," you've moved from abstract problems to concrete dollars. The calculator does the selling.
Structure: Ask for business metrics (hours spent, hourly rate, error rate, number of employees). Calculate costs, potential savings, and payback period. Results show the money numbers in big, bold text.
4. Product Recommendation Quizzes
"Which CRM fits your business?" "Find your perfect laptop." These match users to specific products or services. They work because they simplify complex purchasing decisions.
Recommendation quizzes work for any business with multiple offerings or complex products. A software company can match prospects to the right tier. An e-commerce site can match shoppers to the right product. The quiz filters thousands of options down to "this one's for you."
Structure: Ask about needs, preferences, constraints, and use cases. Weight each answer toward specific products. Show the top match with an explanation of why it fits, plus alternatives.
See 50+ quiz examples in our quiz gallery.
What Makes a Quiz Engaging
The difference between a quiz people abandon and one they complete comes down to a few design choices.
Instant Feedback
Don't make people wait until the end to see anything. Show progress. Update scores in real-time. When someone answers a question, something should change on screen. This creates momentum.
FormTs makes this natural with reactive values. Any field can have a computedValue that updates automatically when inputs change:
// Track score across questions
const score = form.state(0);
form.addRow(row => {
row.addRadioButton('question1', {
label: 'How often do you back up your data?',
options: [
{ id: 'never', name: 'Never' },
{ id: 'sometimes', name: 'Sometimes' },
{ id: 'weekly', name: 'Weekly' },
{ id: 'daily', name: 'Daily or more' }
],
onValueChange: (val) => {
const points = { never: 0, sometimes: 1, weekly: 2, daily: 3 };
score.update(s => s + (points[val] || 0));
}
});
});The score updates with each answer. You can display it in the corner, show a progress bar filling up, or reveal category scores as sections complete.
One Question at a Time (Usually)
Long scrolling pages with 20 questions feel like work. Multi-page quizzes with one question per screen feel like a game. The content is the same; the experience is different.
Multi-page works because each click is a micro-commitment. Once someone answers question 1, they've invested. They want to see it through. The sunk cost fallacy works in your favor.
// Multi-page quiz with progress
const pages = form.addPages('quiz');
const page1 = pages.addPage('basics');
page1.addRow(row => {
row.addTextPanel('intro', {
label: 'Question 1 of 5'
});
});
page1.addRow(row => {
row.addRadioButton('q1', {
label: 'Your biggest challenge right now?',
options: [
{ id: 'time', name: 'Not enough time' },
{ id: 'money', name: 'Limited budget' },
{ id: 'skills', name: 'Need more expertise' }
]
});
});
const page2 = pages.addPage('details');
page2.addRow(row => {
row.addTextPanel('intro', {
label: 'Question 2 of 5'
});
});
// ... more questionsThat said, some quizzes work better as single pages - especially short assessments or ROI calculators where seeing all inputs together helps users understand the calculation. Use your judgment.
Results Worth Waiting For
The results page is where the magic happens - or doesn't. Generic results like "You scored 65%" give users nothing. Personalized insights keep them engaged.
Good results pages include:
- A clear verdict - "Your security posture: Critical" or "You're a Visionary Entrepreneur"
- Specific scores or breakdowns - show where they're strong and weak
- Personalized recommendations - what should they do next, based on their answers?
- A next step - download a report, book a call, start a trial
// Dynamic results based on score
const score = form.state(0);
const resultsSection = form.addSubform('results', {
title: 'Your Results',
isVisible: () => quizComplete()
});
resultsSection.addRow(row => {
row.addTextPanel('scoreDisplay', {
computedValue: () => {
const s = score();
if (s >= 80) return '๐ Excellent! Score: ' + s + '/100';
if (s >= 60) return 'โ
Good! Score: ' + s + '/100';
if (s >= 40) return 'โ ๏ธ Needs Work. Score: ' + s + '/100';
return '๐จ Critical. Score: ' + s + '/100';
},
customStyles: {
fontSize: '1.5rem',
fontWeight: 'bold',
textAlign: 'center'
}
});
});Pro tip
Don't gate all the results behind an email. Show the score and summary immediately. Gate the detailed analysis or downloadable report. Users who see value are more likely to give their email for more.
Building Quiz Logic in FormTs
Let's get into the technical parts. Quizzes need three things that basic form builders can't do well: scoring logic, type detection, and dynamic results.
Scoring Assessments
The simplest pattern: each answer has a point value, and you sum them up. Use FormTs state to track the score, and onValueChange to update it.
// Track score across questions
const score = form.state(0);
form.addRow(row => {
row.addRadioButton('question1', {
label: 'How often do you back up your data?',
options: [
{ id: 'never', name: 'Never' },
{ id: 'sometimes', name: 'Sometimes' },
{ id: 'weekly', name: 'Weekly' },
{ id: 'daily', name: 'Daily or more' }
],
onValueChange: (val) => {
const points = { never: 0, sometimes: 1, weekly: 2, daily: 3 };
score.update(s => s + (points[val] || 0));
}
});
});For category-based scoring (like a security assessment with sections for "Access Control," "Data Protection," etc.), track multiple scores:
const scores = form.state({
accessControl: 0,
dataProtection: 0,
networkSecurity: 0,
compliance: 0
});Personality Type Detection
Personality quizzes map answers to types. Each answer increments one or more type counters. The type with the highest count wins.
// Personality quiz with type tracking
const types = form.state({
visionary: 0,
operator: 0,
analyst: 0,
networker: 0
});
form.addRow(row => {
row.addRadioButton('approach', {
label: 'When facing a new challenge, you typically:',
options: [
{ id: 'a', name: 'Imagine the big picture first' },
{ id: 'b', name: 'Create a detailed action plan' },
{ id: 'c', name: 'Research all available data' },
{ id: 'd', name: 'Talk to people who faced it before' }
],
onValueChange: (val) => {
types.update(t => ({
...t,
visionary: t.visionary + (val === 'a' ? 1 : 0),
operator: t.operator + (val === 'b' ? 1 : 0),
analyst: t.analyst + (val === 'c' ? 1 : 0),
networker: t.networker + (val === 'd' ? 1 : 0)
}));
}
});
});At the end, compute the dominant type:
const dominantType = form.computedValue(() => {
const t = types();
const entries = Object.entries(t);
entries.sort((a, b) => b[1] - a[1]);
return entries[0][0]; // Returns 'visionary', 'operator', etc.
});ROI Calculations
ROI calculators take numeric inputs and compute results. This is where FormTs really shines - computed values update in real-time as users adjust sliders or enter numbers.
// ROI calculator with live results
const hourlyRate = form.slider('hourlyRate');
const hoursPerWeek = form.slider('hoursPerWeek');
const weeksPerYear = 50;
form.addRow(row => {
row.addPriceDisplay('annualCost', {
label: 'Current Annual Cost',
computedValue: () => {
const rate = hourlyRate?.value() || 0;
const hours = hoursPerWeek?.value() || 0;
return rate * hours * weeksPerYear;
},
variant: 'large',
suffix: '/year'
});
});
form.addRow(row => {
row.addPriceDisplay('potentialSavings', {
label: 'Potential Savings (70% automation)',
computedValue: () => {
const rate = hourlyRate?.value() || 0;
const hours = hoursPerWeek?.value() || 0;
return rate * hours * weeksPerYear * 0.7;
},
variant: 'success',
suffix: '/year'
});
});The price displays update instantly when sliders move. Users see the impact of each input change immediately. No "Calculate" button needed.
Rating Controls Built for Quizzes
FormTs includes rating controls designed for surveys and quizzes:
- NPS Scale - 0-10 with colored segments and detractor/passive/promoter labels
- Likert Scale - 5 or 7 point agreement scales
- Emoji Rating - satisfaction, mood, effort presets with actual emoji
- Star Rating - classic 1-5 stars with optional half-stars
- Matrix Questions - rows of items rated against columns
// NPS-style rating with category tracking
form.addRow(row => {
row.addRatingScale('recommendation', {
label: 'How likely are you to recommend us?',
preset: 'nps',
showSegmentColors: true,
showCategoryLabel: true,
onCategoryChange: (category) => {
// category is 'detractor', 'passive', or 'promoter'
if (category === 'promoter') {
showReferralSection();
}
}
});
});
// Emoji rating for satisfaction
form.addRow(row => {
row.addEmojiRating('satisfaction', {
label: 'How was your experience?',
preset: 'satisfaction',
size: 'lg'
});
});These aren't just visual - they include built-in category detection (for NPS), preset label configurations, and styling options that make quizzes look professional without custom CSS.
Lead Capture That Doesn't Kill Completion
Here's where many quizzes fail: they ask for email before showing results. The user just spent 3 minutes answering questions and gets a gate instead of a reward. That's a trust-breaker.
Better approach: show partial results immediately, then offer more for an email.
// Lead capture after quiz completion
const resultsSection = form.addSubform('results', {
isVisible: () => quizComplete()
});
resultsSection.addRow(row => {
row.addTextPanel('teaser', {
computedValue: () =>
'Your score: ' + score() + '/100. ' +
'Enter your email for detailed recommendations.'
});
});
resultsSection.addRow(row => {
row.addEmail('email', {
label: 'Email',
placeholder: 'you@company.com',
isRequired: true
});
});
resultsSection.addRow(row => {
row.addTextbox('name', {
label: 'Name',
placeholder: 'Your name'
});
});"Your score: 47/100" is the hook. "Enter email for detailed recommendations" is the exchange. The user already got something; now they're deciding if they want more. That's a very different psychology than "give me your email before I show you anything."
Pro tip
For B2B quizzes, ask for company size and role in addition to email. This helps sales prioritize and personalize follow-up. But keep it short - every field you add reduces completion rate.
Quiz Design Patterns That Work
A few patterns we've seen work well across different quiz types:
Start Easy
The first question should be simple and quick to answer. "What industry are you in?" or "How many employees does your company have?" - something factual that doesn't require thought. This gets people moving. The harder questions come later when they're already committed.
Keep Questions Focused
Each question should ask one thing. "How often do you review your security policies and update your incident response procedures?" is two questions. Split them. Compound questions confuse people and produce unreliable data.
Make Progress Visible
"Question 5 of 12" or a progress bar. People want to know how close they are to the end. Without progress indicators, a quiz feels like it might go on forever.
Mobile-First
More than half your quiz traffic is probably mobile. Test on phones. Buttons should be big enough to tap. Radio buttons should have generous hit areas. Sliders work surprisingly well on mobile if properly sized.
Results Should Be Shareable
"I'm a Visionary Entrepreneur - take the quiz to find your type!" Make it easy to share results. Include pre-written social text. Some quiz platforms report that shared results drive 20-30% of new quiz takers.
When Quizzes Don't Work
Quizzes aren't always the answer. They work poorly when:
- You can't offer interesting results - if the "result" is just "thanks for the info," you're better off with a regular form
- The topic isn't personal - quizzes about commodity products don't engage because there's no self-discovery
- Your audience is in a hurry - if someone needs urgent help, a 3-minute quiz is a barrier, not a hook
- You don't have segmentation capability - collecting detailed quiz data you'll never use is wasted effort
A quiz should serve your leads, not just your lead count. If you can't deliver genuine value through results and recommendations, stick with simpler forms.
Getting Started
Ready to build a quiz? Here's a practical path:
1. Pick a type. Assessment, personality, ROI, or recommendation. Start with one. Each requires different logic patterns.
2. Browse examples. Our quiz gallery has 50+ working examples. Find one close to what you need. Open the code and see how it works.
3. Start from a template. Don't build from scratch. Copy a similar quiz, then modify the questions, scoring logic, and results. This is faster and you'll learn the patterns.
4. Test before launch. Take your own quiz. Is it engaging? Do the results feel accurate? Are the recommendations helpful? Get a few colleagues to test it and watch where they hesitate.
The technical parts - scoring, conditional logic, dynamic results - are handled by FormTs. The creative parts - good questions, interesting results, compelling recommendations - are up to you. Focus your energy there.
Common Questions
How long should a quiz be?
5-15 questions is the sweet spot. Under 5 feels too simple to deliver meaningful results. Over 15 and completion rates drop. For ROI calculators with numeric inputs, 5-8 questions works well. For personality quizzes, 8-12 questions gives enough data to differentiate types.
Should I require email to see results?
Partial gating works better than full gating. Show the score or type immediately - that's the reward for completing the quiz. Gate the detailed breakdown, recommendations, or downloadable PDF. This approach typically converts 30-40% of completers to leads while maintaining high completion rates.
Can I use AI to generate quiz questions?
Yes. Describe your quiz to an LLM with our type definitions, and it can generate the questions, answer options, and scoring logic. Works especially well for assessment quizzes where you define the categories and the AI helps with question variety. You'll want to review for quality, but it's a solid starting point.
How do I track quiz performance?
FormTs submissions include all quiz answers and computed scores. You can export to CSV, connect via webhooks to your CRM, or use our analytics dashboard. Track completion rate (started vs finished), email capture rate, and score distribution to identify which segments you're reaching.
What's the difference between a quiz and a calculator?
Calculators take numeric inputs and compute results (ROI, cost, savings). Quizzes ask questions and determine a score, type, or recommendation. Some overlap - an ROI 'quiz' is really a calculator. The distinction matters for user expectations: people expect calculators to be precise; they expect quizzes to be insightful.