Open-source surveys, exams, and question-bank practice—self-hosted on your infrastructure
Create forms with AI, run automatically graded exams, help learners practice from question banks, and analyze every response in one platform.
Website · Live Demo · Documentation · Deployment
English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Deutsch · Français · ไทย
Own the workflow and the data. SurveyKing brings content creation, publishing, responses, grading, practice, analytics, users, and permissions into one deployable system. Start with the embedded H2 database, then move to MySQL when you are ready for production.
Start SurveyKing with Docker and the built-in H2 database:
docker run -d \
--name surveyking \
-p 1991:1991 \
surveyking/surveyking:latestOpen http://localhost:1991 and sign in:
- Username:
admin - Password:
123456 - Change the default password immediately. The new password must be 8–16 characters and contain uppercase letters, lowercase letters, and digits.
| Surveys | Exams | Question-bank practice |
|---|---|---|
| Build responsive forms with 20+ question types, conditional logic, themes, and publishing controls | Reuse question banks, configure answers and scores, randomize content, and grade submissions automatically | Offer sequential, random, and incorrect-answer practice with progress tracking on desktop and mobile |
| Create with AI, Excel, plain text, templates, or the visual editor | Analyze scores, answers, rankings, and question-level performance | Add answer explanations, favorites, notes, question flags, and AI-assisted explanations |
The survey and exam editor screenshots are localized in English. The remaining product screenshots currently show the Simplified Chinese interface. SurveyKing's interface can be switched between English, Simplified Chinese, Traditional Chinese, Japanese, Korean, German, French, and Thai.
Design surveys visually, preview them on mobile, publish a respondent-friendly form, and turn collected responses into live reports.
![]() Visual editor |
![]() Mobile preview |
![]() Respondent experience |
![]() Response analytics |
Build exams from reusable question banks, define scoring rules and explanations, randomize questions or options, and review automatically calculated results.
![]() Exam editor |
![]() Mobile preview |
![]() Candidate experience |
![]() Scores and results |
Use the same question bank for formal exams and self-directed learning. Learners get instant grading, answer comparison, explanations, favorites, notes, progress, and an incorrect-answer workflow.
Describe the survey or exam you need in natural language. SurveyKing streams the generated structure into a live preview so you can review it before creating the project.
| Area | Capabilities |
|---|---|
| Surveys | Single and multiple choice, dropdowns, cascading choices, text input, matrices, NPS, ratings, signatures, file uploads, QR codes, locations, and more |
| Logic | Conditional visibility, branching, calculations, text replacement, validation, dynamic required fields, and automatic option selection |
| Publishing | Passwords, allowlists, login requirements, schedules, response limits, public result lookup, and WeChat-based responses |
| Exams | Question banks, bulk import, reusable questions, random selection, answer keys, scoring rules, automatic grading, rankings, and result analysis |
| Practice | Sequential, random, and incorrect-answer practice; answer cards; flags; favorites; notes; progress; and AI-assisted explanations |
| Data | Response editing, search, filters, imports, exports, printing, attachment downloads, and real-time reports |
| Administration | Users, roles, departments, positions, organizations, collaboration, and role-based access control (RBAC) |
- Connect OpenAI-compatible APIs and configure available and default models.
- Generate surveys and exams through streaming AI output with a live preview.
- Use Google OAuth, WeChat Open Platform QR login, WeChat Official Account authorization, and account linking.
- Configure Amap for location questions and use built-in H2 or an external MySQL database.
- Switch the application interface among English, Simplified Chinese, Traditional Chinese, Japanese, Korean, German, French, and Thai.
| Option | Best for | Entry point |
|---|---|---|
| Docker + H2 | Evaluation and small self-hosted deployments | surveyking/surveyking:latest |
| Docker + MySQL | Production deployments with an external database | Deployment guide |
| Windows package | A quick start without container tooling | Deployment guide |
| Nginx, BaoTa, or EazyDevelop | Managed or region-specific deployment workflows | All deployment options |
If Docker Hub is slow in your region, a mirror is available from Alibaba Cloud:
docker run -d \
--name surveyking \
-p 1991:1991 \
registry.cn-hangzhou.aliyuncs.com/surveyking/surveyking:latest| Layer | Technology |
|---|---|
| Frontend | React, Ant Design, responsive web UI |
| Backend | Java, Spring Boot 2.7, Spring Security, MyBatis-Plus |
| Databases | H2, MySQL |
| Deployment | Docker, Windows, Nginx, BaoTa, EazyDevelop |
Issues and pull requests are welcome. If SurveyKing helps your team, consider starring the repository and sharing how you use it.
- Gitee mirror
- Complete feature list (Chinese)
- QQ community:
980962382
SurveyKing is open-source software released under the MIT License.










