Writing three hundred questions in a browser is miserable. Import them from a .csv or .xlsx instead — and when you need to reword forty of them, export the questionnaire, edit it where editing a spreadsheet is bearable, and put it back.
What the file needs
One row per question. Name a column Question and you have the minimum. Add Type, Required, Options, Help text and Section as you need them. A Survey column splits one file into several questionnaires, and a workbook with one questionnaire per tab works too — every sheet is read.
Preview always runs first
Nothing is written until you have seen what will happen: how many questionnaires, how many questions each, and every substitution or missing option list the parser found. Anything it could not interpret is listed by row number, so you can fix it in the file or fix it in the builder afterwards.
Editing an existing questionnaire
- Open the questionnaire and choose Export questions.
- Edit the file — reword prompts, add questions, reorder rows, add a section.
- Import it again from the Surveys list.
- The preview marks it UPDATE rather than NEW, and says exactly what changed.
How it knows what to update
The exported file carries a survey_id and a question_id column, and those columns are the whole mechanism — they are what lets a re-import know it is changing question 41 rather than adding a second one. Delete them and the file becomes the definition of a brand-new questionnaire, which is exactly what a hand-written file is. Matching is never by name: a coincidence of naming must not be able to overwrite a live questionnaire.
Two things an import will refuse
- It will not delete a question somebody has already answered, whatever the file says. The answer would go with it and there would be no way back, so the question is kept and the refusal is reported.
- It will not change the type of a question somebody has already answered, because the stored answer would then mean something different from what it meant when it was given.
What the spreadsheet cannot say, it cannot erase
Routing, CRM mapping and per-question layout have no columns in the file. Rather than treating their absence as "delete these", an update carries them across untouched. Re-importing an unedited export is a no-op, which is the property that makes the round trip safe to use casually.