Completion Behavior
Completion behavior controls what respondents see or where they go after the form is submitted. Use root survey properties for the normal completion flow and triggers when the form should finish early.
Thank-You Page
Section titled “Thank-You Page”Use showCompletePage and completedHtml for the default post-submit screen.
{ "showCompletePage": true, "completedHtml": "<h3>Thanks, {firstName}.</h3><p>We received your request for {projectName}.</p>"}completedHtml is localizable and supports dynamic text placeholders.
Conditional Completion HTML
Section titled “Conditional Completion HTML”Use completedHtmlOnCondition when different respondents should see different completion messages. The first matching item can override completedHtml.
{ "completedHtml": "<h3>Thanks for your response.</h3>", "completedHtmlOnCondition": [ { "expression": "{eligible} = 'No'", "html": "<h3>Thanks for your time.</h3><p>You do not meet the current eligibility criteria.</p>" }, { "expression": "{scorePercent} >= 80", "html": "<h3>Passed</h3><p>Your score was {score}/{totalScore}.</p>" } ]}Redirects
Section titled “Redirects”Use navigateToUrl to redirect all respondents after completion. Use navigateToUrlOnCondition for conditional redirects.
{ "navigateToUrl": "https://example.com/thanks", "navigateToUrlOnCondition": [ { "expression": "{eligible} = 'No'", "url": "https://example.com/not-eligible" }, { "expression": "{plan} = 'enterprise'", "url": "https://example.com/sales" } ]}Early Completion
Section titled “Early Completion”Use a root complete trigger when a respondent should finish before reaching the last page, such as a screen-out flow.
{ "triggers": [ { "type": "complete", "expression": "{eligible} = 'No'" } ]}Prefer visibleIf and requiredIf for local branching. Use a complete trigger when the desired action is to submit or end the survey.
Preview Before Submit
Section titled “Preview Before Submit”Use showPreviewBeforeComplete to show an answer preview before final submission. Use previewMode to choose whether the preview includes all questions or only answered questions. Customize button captions with previewText, editText, and completeText where needed.
{ "showPreviewBeforeComplete": true, "previewMode": "answeredQuestions", "previewText": "Review answers", "editText": "Edit answers", "completeText": "Submit"}Quiz Completion Messages
Section titled “Quiz Completion Messages”Formspace supports server-side quiz grading. Use post-submit variables in completion HTML after grading, not in respondent-facing question logic.
{ "completedHtml": "<h3>Your score: {score}/{totalScore} ({scorePercent}%)</h3>"}Useful quiz completion variables include {score}, {totalScore}, {scorePercent}, {correctAnswers}, and {incorrectAnswers}.
Generation Notes
Section titled “Generation Notes”- Use Dynamic Text and Answer Piping when completion copy should include submitted answers.
- Use Localizable Strings for multilingual completion messages and button labels.
- Use Trigger for early completion rules.
- Avoid redirects when the respondent should see Formspace’s confirmation, saved-state, or quiz result page.