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
- 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 examplehttps://www.yoursite.com). The form only saves emails when the page that shows it is served from that address. - Open the project, choose Widget in the sidebar and click Add New Form.
- Click Config on the new form. Change the placeholder, button text or colors if you like.
- 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
- Edit the page, hover over the section and click Add block (or the + icon), then choose Code.
- Click the pencil icon on the block, set Type to HTML and paste your whole EarlyTrap snippet.
- Leave Display Source off. Turning it on shows the code as text instead of running it.
- 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.