HOAcrew

Add the form to Squarespace

One Code block on the page you want it on. If your plan cannot run a script inside one, a button to your hosted form does the same job and takes two minutes.

Where the code goes
a Code block
How the form arrives
Inside your page
the visitor never leaves your site
What you paste
Two lines of HTML
Addresses per key
10
list every spelling your site answers on

Check which plan you are on

You need your key first.

It is on the plugin page in your console, under Settings, Website plugin. That page is also where you list the web addresses your form is allowed to appear on, and it will not work anywhere you have not listed. The overview walks through getting one.

The Code block itself is on every Squarespace plan. What is not is the ability to run JavaScript or an iframe inside one — Squarespace lists that as Core, Plus, Advanced, and the legacy Business, Commerce Basic and Commerce Advanced plans. Our snippet is a script and a frame, so that is the line that matters.

The symptom is not a missing block.

On a plan without it, the Code block is right there in the list, it accepts your paste, and it saves without complaining. The live page then shows nothing. If that is what you are looking at, this is the cause — not the web address list, and not the key.

Squarespace renamed its tiers, so a site bought recently is on Basic, Core, Plus or Advanced and an older one is on Personal, Business or Commerce. Basic and Personal are the two that cannot run the snippet. Your plan is under Billing in Squarespace settings, and their own page on code blocks states the rule if you want to check it against the source.

If you are on one of those two, skip to A button, on any plan below. It puts the same form in front of the same visitor, opened as a full page rather than sitting inside yours, and it takes two minutes with no code at all.

Paste it into a Code block

This is the code. Replace hoac_embed_your_key_here with the key from your console. That is the only edit it needs.

The snippet

<div data-hoacrew-proposal-form data-key="hoac_embed_your_key_here"><a href="https://hoacrew.com/embed/w/hoac_embed_your_key_here">Request a proposal</a></div>
<script src="https://hoacrew.com/embed/v1.js" async></script>

Two lines: the place the form goes, and the script that puts it there. The link inside the first line is a plain one to your hosted form, and it is what a visitor gets if the script never arrives — a browser with scripting off, a corporate proxy, a blocker. The loader clears it the moment it runs, so nobody sees both. That wording is yours: change Request a proposal to whatever you would rather it said and nothing else is affected.

  1. 1

    Open the page and press Edit

    In Pages, click the page you want the form on, then press Edit.

  2. 2

    Add a Code block where you want the form

    Hover where the form should go until the insert point appears, click it, and search the block list for Code.

  3. 3

    Replace the sample content

    A new Code block arrives with a line of sample content in it. Select all of it, delete it, and paste the snippet in its place. Leave the mode set to HTML, and leave Display Source unticked — ticking it shows your visitors the code instead of the form.

  4. 4

    Save, then open the live page

    Press Save. The editor shows a grey placeholder where the block is, because Squarespace does not run embedded code inside the editor. That is expected. Open your site in a normal browser tab to see the form.

Register both spellings of your address.

To a browser, acme-lawns.com and www.acme-lawns.com are two different places. If your site answers on both, list both on the plugin page. The same goes for http:// against https://. This is the reason behind almost every form that never appears.

How to tell it worked

  1. Open the live page in a normal tab, signed out of Squarespace if you can.
  2. The form is there with your company’s name on it. Send yourself a test, taking more than a few seconds over it — a submission completed unusually fast is filed as suspected spam rather than landing in the main list.
  3. Check Settings → Website plugin in your HOAcrew console. Your test is in the list.

Squarespace trial and built-in addresses

A site still on a trial answers at an address like oak-hollow-lawns.squarespace.com. That is a different address from your real domain, so if you want to test before launch, add it to the plugin page too — and remove it once you are live.

If your site has a security policy

Most websites have no Content-Security-Policy and this section does not apply to them. If yours has one — a security plugin added it, your host sets it, or whoever built the site wrote one — it needs to allow two things from us:

The two allowances

script-src  https://hoacrew.com
frame-src   https://hoacrew.com

The first lets the loader script run. The second lets the form’s frame render. Allow the first and forget the second and you get a blank space where the form should be, with a line in the browser’s developer console naming frame-src. Nothing else is needed: the form loads no fonts, no analytics and no other company’s code, so there is no third allowance hiding behind these two.

Squarespace does not give you a place to write one, so on a standard Squarespace site this section does not apply. It matters only if your domain sits behind something you added yourself — a Cloudflare rule, for instance — that adds headers on the way out.

The same form, somewhere else