EarlyTrap

  • Features
  • How it works
  • Pricing
  • About

How to add a waitlist form to Squarespace

A Squarespace Code block runs HTML and JavaScript, so it can hold an EarlyTrap form directly on any page.

Step 1: Get your embed code

  1. Sign in to EarlyTrap and click Create Project. Enter a name and your site's address in the Website URL (Origin) field: the domain only, with no page path, starting with https://www. (for example https://www.yoursite.com). The form only saves emails when the page that shows it is served from that address.
  2. Open the project, choose Widget in the sidebar and click Add New Form.
  3. Click Config on the new form. Change the placeholder, button text or colors if you like.
  4. Click the copy button next to Copy script to embed.

You get a snippet like this. The three IDs are unique to your form; the ones below are placeholders.

<div id="next-subscribe-form-normal"></div>
<script
  src="https://www.earlytrap.com/widget.js"
  data-project-id="YOUR_PROJECT_ID"
  data-widget-id="YOUR_WIDGET_ID"
  data-uid="YOUR_UID"
  async
></script>

Step 2: Add it to Squarespace

  1. Edit the page, hover over the section and click Add block (or the + icon), then choose Code.
  2. Click the pencil icon on the block, set Type to HTML and paste your whole EarlyTrap snippet.
  3. Leave Display Source off. Turning it on shows the code as text instead of running it.
  4. Save the page and check it as a visitor, for example in a private browser window.

Squarespace says embedded code may not display while you are logged in, though visitors will see it. You can also use Preview in Safe Mode to check that it renders.

Official docs: Squarespace Help Center: Code blocks.

If the form does not appear

  • Paste both parts of the snippet: the <div> is where the form appears and the <script> loads it.
  • Replace the placeholders with the real IDs from Config. If one is missing, the browser console shows "EarlyTrap: missing required data attributes".
  • Keep to one EarlyTrap form per page.

If the form appears but signups are not saved

The form shows on any site, but it only saves emails when the page is served from the Website URL (Origin) of your project: same protocol and same domain, including the www. prefix. Check that the project's URL is your site's address without a page path. To confirm that signups are saved, submit a test email and look for it under Emails & Broadcasts in your project.

After you publish

Every signup appears under Emails & Broadcasts in your EarlyTrap project, where you can also send a broadcast to your list. Changes you make in Config apply to a form that is already embedded, so you do not need to paste the snippet again.

FAQ

Which Squarespace plans support this?

Running JavaScript in a Code block requires a Core, Plus, Advanced, Business, Commerce Basic or Commerce Advanced plan, according to Squarespace's help center.

Is there a size limit?

Code blocks are limited to 400 KB, roughly 300,000 characters. The snippet is tiny in comparison.

More guides

  • Waitlist widget for your website
  • How to create a waitlist for your product launch
  • Add a waitlist form to Webflow
  • Add a waitlist form to WordPress
  • Add a waitlist form to Next.js

Ready to start collecting emails on your site?

EarlyTrap

Subscribe for updates

Powered by EarlyTrap

Product

  • Features
  • How It Works
  • Pricing
  • About

Guides

  • Waitlist widget
  • How to create a waitlist
  • Waitlist on Webflow
  • Waitlist on WordPress
  • Waitlist on Squarespace
  • Waitlist on Next.js

Español

  • Widget de lista de espera
  • Cómo crear una lista de espera

© 2026 EarlyTrap

Building tools for creators