Feature — collecting

Save & continue

Save and continue gives a respondent a resume link keyed on a 24-character token, so a long survey can be finished in more than one sitting. Partial answers are held in a table that has no row-level security policies at all and is reachable only through SECURITY DEFINER database functions, which means no browser client can read another person's half-finished response even if it knows the table exists.

Why half-finished responses matter

Most survey abandonment is not disagreement. It is a phone battery, a meeting starting, a question that needs a figure from a colleague, or a form opened on the bus and never reopened. A grant application or a service review with sixty questions is not a single-sitting task, and treating it as one quietly filters your sample down to people with a free half hour.

Save and continue removes that filter. It is most useful on surveys built with conditional logic and section-based layouts, where the respondent is already being asked to work through several screens rather than one short page.

How the resume link works

A 24-character token is minted for the session, and answers are saved against it as the respondent works. The finish-later control gives them the link containing that token. The token is the whole credential — there is no email address, password or respondent account behind it. Opening the link restores the answers recorded so far and puts the respondent back into the survey.

That has two practical consequences worth stating plainly:

NumoForms does not email the link out. Respondents copy or bookmark it themselves, which is a smaller surface than a message sitting in a shared inbox — but it does mean you should say, in the survey's own wording, that the link is the only way back in.

Where partial answers live

Completed responses and partial responses are stored separately, and the partials table is deliberately locked down harder than anything else in the product.

ControlHow it is implemented
Direct client access Impossible. The partials table carries no RLS policies, so the default deny applies to every browser client.
The only route in SECURITY DEFINER functions, which run with the definer's rights and accept the token as their argument.
Token length 24 characters.
Location Supabase, London (eu-west-2), the same region as completed responses.
Encryption TLS in transit, AES-256 at rest, provided by the platform.

Why "no policies" is stricter than "a policy"

Row-level security denies by default: a table with RLS on and no policy matches nothing, for anybody. Writing a policy is what opens a door, and a subtly wrong policy is the most common way survey tools leak between tenants. Here there is no door to get wrong. The only path to a partial response is a function that was written for exactly that job, and the function is the thing that decides what a token entitles you to see.

This matters more than usual because responses insert straight from the browser rather than through an application server. The same reasoning is why the private upload bucket issues short-lived signed URLs instead of making files readable.

How it behaves in each layout

NumoForms has three respondent layouts, and saving works in all of them, though it feels different in each:

Close dates, caps and partials

A survey can carry a close date and a response cap, and both are enforced by a database trigger rather than by the interface. Because responses insert directly from the browser, UI-level enforcement would be a suggestion; a trigger is a rule. The practical effect for save and continue is that a resume link does not exempt anyone from the close date. If you are running a consultation that closes at midnight, say so in the survey, and give people enough notice that a saved response is still worth returning to. When a survey is closed, respondents see your custom closed message rather than a generic error.

Clearing partials before you go live

Testing a long survey means creating partials. The results screen has a clear-test-responses action that removes the completed responses, the uploaded files and the partial responses together, so "we tested it properly" and "the dataset is clean" are not in tension. Do this before publishing, not after the first real response arrives.

What it does not do

Being specific about the edges is more useful than a feature list:

Related

Save and continue is one part of the collecting side of the product. See also file uploads and signed URLs, how accessibility is handled for keyboard and screen-reader respondents, and the product overview for how building, collecting and analysing fit together. If you are assessing us for a public-sector consultation, the security page covers storage location and sub-processors.

Common questions

Do respondents need an account to save their progress?

No. There are no respondent accounts. Progress is tied to a 24-character token carried in the resume link, so a respondent can come back on a different device without signing in to anything.

Where are partial answers stored?

In a separate table inside the same UK Supabase project (London, eu-west-2) as the completed responses. That table has no row-level security policies at all, so no browser client can read or write it directly. Every read and write goes through SECURITY DEFINER database functions.

Can I delete partial responses?

Yes. Clearing test responses on a survey removes the partial responses and the uploaded files along with the completed responses, so a survey can be reset to genuinely empty before it goes live.

Is the resume link emailed to the respondent?

No. NumoForms does not send email to respondents. The link is shown on screen for the respondent to copy or bookmark, which also means it never sits in an inbox that somebody else can read.

Long surveys, finished properly.

Turn on save and continue and the respondent gets a resume link they can copy or bookmark. A sixty-question consultation stops being a single-sitting task, which stops it quietly filtering your sample down to people with a free half hour.

  • A 24-character resume link, not a respondent account
  • Start on a phone, finish on a desktop
  • Clearing test responses removes partials and uploads too
Start building