Skip to main content
Signup forms collect subscribers on your website. Each submission creates or updates a contact, can subscribe them to a list, and can start an automation. Open Forms from the sidebar to see your Signup Forms. Each form shows its target list, whether it’s active, its display type, and links to Edit, Responses, Embed (copies the code) and View public page.

Create a form

1

Name it

Click New Form, enter a Form Name (for example “Newsletter Signup”) and click Create Form. The form editor opens.
2

Pick the list

Under Target List, choose the list new signups join. Choose No list to only create the contact.
3

Choose how it appears

Under Display Type, pick Embedded (an inline iframe on your page), Popup (a centred overlay with a backdrop), Slide-in (slides in from a corner) or Banner (a full-width bar at the top).
4

Add fields

Under Form Fields, click Add Field for each field (details below).
5

Set the wording and colour

Under Settings, set the Submit Button Text (default “Subscribe”), the Success Message (default “Thank you for subscribing!”) and the Accent Color.
6

Activate and save

Turn the switch next to Active on, then click Save Form. Inactive forms reject submissions.
The Live Preview updates as you edit. Submitting from the preview is turned off.

Fields

Every form starts with an Email address field. A form must have an email field to accept submissions. For each field you add, set a label, a type and whether it’s Required. You can reorder fields or remove them. Under each field, the editor shows the name its answer has in automation emails, for example {{ data.company }} for a field labelled “Company”. The name is made from the label when you first save the form and doesn’t change afterwards, even if you rename the label, so automations that use it keep working. It is also the name the form submits the answer under.
Fields added before September 2026 were saved under generated names such as field-1727000000000. Those names keep working, and automations can also use a name made from the field’s current label ({{ data.company }}). For these older fields, that label name follows the label, so rename the label and the name changes too; the editor always shows the current one.
To fill in the contact’s name, label a field “First name” (or “Name”) and another “Last name” (or “Surname”). The form matches these labels. A submission sets a name only when one was entered, and never clears an existing one.
For any display type other than Embedded, you also set:
  • Trigger: Time Delay (set Delay (seconds), for example 3), Scroll Percentage (how far down the page), Exit Intent (when the mouse leaves the window) or Manual. With Manual, open the form yourself by calling ICShowPopup["<form id>"]() in your page’s JavaScript.
  • Position: where a slide-in appears (for example Bottom Right).
  • Show Frequency: Always, Once (only once ever), Once per Session or Once per Day.
  • Show Close Button, and for popups, Backdrop Close (clicking outside the popup closes it).
Click Preview Popup to try it out.

Put the form on your site

Click Copy Code in the editor, or Embed on the forms list, and paste the snippet into your page:
  • Embedded forms use an <iframe> plus a short script that resizes the frame to fit the form.
  • Popup, slide-in and banner forms use one <script src=".../popup.js" data-form-id="…"> tag. Put it before </body>.
View public page opens the form as a standalone page. You can link to that page directly. On an InstantCampaign landing page, paste the embedded snippet into an HTML block. The page resizes the form automatically.

What happens on submit

  1. The contact is created, or matched by email. New contacts get the source form, and their timezone is detected from their IP address when it isn’t already known.
  2. If a Target List is set, the contact is subscribed to it.
  3. The submission is saved under Responses, and the consent is recorded.
  4. Active automations with a Form Submission trigger for this form start. With double opt-in, a new signup enters them when they click the confirmation link. See Automation triggers.
  5. If you have outbound webhooks set up, a form-submitted webhook is sent.

Double opt-in

When double opt-in is on for the workspace or for the target list, a new signup is added as Pending. They receive a confirmation email, and nothing else is sent to them until they click the link. Someone who is already a contact keeps their status. If they aren’t on the target list yet, their subscription to that list is Pending and they receive a confirmation email for it. Clicking the link makes that list subscription active and starts the automations for this form and for that list. It doesn’t confirm any other list they are waiting on; each form’s confirmation email confirms its own list. Until then, campaigns to that list don’t reach them. If they’re already on the list, nothing changes and no email is sent. Contacts who are unsubscribed, bounced or complained aren’t sent a confirmation email. To stop repeated submissions from flooding someone’s inbox, an existing contact is sent at most one confirmation email per list every 10 minutes, and at most 3 an hour. See Double opt-in.

Responses

Click Responses on a form to see its submissions. You can search them, open one to edit or delete it (Edit submission / Delete submission), and Export CSV. Deleting a submission doesn’t delete the contact.

Limits and troubleshooting

  • “Too many submissions. Please wait before trying again.”: each visitor can submit a form 3 times per hour.
  • Form not found or inactive: the form’s Active switch is off, or the form was deleted.
  • Hidden spam trap: forms include a hidden field that people never see. Submissions that fill it in are quietly thrown away.
  • Nothing arrives after a signup: with double opt-in on, the contact stays Pending until they confirm. Check their status on the contact page.