Audience
The Audience tab of a form holds the people the form is for and the facts you keep about each of them. Each person's values fill the form when they open it, so a form can greet someone by name or ask about their own company. Test people let you try that personalized form as someone, without sending a link or counting the result as a real response.
To use the properties in the form and check it in the designer, see Personalized Forms. To run a whole personalized survey, from import to export, follow Run a personalized survey.
To open it, open the form from the Forms list, click the section menu next to the form name (it shows Overview), and choose Audience. The tab appears when your Endatix deployment has personalization turned on.
People and properties
The tab has two views, People and Properties. Each shows its count in the view switch. A form with properties also has a third view, Preview as, for people who can edit the form.
- A property is one fact kept for each person on this form, such as a first name, a company, or a plan. Each property is a column in the people table.
- A person is someone in the form's audience. Endatix recognizes the same person on every form in your organization by the match key, for example their email. Removing someone takes them off this form only.
Add a property
- On the Properties view, click Add property.
- Enter a Name, such as
First name. Endatix builds the variable name from it (first_name). The variable name never changes, even if you rename the property later. - Choose a Type. Values are checked against the type when people are added or edited.
- Click Add property.
Use the variable name in the form the same way as any other variable, in braces: a title of Welcome, {first_name} shows each person their own first name. See Text Piping for where you can use it. To start a question with each person's value, use Prefill from in the designer.
Check which values the form uses
If you can edit the form, the Properties view also shows how the saved form uses each property:
- Used in form is Used when the form reads the variable, and Not used when nothing in it does.
- Filled in (real) counts the real people who have a value for it, for example 2 of 3 filled. Test people are not counted. With no real people yet, it says No real participants.

The counts follow the last saved version of the form. Save the form in the designer to update them. The designer's Diagnostics tab shows the same gaps as warnings while you edit: see Fix the Personalization warnings.
Add people
The People view lists everyone on the form, with one column per property.

- Add person adds one person: enter their identifier (the match key, for example Email) and, optionally, a value for each property.
- Import CSV adds many at once from a file with one participant per row. Nothing is written until you confirm. See Import participants from a CSV.
- Personalized links creates one link per real person who has none yet and downloads them as a file to send from your own email or panel tool. See Personalized links.
Two marks help you check the list before you send links:
- Link shows each real person's link: Not issued, Issued, or Opened. Click Opened to see the response the link started. A test person never gets a link. The column appears once anyone on the form has a link.
- N not filled in next to a person means the saved form reads values they don't have. Hover over it to see which ones. Fill them in with Edit, or the form shows those places empty for that person. Only people who can edit the form see this mark.
Import participants from a CSV
Import CSV adds or updates many participants from one file. The import runs in three steps, File, Columns, and Review, and writes nothing until you confirm it.
- On the People view, click Import CSV.
- Under CSV file, choose the file. The first row names the columns. Before you choose, the help line says how large a file this deployment takes, for example Up to 100,000 rows and 50 MB. After you choose, it says what Hub read, for example acme-panel.csv: 12,000 rows, 4 columns.
- Click Continue. Under Identifier, choose the column that holds the match key, such as Email. Under Columns, choose the property each other column fills, or Don't import. Columns named like a property are matched already.
- Click Continue. Hub sends the file and checks every row.
- Read the preview, for example 11,950 new participants, 40 already on this form, 10 rejected, and the Rejected rows below it.
- Click Import N participants, for example Import 11,990 participants.

Limits
The file help line names this deployment's limits. A deployment that runs imports as background jobs takes up to 100,000 rows and 50 MB per file. One without background jobs takes up to 5,000 rows and 20 MB. Split a larger file and import the parts one after the other.
Follow the import
The Review step counts each phase as it runs:
- Sending the file: 2,000 of 12,000 rows sent. Keep the tab open until the file is sent.
- Checking rows: 6,000 of 12,000 rows checked. Nothing is written yet.
- Writing participants: 4,000 of 11,990 rows written, with what was written so far, for example 3,960 added, 40 updated so far.

When it ends, the panel says Import finished, or Import finished with rejected rows, with the counts, for example 11,950 added, 40 updated, 10 rejected. The People list behind the panel is already up to date.
How rows meet participants already on the form
Rows are matched by the match key. A participant already on the form gets the file's values, and an empty cell keeps the value they have. A test import works differently: see Import test people.
A rejected row is left out, and the other rows still import. Rejected rows lists the first 50 by their row in the file, with the reason. Fix those rows in the file and import it again: participants already imported are matched, not added twice.
Cancel before you confirm
Until you click Import N participants, Cancel import stops the import: the panel says Import canceled. Nothing was written. Closing the panel does not cancel it.
An import that waits more than a day for its upload to finish, or for you to confirm it, expires and writes nothing. Import the file again.
Close the tab while it runs
Once the file is sent, a deployment with background jobs keeps checking and writing without the browser. The panel says You can close this panel or this tab: the import keeps going.
A form runs one import at a time. While one is running, the button on the People view reads Import in progress, and opening it shows the import where it stands, from any browser. Starting a second import shows the running one instead, with An import of this form is already running, so it is shown instead of your file.
On a deployment without background jobs, keep the tab open until the import finishes.
Resume a cut-off upload
If the tab closes or the connection drops while the file is being sent, open Import in progress again. The panel says how far the upload got, for example The upload stopped before the whole file was sent (4,000 of 12,000 rows). Choose acme-panel.csv again to continue it. Choose the same file, and Hub sends only the rows still missing.
The file must be the same one: same name, same number of rows, and the same columns. Another file is refused, for example This file is acme-panel-v2.csv, but the import is of acme-panel.csv. Choose acme-panel.csv again.
Resume a stopped write
If writing stops before it finishes, the button reads Import stopped and the panel says The import stopped. Participants written so far stay on the form.
- Resume import continues from where it stopped, and writes each participant once.
- Start a new import discards the stopped one. Participants it already wrote stay on this form; its other rows are not written.
A stopped write can be resumed for 7 days.
Personalized links
Personalized links creates one link for each real person on the form who has none yet, and downloads them as a file. Each link opens that person's own response, filled in with their values. Send the file's links from your own email or panel tool.
- On the People view, click Personalized links.
- Check Who gets a link. People on this form counts everyone on the form, test people included; only real people without a link get one.
- Click Generate and download.

The panel then says, for example, 10 links downloaded, offers Download CSV again while it is open, and lists the first five links so you can try one before you send them.

The links file
The file is named personalized-links-<form ID>-<date>.csv, for example personalized-links-1234567890-2026-10-26.csv, so a later batch never overwrites an earlier one. It has one row per person, with two columns: the match key (email or external_id) and link.
email,link
alex.kim@acme.com,https://forms.acme.com/share/1234567890/a/...
jordan.lee@acme.com,https://forms.acme.com/share/1234567890/a/...
The file is the only copy. Endatix keeps a fingerprint of each link, never the link itself, so it cannot show a link again once the panel closes. Anyone with a link can open that person's response, so keep the file safe until the links are sent.
Links for people added later
People who already have a link keep it. After you add more people, click Personalized links again: the new file holds links for the new people only. With no one left without a link, the panel says Everyone already has a link.
What a link opens
- The first open starts the person's response, with the form and their values as they are at that moment.
- Every later open resumes that same response while it exists. A person never gets a second live response from their link.
- A finished response is not opened again: the page says This form has already been completed.
- A deleted response frees the link: deleting a participant's response lets their link open a new one, and the link reads Issued until then.
- On a private form, the link opens without a sign-in. See Personalized links on a private form.
The Link column of the People view shows each link's status.
Up to 5,000 people per form
Hub issues links for up to 5,000 real people on one form. On a form with more, Generate and download creates no links and the panel says This form has more than 5,000 people to send links to. Test people do not count.
Preview as
Preview as shows the saved form the way one participant gets it, with their values filled in. Use it to check a real participant's form before you send links, without opening their link or creating a submission. It needs permission to edit the form.
- On the Audience tab, click Preview as in the view switch.
- Pick a participant on the left. Test participants are listed first. To find anyone else, real participants included, type part of their identifier in Find any participant.
- Read the form on the right. Use the arrow keys to move to the next or previous participant.

Above the form, the participant's values are listed, with a dash for an empty one, and a note names the values the form reads that they don't have (Not filled in: …), or says Every value is filled in. Below that is when the form was last saved: the preview always shows the saved version, so save in the designer first. Answers you type in the preview are not saved.
- Edit values changes the participant's values; the preview updates with them.
- Test as this participant opens a test submission with the same values, as from the People view. It needs permission to test forms.
The choice is kept in the page address, so you can share a link to one participant's preview with someone who can edit the form. To preview a draft before you save it, use Preview as in the designer.
Open a participant's page
Click a person's identifier to open their page on this form. It needs permission to edit the form.

- Values lists the person's value for each property.
- Link shows their personalized link's status, when it was opened, and the response it started. It appears only once a link was issued, so a test person never has it.
- Submissions lists their newest submissions on this form, up to 50, with the status and where each came from: Personalized link, On behalf, or Test as this participant. Click View to open one.
The page has the same actions as the row: Copy test link for a test person, Test as this participant, Edit values, and Remove. Click Audience at the top to go back to the list.
Test people
A test person exists only for testing on this form. They are never sent a personalized link and do not count as part of the audience. Use test people to see the form the way a respondent with those values sees it.
You choose whether someone is a test person when you add them. It cannot be changed later: to turn a test person into a real one, remove them and add them again.
Add a test person
- On the People view, click Add person.
- Enter the identifier and the property values you want to test with.
- Select Add as test participant.
- Click Add person.

The person appears in the table with a Test badge next to their identifier.
Import test people
- On the People view, click Import CSV and choose the file.
- Click Continue, and map the columns.
- Select Import as test participants, below the columns.
- Click Continue. On Review, the note says Existing participants are skipped.
- Click Import N participants, for example Import 2 participants.

With Import as test participants on, only participants new to this form are added, as test participants. A participant already on the form is skipped and keeps their values, so a test import never changes a real person. The outcome counts both, for example 1 added as test participants, 1 skipped because they are already on this form.
Filter real and test people
Once the form has people, a filter above the table shows All people, Real people, or Test people. The choice is kept in the page address, so you can bookmark or share a filtered view.
Test as this participant
Test as this participant opens the form as that person, with their current values, in a new browser tab. It is the flask icon in the row's actions and a button on the participant's page, and it needs permission to test forms.
- On the People view, find the person. A test person is the usual choice, but any person works.
- Click Test as this participant in their row, or on their page.
Each click creates a new test submission for that person, on the latest saved version of the form.
Testing as a real person does not use up their personalized link. When they open it, they still get a new real response of their own.
A test submission does not count toward Limit one per user. On the Submissions page, the Submission Type filter shows or hides test submissions, and an export includes them only when Include test submissions is on.
Test inspector
The round button with a TEST tag at the bottom right of a test submission is the Test inspector. Click it to see who you are submitting as and the values the form was opened with, to open the submission or the participant in Hub, and to Start over.
You see it when you can test forms. Anyone else who opens the same test submission sees only You are submitting a test submission, and real respondents see neither. See Testing Submissions for each row and panel.
Start over
Start over is in the Test inspector of a test submission opened with Test as this participant. It discards the current test submission and opens a new one for the same person.
Use it after you change the person's values or edit the form: the new test submission picks up the person's current values and the latest saved form. To try different values, edit the person on the People view, then click Start over in the form's tab.
If the person was removed from the form in the meantime, Start over goes away and the Test inspector says This person is no longer on this form, so this test submission cannot start over. Add a test person again and use Test as this participant.
Copy test link
Copy test link gives you a link to a new test submission as a test person, to send to a colleague who has no Endatix login. They open it in any browser and fill in the form with that person's values, also on a private form.
It is the link icon, first in a test person's row actions, and the first button on a test person's page. Real people do not have it. You see it when you can test forms, edit the form, and view, edit, or export submissions.

- On the People view, click Copy test link in a test person's row, or on their page.
- Choose the Link lifetime, from 1 hour to 60 days. It starts at 7 days.
- Click Create and copy link. Hub creates the test submission and copies its link.

The panel also shows the link with Copy this link, in case your browser did not allow the copy. Click Create and copy another for a second link: each copy opens its own new test submission, with the person's current values and the latest saved form.
Anyone with the link can fill in that one test submission until it is completed or the link expires, with no sign-in. It opens nothing else. The submission is a test submission like any other: it shows under Submission Type: Test on the Submissions page, stays out of exports unless you include test submissions, and can be deleted there.
Limitations
- Test status is set once. You cannot switch a person between test and real. Remove them and add them again.
- Imports have a size limit. Up to 100,000 rows and 50 MB per file on a deployment with background jobs, or 5,000 rows and 20 MB without. One import runs per form at a time.
- Personalized links stop at 5,000 people. A form with more real people gets no links.
- Links are shown once. The downloaded file is the only copy.
- Test people get no personalized links. Personalized links skips them; use Copy test link to share a test, and a test import never touches people already on the form.
- Start over needs the person. It works only while the person is still on the form.
- No Test inspector in embeds. An embedded form shows the plain test notice with Start over.