Skip to main content

Signup Form Widget

The Signup Form Widget is a simple, customizable HTML form that you can embed on any website to collect email subscribers. No JavaScript SDK required—just copy and paste the generated HTML. For popup capture, use the Popup Widget. It uses the same Forms API for submissions but loads a hosted JavaScript runtime.

Preview

Here’s what the form looks like with default settings:
Signup Form Widget

Features

No JavaScript Required

Pure HTML form that works on any website

Customizable Styling

Configure colors, button text, and layout

Spam Protection

Built-in honeypot field to prevent bot submissions

List Targeting

Add subscribers to specific lists or all lists

Tag Assignment

Apply existing tags when someone subscribes

Double Opt-In

Require email confirmation before subscribers become active

Quick Start

Step 1: Open the Form Builder

Navigate to Settings → Embed Widget in your Sequenzy dashboard and click on the Form widget.

Step 2: Customize Your Form

Configure your form using the visual builder:
  • Form Style: Choose between “Button below” (stacked) or “Button inline” (side-by-side)
  • Placeholder Text: Customize the email input placeholder
  • Font Color: Set the input text color
  • Button Text: Customize the submit button label
  • Button Color: Set the button background color
  • After submission: Show a success message or redirect visitors to a URL
  • Success Message: Customize the confirmation message shown after submission
  • Subscribe to: Choose which list(s) new subscribers should be added to
  • Apply Tags: Choose which existing tags new subscribers should receive
  • Double Opt-In: Forms follow the workspace setting in Settings → Email Tracking

Step 3: Copy the HTML

Click Copy HTML to copy the generated code, then paste it into your website.

Webflow

Use the HTML code tab when adding the form to Webflow. In the Webflow Designer, add an Embed element where the signup form should appear, paste the generated HTML, and publish the site. This creates a Sequenzy-owned form that posts directly to the Forms API. If you want to keep using an existing native Webflow form instead, connect the Webflow integration from Settings → Integrations → Websites & Forms. Native Webflow forms are captured through signed Webflow form submission webhooks.

Generated HTML

The form builder generates clean, self-contained HTML like this:
<style>
  @import url("https://fonts.googleapis.com/css2?family=Inter&display=swap");
</style>
<div class="sequenzy-form-container">
  <form
    class="sequenzy-form"
    action="https://api.sequenzy.com/api/v1/forms/YOUR_COMPANY_ID"
    method="POST"
    style="display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%;"
  >
    <input
      class="sequenzy-form-input"
      placeholder="you@example.com"
      required
      type="email"
      name="email"
      style="font-family: Inter, sans-serif; color: #000000; font-size: 14px; margin: 0px 0px 10px; width: 100%; max-width: 300px; min-width: 100px; background: rgb(255, 255, 255); border: 1px solid rgb(209, 213, 219); box-sizing: border-box; border-radius: 6px; padding: 8px 12px;"
    />
    <!-- Honeypot field - do not remove -->
    <input
      type="text"
      name="website"
      style="display: none;"
      tabindex="-1"
      autocomplete="off"
    />
    <button
      type="submit"
      class="sequenzy-form-button"
      style="background: #f97316; font-size: 14px; color: rgb(255, 255, 255); font-family: Inter, sans-serif; display: flex; width: 100%; max-width: 300px; white-space: nowrap; height: 38px; align-items: center; justify-content: center; padding: 9px 17px; box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.05); border-radius: 6px; text-align: center; font-weight: 600; cursor: pointer; border: none;"
    >
      Submit form
    </button>
  </form>
</div>

Form Layouts

Button Below (Default)

The input and button are stacked vertically:
┌─────────────────────────┐
│   you@example.com       │
└─────────────────────────┘
┌─────────────────────────┐
│      Submit form        │
└─────────────────────────┘

Button Inline

The input and button are side-by-side:
┌─────────────────────┐ ┌────────────┐
│   you@example.com   │ │   Submit   │
└─────────────────────┘ └────────────┘

Targeting Specific Lists

When you open the form builder, all current lists are selected by default. You can keep that selection, choose a smaller set of lists, or clear the selection to create subscribers without adding them to any list.
  1. In the form builder, go to the Settings tab
  2. Use the Subscribe to picker to select or clear lists
  3. Copy the updated HTML
The generated HTML includes selected list IDs in the form action. If no lists are selected, the action includes lists= to create the subscriber without list membership.
<form
  action="https://api.sequenzy.com/api/v1/forms/company_123?lists=list_abc123,list_def456"
  method="POST"
></form>

Applying Tags

You can also apply existing tags when someone submits the form:
  1. In the form builder, select tags from Apply tags
  2. Copy the updated HTML
The generated HTML includes tag IDs in the form action:
<form
  action="https://api.sequenzy.com/api/v1/forms/company_123?tags=tag_abc123,tag_def456"
  method="POST"
></form>

Handling Existing Contacts

Embedded forms can choose how submitted name fields affect an existing contact:
  • skip preserves the existing contact fields
  • merge fills only fields that are currently empty
  • overwrite replaces submitted fields
The form builder adds the strategy to the generated form action:
<form
  action="https://api.sequenzy.com/api/v1/forms/company_123?duplicateStrategy=merge&duplicateStrategyToken=SIGNED_TOKEN"
  method="POST"
></form>
merge and overwrite use a signed token generated by the form builder so visitors cannot change a public embed URL to overwrite existing contacts.

Double Opt-In

Signup forms follow the workspace double opt-in setting. When double opt-in is enabled, a form submission creates a pending subscriber and sends your confirmation email. The subscriber becomes active only after clicking the confirmation link. Selected lists and tags are applied after confirmation, not before. This keeps list-triggered and tag-triggered automations from starting until the subscriber has confirmed.

Double Opt-In

Learn how to enable and customize confirmation emails.

Spam Protection

The form includes a honeypot field that’s hidden from real users but visible to bots:
<input
  type="text"
  name="website"
  style="display: none;"
  tabindex="-1"
  autocomplete="off"
/>
Do not remove the honeypot field. It helps prevent spam submissions by catching automated bots that fill in all form fields.

After Submission

After successful submission, users can see a success message or be redirected to a custom page. For success messages, you can customize:
  • Success Message: The text shown after submission (e.g., “Thanks for subscribing!”)
  • Font Color: The color of the success message
  • Font Size: The size of the success message text
For redirects, choose Redirect to URL and enter any http or https URL, such as https://example.com/thank-you. You can also enter a domain like google.com; Sequenzy will treat it as https://google.com. Redirects only run after the submission succeeds.

Custom Styling

The generated HTML uses inline styles for maximum compatibility. You can override these styles with CSS:
/* Custom input styling */
.sequenzy-form-input {
  border-color: #3b82f6 !important;
  border-radius: 8px !important;
}

/* Custom button styling */
.sequenzy-form-button {
  border-radius: 8px !important;
  text-transform: uppercase !important;
}

/* Custom container styling */
.sequenzy-form-container {
  padding: 20px;
  background: #f9fafb;
  border-radius: 12px;
}

Integration Examples

WordPress

Paste the HTML into a Custom HTML block in the WordPress block editor.

Webflow

Add an Embed element and paste the HTML code.

Squarespace

Use a Code Block to add the HTML.

Static HTML Sites

Paste the code directly into your HTML file.

API Endpoint

The form submits to:
POST https://api.sequenzy.com/api/v1/forms/{companyId}
Form Fields:
FieldTypeRequiredDescription
emailstringYesSubscriber’s email address
firstNamestringNoSubscriber’s first name
lastNamestringNoSubscriber’s last name
listsquery stringNoComma-separated list IDs. Use lists= for no lists.
tagsquery stringNoComma-separated tag IDs to apply.
listIds[]string[]NoBackward-compatible repeated list ID body field.
tagIds[]string[]NoBackward-compatible repeated tag ID body field.
redirectUrlstringNoURL or domain to redirect to after success
websitestringNoHoneypot field (should be empty)
Existing deployed embeds that submit repeated hidden listIds[] or tagIds[] fields continue to work.

Best Practices

  1. Test before deploying: Use the preview in the form builder to test your form
  2. Keep the honeypot: Don’t remove the hidden honeypot field
  3. Match your brand: Customize colors to match your website design
  4. Clear call-to-action: Use descriptive button text like “Subscribe” or “Get Updates”
  5. Set expectations: Use placeholder text to indicate what you’re offering

Troubleshooting

Form not submitting

  • Ensure the form action URL is correct
  • Check that required fields are filled
  • Verify your domain is properly configured in Sequenzy

Subscribers not appearing

  • Check if the subscriber already exists (duplicates are ignored)
  • Verify the honeypot field is empty (bots trigger this)
  • Check your Sequenzy dashboard for any API errors

Styling issues

  • Inline styles have high specificity—use !important to override
  • Some email clients strip certain CSS properties
  • Test on multiple browsers and devices