| Feature | native | questionpunk | questionpunk-json | surveyjs | xlsform | xlsform-csv | formbricks | surveymonkey | jotform | tally | google-forms | google-forms-batch | typeform | decipher | mrscript | blaise | xform | fhir | qsf | qualtrics-txt | limesurvey | limesurvey-tsv | msforms | redcap | triple-s | ddi | spss | odm | qti | gift | aiken | markdown | html | jspsych | surveydown |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| single choice | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | w | w | ✓ | ✓ |
| multiple choice | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | w | w | ✓ | ✓ |
| dropdown | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| coded values (1, 2) | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w~ | w | ✓ | ✓ |
| "other, specify" | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w | w | ~ | ~ |
| exclusive "none" | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | w | w | ~ | ~ |
| matrix (single) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| matrix (multiple) | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ~ | ✓ |
| scale | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| scale end labels | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | w | w | ✓ | ~ |
| ranking | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| short text | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| long text | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | w | w | ✓ | ✓ |
| ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ | |
| integer | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| decimal | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | w | w | ✓ | ✓ |
| date | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| date and time | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| yes/no | ✓ | ✓ | ~ | ✓ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ✓ | ~ | ~ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | w | w | ✓ | ~ |
| file upload | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| hidden field | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ~ | ~ | w | w | ✓ | ~ |
| calculation | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ~ | ~ | w | w | ✓ | ~ |
| required | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| hint | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| numeric range | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | w | w | ✓ | ~ |
| validation message | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | w | w | ✓ | ~ |
| show-if: equals | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| show-if: and / not | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| show-if: answered | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| show-if: multi-select has | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| pages | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✓ | ~ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| page show-if | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| section in a page | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ~ |
| repeat / loop | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | w | w~ | ✓ | ~ |
| note / display text | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ~ | w | w | ✓ | ~ |
| survey title | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | w | w | ✓ | ✓ |
| survey description | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ~ | ~ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ~ | ~ | ✓ | ~ | ✓ | ~ | ~ | ~ | w | w | ✓ | ✓ |
| translated labels | ✓ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ | ~ | ~ | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | w~ | w~ | ✓ | ~ |
| Jotform visual design | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w~ | w~ | ~ | ~ |
| Formbricks visual design | ✓ | ✓ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w~ | w~ | ~ | ~ |
| SurveyJS visual design | ✓ | ✓ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w~ | w~ | ~ | ~ |
| Microsoft Forms visual design | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w~ | w~ | ~ | ~ |
| Typeform theme reference | ✓ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ✓ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | ~ | w~ | w~ | ~ | ~ |
✓ kept exactly · ~ changed with a warning · ✗ changed silently (a bug) · w written with no warning (no reader) · w~ written with a warning · ! failed