OpenSourcePicks

Open source alternatives to popular software, with live GitHub data

GitHub stats refreshed every day

SurveyKing

Self-hosted surveys, auto-graded exams and question-bank practice in one Java application

Open source alternative to

Visit SurveyKingGitHubDocumentation

Main features

  • 20+ question types including matrix, NPS, signature, location and cascading choices
  • Branching, calculations, text piping and dynamic required fields
  • Passwords, allowlists, schedules and response limits
  • Exams from question banks with automatic grading and rankings
  • Practice mode with incorrect-answer review
  • AI, Excel and plain-text creation of surveys and exams
  • Response editing, filters, imports, exports and live reports
  • Users, roles, departments and role-based access control
  • Interface in eight languages

What SurveyKing does

SurveyKing combines three jobs in one self-hosted application: surveys, exams that grade themselves, and practice from question banks. The survey side has more than 20 question types, among them single and multiple choice, dropdowns, cascading choices, matrices, NPS, ratings, signatures, file uploads and location. Logic covers conditional visibility, branching, calculations, inserting earlier answers into text, validation, required fields that depend on other answers, and automatic option selection.

Publishing controls are detailed: a survey can need a password, an allowlist or a login, run on a schedule, stop at a response limit, and let respondents look up results afterwards. Responses can be edited, searched, filtered, imported, exported, printed and shown as live reports.

Exams, practice and AI

Exams draw on reusable question banks. You set answer keys and scoring rules, randomize questions or options, and SurveyKing grades submissions and ranks candidates automatically, with analysis per question. The same bank can serve self-directed practice, in sequence, at random or limited to questions a learner got wrong, with notes, favorites and progress tracking. Surveys and exams can be created in a visual editor, from templates, from Excel or plain text, or by describing them to an OpenAI-compatible model whose output streams into a live preview.

Self-hosting SurveyKing

Starting is as simple as one docker run command: the container includes an embedded H2 database and serves the app on port 1991. For production the docs recommend Docker Compose with MySQL 8.0, and they suggest at least 2 CPU cores and 2 GB of RAM, or 4 GB if MySQL runs on the same machine. There are also a Windows installer, NAS packages for Synology and fnOS, and a manual Java install for Linux. The first login uses a default admin password that you must change straight away.

The open source edition already includes users, roles, departments, positions and organizations with role-based access control, plus Google OAuth and WeChat sign-in. The interface can be switched between English, Simplified and Traditional Chinese, Japanese, Korean, German, French and Thai. The code is MIT-licensed: a Java Spring Boot back end with a React and Ant Design front end.

Hosted version

There is no hosted service for the open source edition; s.surveyking.cn is a live demo. The developers sell a separate commercial SurveyKing Pro (Enterprise Edition) as a one-time purchase for private deployment, which adds courses, assessments, quick queries, more AI functions and integrations such as an API, SSO, WeCom, DingTalk and Feishu.

Limitations

The project is rooted in the Chinese market: WeChat login and responses, Amap for location questions, a Gitee mirror and community channels on QQ. Some screenshots show only the Chinese interface, and the full feature list is published in Chinese. Features some organizations need, such as SSO, are in the paid Pro edition rather than the open source code. Without a hosted option, you run and back up the server yourself.

Who it suits

SurveyKing fits schools, training departments and organizations that want surveys and online tests on their own server under a permissive license, especially if they also need departments and roles. Teams that mainly want Typeform-style lead forms will find HeyForm or OpnForm closer to what they need.

License details

MIT. A separate commercial SurveyKing Pro / Enterprise Edition with more modules and integrations is sold for private deployment; it is not in this repository.

Technical details

Self-hosting needs

  • MySQL (optional; H2 built in)

Built with

  • Java
  • Spring Boot
  • React
  • Ant Design

GitHub topics

  • java
  • react-survey
  • springboot
  • survey
  • surveyjs
  • surveymonkey

Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.