- Blog
- How to Add a Waitlist to Squarespace (Code Block)
Article
How to Add a Waitlist to Squarespace (Code Block)
Add a GetWaitly waitlist to Squarespace with a Code Block or Code Injection, plus a no-JavaScript fallback for the Basic plan. Plan requirements and fixes included.
A Squarespace page is a clean place to host a pre-launch waitlist — but the built-in form block sends submissions to an email address, not a waitlist with referrals and broadcasts. GetWaitly's widget fixes that with two lines of code.
One Squarespace constraint matters before you start: JavaScript in code blocks and code injection requires a Core plan or higher. Here is how to set it up, and the no-JavaScript fallback if you are on Basic.
The short answer
Add a Code Block where you want the form and paste your GetWaitly snippet, or use Code Injection in the footer to load it site-wide. Publish. Running the widget's JavaScript needs a Squarespace Core plan or higher (legacy Business plan). Total time: 5 minutes.
What you need
- A GetWaitly account with a waitlist created (free plan covers 100 subscribers).
- Your waitlist's public ID from the Widget/Embed section of the dashboard.
- A Squarespace site on a plan that supports custom JavaScript. Core, Plus, Advanced, and Commerce plans allow JavaScript in code blocks; the entry-level Basic plan allows HTML, CSS, and Markdown only, so the widget script will not run on it.
Step 1 — Get your embed code
In GetWaitly, open the waitlist and go to Widget. Copy:
Script tag:
<script src="https://getwaitly.com/widget.js" defer></script>
Container div:
<div class="gw-widget" data-waitlist-id="YOUR_WAITLIST_ID"></div>
Use the waitlist's public ID, not the URL slug.
Step 2 — Add the form with a Code Block
In the Squarespace editor, open the page where you want the waitlist. Click + to add a block, choose Code, and paste both lines:
<div class="gw-widget" data-waitlist-id="YOUR_WAITLIST_ID"></div>
<script src="https://getwaitly.com/widget.js" defer></script>
In the Code Block's settings, set the language to HTML. Drag to size the block — start around 400px tall so the form has room — then Save and Publish.
The widget renders inline where the block sits and inherits your waitlist's accent color and font.
Step 3 — Or load the script site-wide (optional)
If you want the widget on several pages, load the script once via Code Injection instead of repeating it in every block.
Go to Settings → Advanced → Code Injection, and paste the script into the Footer box (it runs after page content loads):
<script src="https://getwaitly.com/widget.js" defer></script>
Save, then add only the container div in each page's Code Block:
<div class="gw-widget" data-waitlist-id="YOUR_WAITLIST_ID"></div>
Code Injection requires a Core plan or higher (legacy: Business). Per-page Code Injection lives in a page's Settings → Advanced tab and is useful if you only want the script on the waitlist page.
Step 4 — The popup variant (optional)
For a button that opens the form in a modal, load the script (Step 3) and add a Code Block with a trigger button:
<button class="gw-trigger" data-waitlist-id="YOUR_WAITLIST_ID">Join waitlist</button>
This works well in a header or as a mid-page call to action.
Step 5 — Publish and test
Publish and open the live page in a private window. Submit a test email and confirm the success message appears and the subscriber reaches your GetWaitly dashboard. On mobile, check the form is full-width and tappable.
If you are on the Basic plan
Squarespace's entry-level Basic plan does not run JavaScript in code blocks. You have two options that still work:
No-JavaScript form action. A plain HTML form needs no script. Add a Code Block on Basic and point the form at your waitlist's join endpoint:
<form action="https://getwaitly.com/api/join/YOUR_WAITLIST_ID" method="post">
<input type="email" name="email" required placeholder="Your email" />
<button type="submit">Join the waitlist</button>
</form>
The browser posts the signup and redirects to your thank-you page. You lose the inline success animation, but the subscriber still lands in your dashboard.
Hosted page link. Publish the GetWaitly hosted page at getwaitly.com/w/your-id and link to it from a Squarespace button. No code, any plan.
Squarespace-specific gotchas
- Plan gating. JavaScript in code blocks and code injection require Core or higher. The Basic plan strips scripts — the block appears empty or inert.
- Code Block language. Set the language dropdown to HTML so the block does not escape your tags.
- Fluid Engine sizing. If the block renders blank, it is usually too short. Drag it taller (400px+) or resize the section.
- Check the published page. The Squarespace editor often does not render third-party scripts; test the live site.
FAQ
Does GetWaitly work on Squarespace?
Yes. Add the widget via a Code Block on any plan that supports JavaScript (Core or higher), or use the no-JavaScript form action that works even on the Basic plan.
Which Squarespace plan do I need?
JavaScript in code blocks and code injection require a Core plan or higher (Business or higher on legacy plans). The Basic plan supports HTML, CSS, and Markdown in code blocks but blocks JavaScript.
Why is my Squarespace code block empty?
Two usual causes: you are on the Basic plan (JavaScript is stripped), or the block is too short. Confirm your plan and drag the block to at least 400px tall.
Can I make the waitlist a popup in Squarespace?
Yes, on a plan that supports JavaScript. Load the widget script via Code Injection (footer) and add a Code Block with a gw-trigger button. Clicking it opens the form in a modal.
Is Code Block or Code Injection better?
Use a Code Block for an inline form on one page. Use Code Injection when you want the script loaded site-wide and the form placed on multiple pages, including the popup trigger.
Related guides
- How to Add a Waitlist to Webflow — the Code Embed method
- Which Form Builder for a Waitlist? — form builders vs a dedicated waitlist tool
- 7 Best Waitlist Tools for Solo Founders in 2026 — the full comparison
The simple, affordable waitlist for indie hackers. Start free in 5 minutes — no credit card required. Try GetWaitly free →
Written by
Aymane E.
Founder of GetWaitly. I write about validating ideas, pre-launch, and growth from building a waitlist tool as a solo founder.
Follow on X →