# QuizGen templates

Copy-paste prompts for common quizzes, forms, and invoices, each with the
complete ready-to-POST JSON definition. Paste a prompt into Claude or ChatGPT,
fill in the bracket, and your assistant builds and deploys the real thing via
QuizGen's MCP server (https://quizgen.dev/mcp) or API — or adapt the JSON and
POST it yourself.

## Order form that takes payment

Small businesses taking orders — pre-orders, custom runs, merch — and getting paid in the same submission.

Collects card payment via Stripe (Business plan, after Stripe onboarding).

The prompt:

```
Read https://quizgen.dev/blog/order-form-template.md and create me an order form that takes payment for [MY BUSINESS — describe what you sell, the options, and the prices]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Riverside Print Co. — order form",
  "description": "Custom screen-printed shirts. Payment is collected when you submit.",
  "settings": {
    "collect_respondent": "email_required",
    "completion": {
      "message": "Thanks! We'll confirm your order and pickup or delivery time by email."
    }
  },
  "sections": [
    {
      "key": "order",
      "title": "Your order",
      "questions": [
        { "id": "customer_name", "type": "short_text", "prompt": "Your name",
          "required": true },
        { "id": "phone", "type": "phone", "prompt": "Phone number",
          "required": true, "help": "In case we need to reach you about your order." },
        { "id": "style", "type": "choice", "prompt": "Which shirt are you ordering?",
          "required": true,
          "options": [
            { "value": "crew_tee", "label": "Crew neck tee" },
            { "value": "hoodie", "label": "Hoodie" },
            { "value": "tank", "label": "Tank top" },
            { "value": "long_sleeve", "label": "Long sleeve" }
          ] },
        { "id": "fulfillment", "type": "choice", "prompt": "Pickup or delivery?",
          "required": true,
          "options": [
            { "value": "pickup", "label": "Pickup at the shop" },
            { "value": "delivery", "label": "Local delivery" }
          ] },
        { "id": "delivery_address", "type": "short_text", "prompt": "Delivery address",
          "required": true,
          "show_if": { "question": "fulfillment", "op": "eq", "value": "delivery" } },
        { "id": "needed_by", "type": "date", "prompt": "Date you need it by",
          "required": true },
        { "id": "notes", "type": "long_text", "prompt": "Design details, logo placement, colors",
          "help": "Attach nothing here — just describe it. We'll follow up by email if we need a file.",
          "rows": 4 }
      ]
    },
    {
      "key": "payment",
      "title": "Payment",
      "questions": [
        { "id": "package", "type": "payment",
          "prompt": "Choose your quantity and pay now", "required": true,
          "price_options": [
            { "value": "single", "label": "1 shirt", "amount_cents": 2500 },
            { "value": "five_pack", "label": "5-pack", "amount_cents": 11000,
              "detail": "$22 each" },
            { "value": "ten_pack", "label": "10-pack", "amount_cents": 20000,
              "detail": "$20 each" },
            { "value": "twenty_pack", "label": "20-pack (event size)", "amount_cents": 38000,
              "detail": "$19 each" }
          ],
          "button_label": "Pay & confirm order" }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/order-form-template.md

## Invoice with online payment

Freelancers and small businesses sending a client an itemized invoice they can approve and pay by card.

Collects card payment via Stripe (Business plan, after Stripe onboarding).

The prompt:

```
Read https://quizgen.dev/blog/invoice-template.md and create me an invoice for [MY BUSINESS — describe the work, the client, and the amount]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Invoice #2026-014 — Acme Design Co.",
  "description": "Due within 14 days. Questions? Reply to the email this came in.",
  "settings": {
    "collect_respondent": "email_required",
    "completion": { "message": "Thanks — payment received. A receipt is on its way." }
  },
  "sections": [
    {
      "key": "invoice",
      "title": "Invoice details",
      "questions": [
        { "id": "line_items", "type": "statement",
          "title": "Invoice #2026-014 · due August 19, 2026",
          "body": [
            "Website redesign — homepage and pricing page: $2,400",
            "Contact form + CRM integration: $600",
            "Rush delivery (agreed July 28): $300",
            "Total due: $3,300"
          ] },
        { "id": "details_correct", "type": "yes_no",
          "prompt": "Do the charges above match what we agreed?",
          "required": true },
        { "id": "correction", "type": "long_text",
          "prompt": "What looks off? I'll send a corrected invoice.",
          "show_if": { "question": "details_correct", "op": "eq", "value": "no" } },
        { "id": "approval", "type": "consent",
          "prompt": "I approve this invoice for $3,300.",
          "show_if": { "question": "details_correct", "op": "eq", "value": "yes" },
          "required": true },
        { "id": "pay", "type": "payment",
          "prompt": "Pay this invoice",
          "amount_cents": 330000,
          "currency": "usd",
          "button_label": "Pay $3,300",
          "show_if": { "question": "details_correct", "op": "eq", "value": "yes" },
          "required": true }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/invoice-template.md

## Quote with one-click approval

Anyone who sends quotes or estimates and wants a recorded acceptance instead of a “looks good” email.

Collects card payment via Stripe (Business plan, after Stripe onboarding).

The prompt:

```
Read https://quizgen.dev/blog/quote-template.md and create me a quote for [MY BUSINESS — describe the scope, the line items, and the total]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Quote #Q-2026-041 — Acme Design Co.",
  "description": "Valid through August 19, 2026. Reply to the email this came in with any questions.",
  "settings": {
    "collect_respondent": "email_required",
    "close_at": "2026-08-19T00:00:00Z"
  },
  "sections": [
    {
      "key": "quote",
      "title": "Quote details",
      "questions": [
        { "id": "scope", "type": "statement",
          "title": "Quote #Q-2026-041 · valid through August 19, 2026",
          "body": [
            "Website redesign — homepage and pricing page: $2,400",
            "Contact form + CRM integration: $600",
            "Estimated total: $3,000",
            "Estimated timeline: 3 weeks from approval"
          ] },
        { "id": "scope_correct", "type": "yes_no",
          "prompt": "Does the scope and pricing above match what you're expecting?",
          "required": true },
        { "id": "requested_changes", "type": "long_text",
          "prompt": "What would you like changed?", "rows": 4,
          "show_if": { "question": "scope_correct", "op": "eq", "value": "no" } },
        { "id": "approval", "type": "consent",
          "prompt": "I approve this quote for $3,000 and authorize the work described above.",
          "show_if": { "question": "scope_correct", "op": "eq", "value": "yes" },
          "required": true },
        { "id": "deposit", "type": "payment",
          "prompt": "Secure your spot with a deposit",
          "show_if": { "question": "scope_correct", "op": "eq", "value": "yes" },
          "price_options": [
            { "value": "deposit_50", "label": "50% deposit", "amount_cents": 150000, "detail": "Balance due on delivery" },
            { "value": "pay_full", "label": "Pay in full", "amount_cents": 300000, "detail": "10% discount applied" }
          ],
          "button_label": "Pay deposit" }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/quote-template.md

## Event registration with paid tickets

Conference, workshop, and class organizers selling tickets and capping attendance.

Collects card payment via Stripe (Business plan, after Stripe onboarding).

The prompt:

```
Read https://quizgen.dev/blog/event-registration-form-template.md and create me an event registration form for [MY EVENT — describe the event, the date, the ticket tiers, and the capacity]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "registration",
  "title": "Register: DevBridge Conference 2026",
  "description": "October 14–15, Grand Rapids Convention Center.",
  "settings": {
    "collect_respondent": "email_required",
    "max_responses": 300,
    "close_at": "2026-10-07T23:59:00Z",
    "completion": {
      "message": "You're registered — a confirmation and your ticket receipt are on the way."
    }
  },
  "sections": [
    {
      "key": "attendee",
      "title": "Your details",
      "questions": [
        { "id": "full_name", "type": "short_text", "prompt": "Full name",
          "required": true, "placeholder": "Jordan Smith" },
        { "id": "email", "type": "email", "prompt": "Email address",
          "required": true, "placeholder": "you@company.com" },
        { "id": "track", "type": "choice", "prompt": "Which track are you registering for?",
          "required": true,
          "options": [
            { "value": "engineering", "label": "Engineering", "detail": "Architecture, infra, and platform talks" },
            { "value": "product", "label": "Product", "detail": "Roadmapping, discovery, and launch talks" },
            { "value": "design", "label": "Design", "detail": "Systems, research, and craft talks" }
          ] },
        { "id": "dietary", "type": "choice", "prompt": "Any dietary requirements for the catered meals?",
          "required": true,
          "options": [
            { "value": "none", "label": "No restrictions" },
            { "value": "vegetarian", "label": "Vegetarian" },
            { "value": "vegan", "label": "Vegan" },
            { "value": "other", "label": "Other (tell us below)" }
          ],
          "follow_up": "What should the caterer know?" },
        { "id": "conduct", "type": "consent",
          "prompt": "I've read and agree to the event code of conduct.",
          "required": true }
      ]
    },
    {
      "key": "ticket",
      "title": "Your ticket",
      "questions": [
        { "id": "ticket_type", "type": "payment",
          "prompt": "Choose your ticket",
          "required": true,
          "price_options": [
            { "value": "early_bird", "label": "Early bird", "amount_cents": 14900,
              "detail": "Ends September 15" },
            { "value": "standard", "label": "Standard", "amount_cents": 19900,
              "detail": "September 16 onward" },
            { "value": "student", "label": "Student", "amount_cents": 7900,
              "detail": "Valid student ID required at check-in" }
          ],
          "button_label": "Pay and register" }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/event-registration-form-template.md

## Client intake form

Freelancers, agencies, and consultants who want the first-call questions answered before the call.

The prompt:

```
Read https://quizgen.dev/blog/client-intake-form-template.md and create me a client intake form for [MY BUSINESS — describe what you do and what you need to know from a new client]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "New client intake",
  "description": "Three minutes now saves the first twenty of our call.",
  "sections": [
    {
      "key": "contact",
      "title": "About you",
      "questions": [
        { "id": "welcome", "type": "statement",
          "title": "Before we talk",
          "body": [
            "A few questions about you and the project so our first call starts at step two.",
            "Answers autosave — you can close the tab and pick up later."
          ] },
        { "id": "full_name", "type": "short_text", "prompt": "What's your name?",
          "required": true, "placeholder": "Jordan Smith" },
        { "id": "work_email", "type": "email", "prompt": "Best email to reach you?",
          "required": true, "placeholder": "you@company.com" }
      ]
    },
    {
      "key": "project",
      "title": "The project",
      "questions": [
        { "id": "service_type", "type": "choice",
          "prompt": "What do you need help with?", "required": true,
          "options": [
            { "value": "new_website", "label": "A new website",
              "detail": "Design and build from scratch" },
            { "value": "redesign", "label": "A redesign",
              "detail": "Existing site, new direction" },
            { "value": "ongoing_support", "label": "Ongoing support",
              "detail": "Retainer or maintenance" }
          ] },
        { "id": "current_site", "type": "short_text",
          "prompt": "What's the current site's address?",
          "placeholder": "https://",
          "show_if": { "question": "service_type", "op": "eq", "value": "redesign" } },
        { "id": "budget", "type": "number", "prompt": "Rough budget?",
          "help": "A ballpark is fine — it tells us which options to bring.",
          "min": 0, "unit": "USD" },
        { "id": "goals", "type": "long_text",
          "prompt": "What does success look like six months in?", "rows": 5,
          "examples": [
            "Double demo signups by Q4",
            "Stop losing mobile visitors at checkout"
          ] },
        { "id": "referral_source", "type": "multi_choice",
          "prompt": "How did you hear about us?", "min": 1, "max": 2,
          "options": [
            { "value": "search", "label": "Search" },
            { "value": "referral", "label": "A referral" },
            { "value": "social", "label": "Social media" },
            { "value": "other", "label": "Somewhere else" }
          ] }
      ]
    }
  ],
  "settings": {
    "completion": { "message": "Thanks — we'll review this before the call." }
  }
}
```

Guide: https://quizgen.dev/blog/client-intake-form-template.md

## Contact form

Anyone who needs a hosted contact form with submissions routed somewhere useful.

The prompt:

```
Read https://quizgen.dev/blog/contact-form-template.md and create me a contact form for [MY SITE — describe your business and what people usually get in touch about]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Contact us",
  "description": "We usually reply within one business day.",
  "sections": [
    {
      "key": "message",
      "questions": [
        { "id": "full_name", "type": "short_text", "prompt": "Your name",
          "required": true, "placeholder": "Jordan Smith" },
        { "id": "email", "type": "email", "prompt": "Your email",
          "required": true, "placeholder": "you@company.com" },
        { "id": "topic", "type": "choice", "prompt": "What's this about?",
          "required": true,
          "options": [
            { "value": "sales", "label": "Sales question" },
            { "value": "support", "label": "Support" },
            { "value": "other", "label": "Something else" }
          ] },
        { "id": "company_size", "type": "choice",
          "prompt": "Roughly how big is your team?",
          "show_if": { "question": "topic", "op": "eq", "value": "sales" },
          "options": [
            { "value": "solo", "label": "Just me" },
            { "value": "small", "label": "2-10" },
            { "value": "mid", "label": "11-50" },
            { "value": "large", "label": "50+" }
          ] },
        { "id": "phone", "type": "phone", "prompt": "Phone (optional)",
          "help": "Only if you'd rather we call." },
        { "id": "message", "type": "long_text", "prompt": "Your message",
          "required": true, "rows": 5 }
      ]
    }
  ],
  "settings": {
    "completion": { "message": "Thanks — we'll get back to you within a business day." }
  }
}
```

Guide: https://quizgen.dev/blog/contact-form-template.md

## Lead qualification form that scores itself

Sales and marketing teams who want leads sorted by budget and urgency the moment they submit.

The prompt:

```
Read https://quizgen.dev/blog/lead-qualification-form-that-scores-itself.md and create me a lead qualification form for [MY BUSINESS — describe what you sell and what makes a lead a good fit]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Are we a fit?",
  "sections": [ { "key": "main", "questions": [
    { "id": "budget", "type": "choice", "prompt": "Monthly budget?",
      "options": [
        { "value": "under_1k", "label": "Under $1k" },
        { "value": "1k_5k", "label": "$1k–5k" },
        { "value": "over_5k", "label": "Over $5k" }
      ] },
    { "id": "timeline", "type": "choice", "prompt": "When do you need this live?",
      "options": [
        { "value": "asap", "label": "ASAP" },
        { "value": "this_quarter", "label": "This quarter" },
        { "value": "someday", "label": "Just exploring" }
      ] }
  ] } ],
  "outcomes": {
    "method": "points",
    "points": {
      "budget":   { "under_1k": 0, "1k_5k": 2, "over_5k": 5 },
      "timeline": { "asap": 3, "this_quarter": 2, "someday": 0 }
    },
    "buckets": [
      { "key": "not_ready", "max": 3, "title": "Thanks for the interest!",
        "body": "We'll follow up if it's a fit." },
      { "key": "qualified", "min": 4, "title": "Let's talk",
        "body": "Grab a time that works for you.",
        "redirect_url": "https://example.com/book" }
    ]
  }
}
```

Guide: https://quizgen.dev/blog/lead-qualification-form-that-scores-itself.md

## Job application form with screening

Small teams hiring without an applicant tracking system who want applications scored as they arrive.

The prompt:

```
Read https://quizgen.dev/blog/job-application-form-template.md and create me a job application form for [MY ROLE — describe the job, the must-have requirements, and the nice-to-haves]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Apply: Product Designer",
  "description": "Takes about 5 minutes. We read every application.",
  "settings": {
    "collect_respondent": "email_required"
  },
  "sections": [
    {
      "key": "candidate",
      "title": "About you",
      "questions": [
        { "id": "full_name", "type": "short_text", "prompt": "Full name",
          "required": true, "placeholder": "Jordan Smith" },
        { "id": "email", "type": "email", "prompt": "Email address",
          "required": true, "placeholder": "you@example.com" },
        { "id": "phone", "type": "phone", "prompt": "Phone number",
          "required": true, "placeholder": "+1 555 555 5555" },
        { "id": "resume_file", "type": "file_upload", "prompt": "Upload your resume",
          "help": "PDF or Word document.",
          "required": true, "max_files": 1, "accept": ["pdf", "document"] },
        { "id": "portfolio_link", "type": "url", "prompt": "Link to a portfolio, LinkedIn, or GitHub",
          "help": "Optional, but it usually helps more than the resume does.",
          "placeholder": "https://" }
      ]
    },
    {
      "key": "role",
      "title": "The role",
      "questions": [
        { "id": "position", "type": "choice", "prompt": "Which role are you applying for?",
          "required": true,
          "options": [
            { "value": "product_designer", "label": "Product Designer" },
            { "value": "senior_product_designer", "label": "Senior Product Designer" },
            { "value": "design_intern", "label": "Design Intern" }
          ] },
        { "id": "years_experience", "type": "number",
          "prompt": "Years of relevant experience", "required": true,
          "min": 0, "unit": "years" },
        { "id": "authorization", "type": "choice",
          "prompt": "Work authorization and location", "required": true,
          "options": [
            { "value": "us_remote", "label": "Authorized to work in the US, remote" },
            { "value": "us_onsite", "label": "Authorized to work in the US, near our office" },
            { "value": "sponsorship_needed", "label": "Would need visa sponsorship" },
            { "value": "outside_us", "label": "Based outside the US" }
          ] },
        { "id": "key_skills", "type": "multi_choice",
          "prompt": "Which of these do you have hands-on experience with?",
          "min": 1,
          "options": [
            { "value": "figma", "label": "Figma" },
            { "value": "design_systems", "label": "Design systems" },
            { "value": "user_research", "label": "User research" },
            { "value": "html_css", "label": "HTML/CSS" },
            { "value": "prototyping", "label": "Prototyping (motion/interaction)" }
          ] },
        { "id": "why_role", "type": "long_text",
          "prompt": "Why this role, and why us?", "rows": 5, "required": true,
          "examples": [
            "I've used your product for two years and want to fix the onboarding flow I struggled with"
          ] }
      ]
    },
    {
      "key": "consent",
      "title": "Before you submit",
      "questions": [
        { "id": "data_consent", "type": "consent",
          "prompt": "I consent to this application, including my contact details and answers, being stored and reviewed by the hiring team for this role.",
          "required": true }
      ]
    }
  ],
  "outcomes": {
    "method": "points",
    "points": {
      "authorization": { "us_remote": 3, "us_onsite": 3, "sponsorship_needed": 1, "outside_us": 0 },
      "key_skills": { "figma": 1, "design_systems": 2, "user_research": 1, "html_css": 1, "prototyping": 1 }
    },
    "buckets": [
      { "key": "not_a_fit", "max": 2, "title": "Thanks for applying",
        "body": "We'll keep your application on file and reach out if a better-matched role opens up." },
      { "key": "review", "min": 3, "max": 5, "title": "Application received",
        "body": "Your application is in the queue for review — we'll follow up within two weeks either way." },
      { "key": "screen_now", "min": 6, "title": "Thanks — you're a strong match on paper",
        "body": "We'll reach out to schedule a first call within the next few days." }
    ]
  }
}
```

Guide: https://quizgen.dev/blog/job-application-form-template.md

## Customer feedback form

Businesses collecting satisfaction ratings and open-ended feedback after a purchase or interaction.

The prompt:

```
Read https://quizgen.dev/blog/customer-feedback-form-template.md and create me a customer feedback form for [MY BUSINESS — describe what you sell and who fills this out]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "survey",
  "title": "How did we do?",
  "description": "Two minutes, tops. Your feedback decides what we fix next.",
  "settings": {
    "collect_respondent": "email_optional",
    "autosave": true,
    "completion": { "message": "Thanks — we read every one of these." }
  },
  "sections": [ { "key": "main", "questions": [
    { "id": "satisfaction", "type": "scale",
      "prompt": "Overall, how satisfied are you with the project?",
      "required": true, "min": 1, "max": 10,
      "min_label": "Not satisfied", "max_label": "Extremely satisfied" },
    { "id": "best_part", "type": "choice",
      "prompt": "What did we do best?",
      "options": [
        { "value": "communication", "label": "Communication" },
        { "value": "quality", "label": "Quality of the work" },
        { "value": "speed", "label": "Speed of delivery" },
        { "value": "value", "label": "Value for the price" }
      ],
      "follow_up": "What specifically stood out?" },
    { "id": "improve", "type": "long_text",
      "prompt": "What could we have done better?", "rows": 4,
      "examples": [
        "Faster responses to questions",
        "Clearer pricing up front",
        "More progress updates along the way"
      ] }
  ] } ]
}
```

Guide: https://quizgen.dev/blog/customer-feedback-form-template.md

## Customer satisfaction survey (with NPS)

Teams tracking Net Promoter Score and satisfaction over time, with follow-ups that branch on the score.

The prompt:

```
Read https://quizgen.dev/blog/customer-satisfaction-survey-template.md and create me a customer satisfaction survey with an NPS question for [MY BUSINESS — describe your product and who you're surveying]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "survey",
  "title": "Customer satisfaction survey",
  "description": "Two minutes. Your answers shape what we fix next.",
  "settings": {
    "collect_respondent": "email_optional",
    "autosave": true,
    "completion": { "message": "Thanks — we read every one of these." }
  },
  "sections": [
    {
      "key": "main",
      "questions": [
        { "id": "nps", "type": "scale", "required": true,
          "prompt": "How likely are you to recommend us to a friend or colleague?",
          "min": 0, "max": 10,
          "min_label": "Not at all likely", "max_label": "Extremely likely" },
        { "id": "satisfaction", "type": "rating", "required": true,
          "prompt": "Overall, how satisfied are you with us?", "max": 5 },
        { "id": "score_driver", "type": "choice",
          "prompt": "What mainly drove your score?",
          "options": [
            { "value": "product_quality", "label": "Product quality" },
            { "value": "customer_support", "label": "Customer support" },
            { "value": "price_value", "label": "Price / value" },
            { "value": "ease_of_use", "label": "Ease of use" },
            { "value": "other", "label": "Something else" }
          ] },
        { "id": "detractor_recovery", "type": "long_text",
          "prompt": "Sorry to hear that. What's the one thing we could do to earn a higher score from you?",
          "rows": 4,
          "show_if": { "question": "nps", "op": "lte", "value": 6 } },
        { "id": "promoter_referral", "type": "long_text",
          "prompt": "Glad to hear it! What would you tell a colleague who was considering us?",
          "rows": 4,
          "show_if": { "question": "nps", "op": "gte", "value": 9 } },
        { "id": "open_feedback", "type": "long_text",
          "prompt": "Anything else you'd like us to know?", "rows": 4 }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/customer-satisfaction-survey-template.md

## Exit interview form

HR and founders who want candid, structured answers from people leaving the company.

The prompt:

```
Read https://quizgen.dev/blog/exit-interview-questions.md and create me an exit interview form for [MY COMPANY — describe the team size and whether you want it anonymous]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "survey",
  "title": "Exit interview",
  "description": "About 10 minutes. Your honest answers help us fix what needs fixing — this isn't going in your personnel file.",
  "settings": {
    "collect_respondent": "none",
    "autosave": true,
    "completion": { "message": "Thank you — we appreciate you taking the time, and we wish you well." }
  },
  "sections": [
    {
      "key": "main",
      "questions": [
        { "id": "primary_reason", "type": "choice", "required": true,
          "prompt": "What's the primary reason you're leaving?",
          "options": [
            { "value": "new_role", "label": "Took a new role elsewhere" },
            { "value": "compensation", "label": "Compensation" },
            { "value": "management", "label": "Management or leadership" },
            { "value": "growth", "label": "Lack of growth opportunities" },
            { "value": "worklife_balance", "label": "Work-life balance" },
            { "value": "relocation_personal", "label": "Relocation or personal reasons" },
            { "value": "company_direction", "label": "Company direction or stability" },
            { "value": "other", "label": "Other" }
          ] },
        { "id": "manager_relationship", "type": "long_text", "rows": 4,
          "prompt": "How would you describe your working relationship with your manager? What, if anything, could they have done differently?" },
        { "id": "compensation_growth", "type": "long_text", "rows": 4,
          "prompt": "Was your compensation and growth path fair and clearly communicated? What would have changed your mind about staying?" },
        { "id": "culture_fit", "type": "long_text", "rows": 4,
          "prompt": "What did you like most, and least, about the culture and day-to-day here?" },
        { "id": "recommend_workplace", "type": "scale", "required": true,
          "prompt": "How likely are you to recommend us to a friend as a place to work?",
          "min": 0, "max": 10,
          "min_label": "Not at all likely", "max_label": "Extremely likely" },
        { "id": "would_return", "type": "yes_no",
          "prompt": "If the right role opened up in the future, would you consider working here again?" },
        { "id": "anything_else", "type": "long_text", "rows": 4,
          "prompt": "Anything else you'd like leadership or HR to know?" }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/exit-interview-questions.md

## Event RSVP with a response cap

Anyone hosting an event with a fixed headcount who needs the form to stop taking answers on its own.

The prompt:

```
Read https://quizgen.dev/blog/event-rsvp-form-with-response-cap.md and create me an RSVP form for [MY EVENT — describe the event, the date, and the guest cap]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "registration",
  "title": "RSVP: Summer Rooftop Party",
  "description": "Space is limited to 150 guests.",
  "settings": {
    "collect_respondent": "email_required",
    "max_responses": 150,
    "close_at": "2026-08-20T23:59:00Z",
    "completion": { "message": "See you there! Check your email for details." }
  },
  "sections": [ { "key": "main", "questions": [
    { "id": "attending", "type": "choice", "prompt": "Will you be attending?", "required": true,
      "options": [
        { "value": "yes", "label": "Yes, I'll be there" },
        { "value": "no", "label": "Can't make it" }
      ] },
    { "id": "guests", "type": "number", "prompt": "How many guests total, including you?",
      "min": 1, "max": 4,
      "show_if": { "question": "attending", "op": "eq", "value": "yes" } },
    { "id": "dietary", "type": "long_text", "prompt": "Any dietary restrictions?",
      "show_if": { "question": "attending", "op": "eq", "value": "yes" } }
  ] } ]
}
```

Guide: https://quizgen.dev/blog/event-rsvp-form-with-response-cap.md

## Waitlist signup form

Founders collecting emails before a launch, with an optional cap and close date.

The prompt:

```
Read https://quizgen.dev/blog/waitlist-signup-form.md and create me a waitlist signup form for [MY PRODUCT — describe what you're launching and who you want on the list]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "email_capture",
  "title": "Join the waitlist",
  "description": "We're opening access in waves. First 200 people get in first.",
  "sections": [
    {
      "key": "signup",
      "questions": [
        { "id": "email", "type": "email", "prompt": "Your email",
          "required": true, "placeholder": "you@company.com" },
        { "id": "full_name", "type": "short_text", "prompt": "Your name" },
        { "id": "use_case", "type": "choice",
          "prompt": "What would you use it for?",
          "options": [
            { "value": "personal", "label": "Personal projects" },
            { "value": "team", "label": "A team at work" },
            { "value": "agency", "label": "Client work" }
          ] },
        { "id": "wants_updates", "type": "yes_no",
          "prompt": "Want early-access emails as we roll out spots?",
          "yes_label": "Yes, tell me", "no_label": "Just save my spot" }
      ]
    }
  ],
  "settings": {
    "max_responses": 500,
    "close_at": "2026-10-01T00:00:00Z",
    "completion": {
      "message": "You're on the list — we'll email you when your spot opens.",
      "redirect_url": "https://example.com/share"
    }
  }
}
```

Guide: https://quizgen.dev/blog/waitlist-signup-form.md

## Liability waiver with recorded agreement

Gyms, studios, tour operators, and event hosts who need a timestamped, attributable agreement.

The prompt:

```
Read https://quizgen.dev/blog/liability-waiver-form-template.md and create me a liability waiver form for [MY ACTIVITY — describe the activity and its risks; I'll have a lawyer check the wording]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "form",
  "title": "Liability waiver — Riverbend Climbing Gym",
  "description": "Please read the waiver below and complete this form before your first visit.",
  "settings": {
    "collect_respondent": "email_required"
  },
  "sections": [
    {
      "key": "waiver",
      "title": "Waiver of liability",
      "questions": [
        { "id": "waiver_text", "type": "statement",
          "title": "Assumption of risk and release",
          "body": [
            "[PLACEHOLDER — replace with your lawyer's wording.] Participation in climbing activities carries inherent risks, including but not limited to falls, equipment failure, and physical injury.",
            "[PLACEHOLDER] By signing below, I acknowledge these risks and release Riverbend Climbing Gym, its owners, and staff from liability for injuries arising from ordinary negligence, to the extent permitted by law.",
            "[PLACEHOLDER] This waiver does not release the gym from liability for gross negligence or intentional misconduct."
          ] },
        { "id": "participant_name", "type": "short_text", "prompt": "Participant full name",
          "required": true, "placeholder": "Jordan Smith" },
        { "id": "participant_email", "type": "email", "prompt": "Email address",
          "required": true, "placeholder": "you@example.com" },
        { "id": "participant_phone", "type": "phone", "prompt": "Phone number",
          "required": true },
        { "id": "activity_date", "type": "date", "prompt": "Date of activity" },
        { "id": "under_18", "type": "yes_no", "prompt": "Is the participant under 18?",
          "required": true },
        { "id": "guardian_name", "type": "short_text", "prompt": "Parent or guardian full name",
          "required": true,
          "show_if": { "question": "under_18", "op": "eq", "value": "yes" } },
        { "id": "guardian_consent", "type": "consent",
          "prompt": "I am the participant's parent or legal guardian and I consent to their participation and to this waiver on their behalf.",
          "required": true,
          "show_if": { "question": "under_18", "op": "eq", "value": "yes" } }
      ]
    },
    {
      "key": "emergency",
      "title": "Emergency contact",
      "questions": [
        { "id": "emergency_name", "type": "short_text", "prompt": "Emergency contact name",
          "required": true },
        { "id": "emergency_phone", "type": "phone", "prompt": "Emergency contact phone",
          "required": true },
        { "id": "has_medical_conditions", "type": "yes_no",
          "prompt": "Does the participant have any medical conditions or allergies we should know about?",
          "required": true },
        { "id": "medical_details", "type": "long_text",
          "prompt": "Please describe, including any medications carried.",
          "rows": 4,
          "show_if": { "question": "has_medical_conditions", "op": "eq", "value": "yes" } }
      ]
    },
    {
      "key": "agreement",
      "title": "Agreement",
      "questions": [
        { "id": "agreement", "type": "consent",
          "prompt": "I have read and agree to the waiver of liability above.",
          "required": true }
      ]
    }
  ]
}
```

Guide: https://quizgen.dev/blog/liability-waiver-form-template.md

## Graded quiz with scoring

Educators, trainers, and course creators who need a pass/fail or points-based quiz.

The prompt:

```
Read https://quizgen.dev/blog/how-to-make-a-quiz-with-scoring.md and create me a graded quiz for [MY TOPIC — describe the subject and the pass criteria]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "quiz",
  "title": "Food safety basics",
  "sections": [
    { "key": "main", "questions": [
      { "id": "fridge_temp", "type": "choice",
        "prompt": "A fridge should be at or below…",
        "options": [
          { "value": "40f", "label": "40°F / 4°C" },
          { "value": "50f", "label": "50°F / 10°C" },
          { "value": "60f", "label": "60°F / 15°C" } ] },
      { "id": "wash_hands", "type": "yes_no",
        "prompt": "Wash hands before handling raw food?" }
    ] }
  ],
  "outcomes": {
    "method": "points",
    "points": {
      "fridge_temp": { "40f": 1, "50f": 0, "60f": 0 },
      "wash_hands": { "yes": 1, "no": 0 }
    },
    "buckets": [
      { "key": "passed", "min": 2, "title": "Passed",
        "body": "Nice — you know your basics." },
      { "key": "retake", "max": 1, "title": "Review and retake",
        "body": "A couple of gaps — skim the guide and try again." }
    ]
  }
}
```

Guide: https://quizgen.dev/blog/how-to-make-a-quiz-with-scoring.md

## Personality quiz with outcomes

Brands and creators who want a shareable “which one are you?” quiz that sorts people into results.

The prompt:

```
Read https://quizgen.dev/blog/personality-quiz-with-outcomes.md and create me a personality quiz for [MY BRAND/TOPIC — describe the theme and the result types you want]. Use QuizGen's MCP server at https://quizgen.dev/mcp if you can, otherwise POST the JSON to the API, and give me the live link.
```

The template:

```json
{
  "schema_version": 1,
  "kind": "quiz",
  "title": "Which productivity animal are you?",
  "sections": [ { "key": "main", "questions": [
    { "id": "morning", "type": "choice", "prompt": "Your ideal morning?",
      "options": [
        { "value": "early", "label": "Up before sunrise" },
        { "value": "slow", "label": "Slow coffee, no alarm" },
        { "value": "late", "label": "I peak at 11pm" }
      ] },
    { "id": "workstyle", "type": "choice", "prompt": "How do you tackle a big task?",
      "options": [
        { "value": "burst", "label": "One long, focused burst" },
        { "value": "steady", "label": "Steady, spread across the day" },
        { "value": "deadline", "label": "Right before it's due" }
      ] }
  ] } ],
  "outcomes": {
    "method": "points",
    "points": {
      "morning":   { "early": 5, "slow": 2, "late": 0 },
      "workstyle": { "burst": 5, "steady": 2, "deadline": 0 }
    },
    "buckets": [
      { "key": "owl",   "max": 3,  "title": "You're an Owl 🦉",
        "body": "Focused, late, and hard to interrupt." },
      { "key": "beaver","min": 4, "max": 7, "title": "You're a Beaver 🦫",
        "body": "Steady progress, built to last all day." },
      { "key": "fox",   "min": 8, "title": "You're a Fox 🦊",
        "body": "Early, sharp, and gone by lunch." }
    ]
  }
}
```

Guide: https://quizgen.dev/blog/personality-quiz-with-outcomes.md

Full API reference: https://quizgen.dev/llms.txt
