Squarespace

Add a form to a Squarespace site

A Code Block holds the form; the endpoint receives the submit. Squarespace form blocks stay for what they’re good at, and this handles everything else.

  • Free plan
  • No plugin to install
  • Set up in minutes
How it works

Squarespace in three steps.

  1. 1

    Create a form and copy its Public Key

    Sign up and copy the Public Key for the form responses should land in.

  2. 2

    Insert a Code Block

    Add a Code Block to the page and paste the form markup. Display the code as-is is unchecked by default. Leave it that way.

  3. 3

    Style and publish

    Add inline styles or classes matching the site’s typography, then publish and send a test submission.

The code

Copy this into Squarespace.

Swap in your form’s key and submissions start landing in your inbox.

Code Block
<form action="https://api.surveyowl.co/v1/submit/sk_live_…" method="POST">
  <input name="name" type="text" placeholder="Name" required />
  <input name="email" type="email" placeholder="Email" required />
  <textarea name="project" placeholder="Tell us about the project"></textarea>
  <button type="submit">Get in touch</button>
</form>
Great for

What people build with it.

Inquiry forms that should feed Sheets, Notion, or a webhook.

Sites on plans without form-storage or Google Drive storage.

Landing pages where the form block’s styling options fall short.

FAQ

Squarespace forms, answered.

1. Create a form and copy its Public Key: Sign up and copy the Public Key for the form responses should land in. 2. Insert a Code Block: Add a Code Block to the page and paste the form markup. Display the code as-is is unchecked by default. Leave it that way. 3. Style and publish: Add inline styles or classes matching the site’s typography, then publish and send a test submission.

Squarespace’s native form block sends email and stores a limited history. When the destination should be a spreadsheet, a Slack channel, or an API, a Code Block with the form pointed at the endpoint is the shortest path, and no developer plan is required for a plain form embed.

Code Blocks sanitize some attributes on lower plans; if the action is stripped, move the form into a Code Injection block or upgrade to a plan that allows unfiltered HTML. The markup itself never changes.