Repository navigation
Studio Email Invitations
(Plus) Instead of one anonymous link, give every respondent their own link by email: completion is tracked per person, and a reminder goes only to those who have not finished. Everything lives at the bottom of Distribute, in the Email invitations panel.
Plan. Email invitations are included from Plus. An organization on the unpaid trial cannot use them at all — neither import contacts nor send — until a plan is bought: the panel reads "Personal links by email — unlock once a plan is bought." with Choose a plan, which opens Settings → Billing. On Free it reads "Personal links by email — included from Plus." with Upgrade to Plus. Invitations are sent from Studio's shared sending domain, which is why they are not available without a plan.
┌ Email invitations [Import contacts] [New mailing] ┐
│ 412 contacts · 3 unsubscribed · each invitee gets a personal link; reminders go to │
│ those who have not finished. · 588 of 1,000 emails left this month · 300 per day │
├──────────┬───────────────────────────────┬──────────┬─────────┬─────────────┬─────────────┤
│ Kind │ Mailing │ Sent │ Started │ Completed │ │
│ invite │ Brand study: your personal link│ 409 · 2 failed · 1 bounced │ 188 │ 141 · 34% │ [Remind] [Recipients] │
│ │ main · Jun 4, 2026, 9:00 AM │ │ │ +60 via reminders │ │
│ reminder │ Reminder: Brand study: … │ 266 │ 41 │ 60 · 23% │ [Recipients]│
└──────────┴───────────────────────────────┴──────────┴─────────┴─────────────┴─────────────┘
The subtitle counts your contacts (N contacts · M unsubscribed) and, on a plan with a monthly allowance, N of CAP emails left this month, the daily allowance (· 300 per day) and — before your organization's very first mailing — · first mailing up to 200.
With no mailing yet the panel says "No mailing yet — write the invitation and send it to your contacts.", or, with no contacts, "Paste addresses (one per line, optionally with a name) to build the contact list."
The New mailing button is disabled until you can send; its tooltip says why: "Upgrade to Plus", "Import contacts first", "Publish an environment first" or "Mailings are paused for this organization" (see Unsubscribes, bounces and pauses). It also stays disabled while no environment is collecting — one past its closing date does not count.
Contacts belong to the project: each study has its own list, and an unsubscribe applies to that study only.
-
Click Import contacts.
-
Paste one contact per line, in any of these shapes:
ada@example.com ada@example.com, Ada Lovelace Lovelace Ada, ada@example.com Grace Hopper <grace@example.com>Or paste a CSV whose first line is a header containing
email(ore-mail). Anamecolumn fills the name; other columns are stored with the contact as attributes. -
Check the consent box: "These people agreed to be contacted about this survey, or have an existing relationship with us. Every email carries an unsubscribe link; bounces and spam complaints pause mailings. Contact lists are processed on your behalf as described in the Privacy Policy."
-
Click Import (disabled until the box is checked — tooltip "Confirm consent first").
A toast reports the result: 12 contacts added, 3 updated, 1 skipped.
| Rule | Detail |
|---|---|
| Addresses | lower-cased; lines without a valid address are skipped |
| Duplicates in one paste | the first occurrence wins; the rest are skipped |
| Known addresses | updated, not duplicated: a new name replaces the old one, attributes are merged |
| Unsubscribed, bounced or complained contacts | stay suppressed after a re-import |
| Size | up to 20,000 lines per import (the rest are skipped); up to 2 million characters of text |
| Consent | required; your confirmation is recorded in the project's activity log |
Note. CSV attributes are stored but cannot be used in the message: only the four placeholders below are filled in. There is no screen that lists, edits or deletes contacts in the beta — the panel shows only the counts.
New mailing needs at least one subscribed contact and an environment that is collecting: a paused environment does not count, and neither does one past its closing date. If another environment is collecting, the dialog's Survey environment list still includes one past its closing date, and a Remind can target it too — the email goes out, but the survey no longer accepts answers. Extend the date first (Extend on the environment's card) when you mean to collect.
| Field | Default | Notes |
|---|---|---|
| Survey environment |
main if live, else another live environment |
shown as main · <link>; the personal links point here |
| Subject | <project name>: your personal link |
one line, up to 200 characters |
| Message | the invitation template below | plain text, up to 20,000 characters; hint "{name} {email} {link} {unsubscribe}" |
| From name | your organization's name | hint "the address stays the platform's"; up to 120 characters |
| Reply-to | your email address | where replies land; up to 200 characters |
The default invitation text:
Hi {name},
We are running a short survey and would value your answers. It takes a few
minutes and this link is personal to you:
{link}
Thank you!
| Placeholder | Becomes |
|---|---|
{name} |
the contact's name. For a contact imported without a name it is empty, and the space before it goes too: Hi {name}, reads Hi,
|
{email} |
the contact's address |
{link} |
the contact's personal link — required; without it the dialog shows "The message must contain {link}" and cannot send |
{unsubscribe} |
the contact's unsubscribe link |
Any other {…} is sent as written. If the message has no {unsubscribe},
Studio appends one at the end:
—
To stop receiving these emails: <unsubscribe link>
The right-hand Preview · as <email> renders the subject and text as the
mailing's first recipient will receive them — for an invitation your first
subscribed contact, for a reminder the first invitee it goes to (the personal
token shows as TOKEN). It updates as you type. Underneath: "Goes to N
subscribed contacts. Every email ends with an unsubscribe link."
Click Send to N. Once the preview has rendered, N is the server's count of the people the mailing will reach: contacts who unsubscribed, bounced or marked an earlier email as spam are left out. The mailing is queued and sent in the background in batches; the toast says Sending to N contacts…, and the table row shows queued… and sending… in the Sent column until it is done (the panel refreshes every few seconds while a mailing is in flight).
A personal link is your survey link plus ?inv=<token>. The token comes back
with the response, which is how Studio knows who started and who finished — no
change to the questionnaire is needed.
The table has one row per mailing:
| Column | Meaning |
|---|---|
| Kind |
invite or reminder
|
| Mailing | subject, environment and send time |
| Sent | emails that left — including those that then started, completed, bounced or were marked as spam — plus · N failed, · N bounced and · N marked as spam when there are any. A mailing stopped by the safety thresholds adds "Paused — <reason>; the rest stays queued until support resumes it." |
| Started | invitees whose interview has saved progress but who have not submitted yet |
| Completed | invitees who submitted through this mailing's links, with the completion rate (completed ÷ sent). On an invitation row, +N via reminders underneath counts its invitees who completed through a reminder's link instead |
Recipients expands the list of invitees (Hide collapses it): Name <email> · status, with the reason on hover for failures.
| Status | Meaning |
|---|---|
queued / sending
|
waiting in the send queue / being sent now, or waiting for an automatic retry (below) |
sent |
the email was accepted for delivery |
failed |
the email service refused it, or it still failed after the automatic retries; or it was skipped because the contact had unsubscribed, "complained earlier" or "bounced earlier" |
started |
the respondent began answering and their progress reached Studio (after answering something and moving on a page, or leaving the tab) — opening the link alone does not count |
completed |
the respondent submitted |
bounced |
the recipient's mail server rejected the email after it was sent (red dot) |
marked as spam |
the recipient reported it as spam (red dot) |
A mailing whose emails all failed ends as failed.
Note.
startedneeds the survey page to send progress, which only a survey built with the current runtime does. For an environment published before that, invitations go straight fromsenttocompleteduntil you republish it.
When the email service has a passing problem — a server error, a request to
slow down, a dropped connection — the email is not marked failed. Studio
retries it automatically: up to five attempts in all, about 2, 4, 8 and 16
minutes apart. Meanwhile the invitation stays sending and the mailing's
Sent column shows sending…; the mailing gets its final counts once
every invitation has either gone out or failed for good. Only an email the
service refuses outright, or one that still fails at the fifth attempt, ends
as failed, with the reason on hover in Recipients.
Note. A personal link is not single-use. Someone who forwards it, or opens it twice in different browsers, creates a separate response each time; the invitation is marked
completedat the first submission.
On an invite row, Remind shows while anyone the invitation reached is still left to remind (tooltip "Email the N invitees who have not completed — through the invitation or any reminder"). It opens Send a reminder:
-
Subject defaults to
Reminder: <original subject>; the message toHi {name}, A quick reminder: our survey is still open and your answers matter. Your personal link: {link} Thank you! -
It goes to the invitees of that invitation who have not completed — neither through the invitation's link nor through any reminder sent for it (nor through another invitation to the same environment) — minus anyone who has since unsubscribed, bounced or complained: "Goes to the N invitees of “…” who have not completed — through the invitation or any reminder." The preview is rendered for the reminder's first recipient, and Send to N uses the server's count.
-
Every reminder email carries a new personal link. A respondent counts as completed on the mailing whose link they used: someone who finishes through the reminder's link shows as completed on the reminder row, and as +1 via reminders on the invitation row.
Reminders are sent by hand; there is no scheduling of mailings or automatic reminders. A reminder row has no Remind button: remind from the invitation row. A second or third reminder skips everyone who completed through an earlier reminder, so you can send several without bothering people who have already answered.
Every invitation email carries:
- an unsubscribe link in the text;
- one-click unsubscribe headers (
List-Unsubscribe,List-Unsubscribe-Post), which Gmail and Yahoo require of bulk senders.
The unsubscribe page needs no login and works in one click: "Unsubscribed —
<address> has been unsubscribed from this study's emails. You will not
receive further invitations or reminders for it." Unsubscribing applies to
this project's contact list only.
Automatic protections:
-
A bounce (other than a temporary one such as a full mailbox) suppresses the address: it receives no further mailings in this project. The invitation shows as
bounced, and the mailing's Sent column adds · N bounced. -
A spam complaint suppresses and unsubscribes the address. The invitation shows as
marked as spam, and Sent adds · N marked as spam. -
If a mailing crosses a threshold, it is paused — its remaining queued emails stay unsent — and all mailings of your organization are paused:
Threshold (per mailing, of the emails delivered so far) at least 1 spam complaint and complaints ≥ 0.05 % at least 3 bounces and bounces ≥ 2 % In practice a single complaint pauses a mailing of up to 2,000 recipients. While mailings are paused:
- the panel's subtitle reads "Mailings are paused for this organization —
<reason>. Contact support to resume them.", where the reason names the mailing and what crossed the threshold, for examplemailing #12: spam complaints: 1 of 450 delivered; - the paused mailing's row reads "Paused —
<reason>; the rest stays queued until support resumes it."; - New mailing is disabled (tooltip "Mailings are paused for this organization"), and a mailing sent any other way is refused with "mailings are paused for this organization (…) — contact support to resume". Import contacts still works.
Support lifts the pause after a conversation; suppressed addresses stay suppressed.
- the panel's subtitle reads "Mailings are paused for this organization —
This is strict on purpose: every organization sends from a shared domain, and one bad list would damage deliverability for everybody.
Emails come from Studio's sending address with your From name as the
display name ("Brand Study Team" <…>). If you leave From name empty, the
platform's own name is used. Replies go to Reply-to. Emails are plain text
— there is no HTML design.
| Plan | Per month | Per day | First mailing of the organization |
|---|---|---|---|
| Free | — | — | — |
| Trial (unpaid) | — | — | — |
| Plus | 1,000 | 300 | up to 200 recipients |
| Pro | 5,000 | 1,500 | up to 500 recipients |
| Corporate | no limit | no limit | no limit |
- Months and days are counted in UTC. Every invitation of a mailing counts when the mailing is created, reminders included.
- The first-mailing limit applies to your organization's very first mailing, in any project — the warm-up every new sender needs.
- A mailing that would exceed an allowance is refused as a whole, e.g. "this mailing would exceed the Plus plan's 300 invitation emails per day (120 sent today, 250 to send) — send the rest tomorrow" or "an organization's first mailing is limited to 200 recipients (412 selected) — start with a smaller list, then send the rest".
Any member of the organization (member, admin, owner) can import contacts, send mailings and reminders. Imports and mailings are recorded in the project's activity log.
- Import only lists you can justify: panel members, course participants, customers, prior study participants.
- Import names with the addresses, or write a greeting that works without one —
Hi {name},becomesHi,for a contact without a name, which reads fine;Dear {name}, thank youbecomesDear, thank you, which does not. - Put the study name in the subject and the sponsor in the From name; anonymous invitations get reported as spam.
- Send the first reminder three to five days later, and at most one more after that — each one reaches only the people who have not completed yet.
- Keep the message short and the link visible near the top.
- Check the preview on a phone-sized window before sending.
- Split a first list larger than your first-mailing limit: send the allowed number, then the rest in a second mailing.
- Publishing and Environments
- Links, QR Codes, Embeds and Access Control
- What Respondents See
- Plans, Trial and Billing
- Security and Privacy
← Panel Providers · Studio contents · What Respondents See →
siamang · Siamang Studio · Free for noncommercial use · Commercial licensing · Wiki source: wiki/
Getting started
Survey design
- Variables and Measurement
- Question Types
- Pages Blocks and Structure
- Visibility and Branching
- Quotas
- Scripts
Validate & simulate
Data & analysis
Reporting
Frontend & deploy
Tooling
More
Get started
Account & workspace
- Sign Up and Sign In
- Account and Profile
- Organizations and Team
- Projects
- Project Settings
- Plans, Trial and Billing
Build the questionnaire
- The Builder
- Question Types
- Codebook and Variables
- Logic and Branching
- Quotas and Randomization
- MaxDiff and Conjoint
- Theme and Branding
- Scripts
- Importing Questionnaires
- Question Bank and Library
- Testing Your Survey
- AI Assistant
Fieldwork
- Publishing and Environments
- Links, QR, Embeds, Access
- Panel Providers
- Email Invitations
- What Respondents See
- Live Monitoring
Data
Analysis & output
- Analysis Flows
- Node Reference
- Cleaning and Weighting
- Coding Open Answers
- Reports
- History and Versions
- Reproducibility
Integrations & admin
Reference