Summit Hub
← All guides · Connected workflows

Connected workflows

Website lead-capture forms

Who can use it. Owners set it up in Settings. The form itself is public: it lives on your own website, and anyone visiting can send an enquiry. Available on plans that include lead capture.

What it's for

Instead of enquiries landing in an inbox (or in a HubSpot form), a lead-capture form drops them straight into your pipeline. A visitor fills it in on your website; the app creates the records you asked for and, if you've built automations that react to a form submission or a new deal (a "thanks, we'll be in touch" email, a task for whoever chases new leads), they run immediately.

You can have as many forms as you like: a general enquiry form on the contact page, a "book a site visit" form on the services page, a newsletter signup in the footer. Each one has its own questions, its own look, and its own embed snippet.

Setting it up

  1. Go to Settings → Client experience → Lead Capture.
  2. Click + New form (or pick an existing one from the row of buttons; a filled dot means it's live).
  3. Give it a name. The name is what you'll pick in automations later, so make it something you'll recognise.
  4. Choose what a submission creates:

- A deal (and its contact): the usual choice for enquiries. Pick the pipeline and the stage new leads land in. A deal needs a real name, so a form set up this way must have one question saved as Deal name (usually the site address), and you can't turn the form on without it. A new deal form starts with that question already added. - A contact only: for signups and mailing lists, where there's no job to quote yet. This one needs no pipeline at all, so you can build it before you've set your pipelines up.

  1. Build the questions (see below), style it, then Turn form on.
  2. Choose where you're adding the form: Wix, Squarespace, WordPress, Webflow, Shopify, Framer, GoDaddy/Weebly, or "any other site". The panel shows the exact click path for that builder and gives you the snippet it needs.
  3. Copy the snippet and paste it in. Preview in \<your builder\> shows the form running from that exact snippet, at desktop or mobile width, before you ever leave the app.

Choosing the questions

Each row under Questions on the form is one input. For each one you set:

  • The label: what the visitor reads.
  • The type: text, email address, phone number, long text, number, date, a list to choose from, or a tick box.
  • Where it's saved: contact name, contact last name, contact email, contact phone, the message (which becomes the note on the deal), Deal name (deal forms only, see above), one of your Deal properties, or Custom column. A custom column is saved as a property on the record and listed on the deal note, so "Suburb", "Budget" or "How did you hear about us?" all work without anyone changing anything in the app.
  • Required: whether the visitor has to fill it in.

Use the arrows to reorder and the bin to remove. Two questions are always kept (contact name and contact email) because the email is how a repeat enquirer is matched to the contact you already have. A deal form also always keeps its Deal name question, and it stays required even if you try to make it optional: an unnamed deal isn't a deal you can find later.

Asking for the name in one box or two

Most website forms ask for the name twice: First name, Last name. Set the first to Contact name (or first name) and the second to Contact last name, and the two are joined back together on the contact: "Jane" and "Builder" become the contact *Jane Builder*, with the surname kept in its own field as well. One box works exactly as it always has: leave the question on Contact name (or first name) and put the whole name in it.

Rename the first question when you add the second. A form that still asks for "Name" next to "Last Name" invites the visitor to type their whole name in the first box and their surname again in the second, and you get *Jane Builder Builder*. The panel warns you about this under the question.

If you label a question something like "Last Name", "Surname", "Mobile" or "Email address" and leave it on Custom column, the panel says so under the row. It is only a warning (you can save it either way), but it is there because the answer would otherwise end up at the bottom of the deal's Details tab rather than on the contact, which is rarely what anyone meant.

Sending an answer to a deal property

If you have built a list of Deal properties (Settings → Deals & pipeline), a deal form's questions can be pointed straight at one. Pick it under Where it's saved and the answer lands in that field on every deal the form creates. The budget someone types on your website becomes the budget on the deal, instead of a lookalike field sitting next to it.

The question then changes to suit the field: a dropdown property brings its own list of choices, a date property asks for a date, a number property for a number. You can't edit the type or the choices while a property is chosen, which is how the answer is guaranteed to fit the field.

What the form posts doesn't change. A form already live on your site keeps working and nothing needs re-pasting.

A question left on Custom column gets a deal property of its own the first time you save the form, named after the question. You'll find it on Settings → Deal properties, where you can relabel it and use it in an automation. If a property of that name already exists, the question is pointed at *that* one and takes its shape, so a "Budget" question on a form joins the Budget dropdown you already built rather than quietly collecting free text it will refuse.

Edit a dropdown property's choices later and the copy of the form already pasted on your site is out of date for a while. Nobody is turned away over it: an enquiry that picks a choice you have since removed is still created, and the answer is written into the enquiry note on the deal instead of the property.

Two more things to know. Only deal forms can do this: a contact-only form's extra answers are saved on the contact, which has no property list. And old enquiries stay where they were. Pointing a question at a property changes where *new* answers land; deals created before the change keep theirs under the old name, and the deal's Details tab still shows them.

Making it match your site

  • Form theme: light or dark. Pick dark if your website has a dark background; the form's text and fields flip to suit it.
  • Button colour: set it to your brand colour. The button's text switches between black and white automatically so it stays readable.
  • Custom CSS: for when the two above aren't enough. Anything you write here is applied after the form's built-in styles, so your rules win. Useful hooks:

| Selector | What it styles | | --- | --- | | .lcf-shell | the form's outer box | | .lcf-label | every field label | | .lcf-input / .lcf-textarea | the inputs | | .lcf-submit | the send button | | .lcf-field-<name> | one specific question |

Click Start me off to drop a working example into the box.

The submit button

The button at the bottom of the form says Send enquiry unless you change it. Type your own words in Submit button text (just above the after-submit message), for example "Send me my guide" on a download form. Clear the box to go back to "Send enquiry". The preview shows the new label as you type.

The message after someone hits send

Once an enquiry goes through, the form replaces itself with a short thank-you. You can write your own; there's a heading box and a message box under Custom CSS:

  • Leave either box empty to keep the standard wording ("Thanks, we've got it." / "Your message has been sent. We'll be in touch shortly."). Empty means "use the standard", not "show nothing", so you can clear a box to go back.
  • A blank line starts a new paragraph; a single line break stays a line break. Plain text only: HTML you type is shown as text, not run.
  • This is the last thing an enquirer reads, so it's the place to say what actually happens next: "Rob will call you back today", or your phone number for anything urgent.

Under the message boxes you can also pick:

  • Message alignment: Left (the standard) or Centre.
  • Message text colour: click the swatch to pick a colour for the heading and message. Use theme colour goes back to the standard colours, which follow the light or dark theme you chose.

Anything you put in Custom CSS still wins over these two settings.

Click After-submit message under the preview to see it exactly as a visitor will, without having to submit your own live form.

The Live preview underneath updates as you type, and it is rendered by the same code that serves the real form, so what you see there is exactly what Wix (or Squarespace, or anywhere else) will show. Switch to Preview in \<your builder\> to see the pasted snippet running the way that builder runs it, and use Desktop/Mobile to check both widths.

Three ways to add it

Most builders take the first one. The panel picks for you, but you can override it:

  • Script: the best experience. The form grows and shrinks to fit its content, so there's never a scrollbar inside it. Needs a builder that allows custom HTML with scripts.
  • iframe: for builders that strip scripts (Squarespace on the Personal plan, WordPress.com below Business, some GoDaddy sections). Works everywhere, but it's a fixed height, so leave a little slack.
  • Link: a plain web address that opens the form as its own page. Use it in a Notion embed, an email signature, a link-in-bio, or as a button on any site.

A couple of builder notes worth knowing: Squarespace Code Blocks need a Business plan or higher, and Webflow embeds don't run in the Designer; you have to publish the site to see the form.

A form matches repeat enquirers by email address, so someone enquiring twice becomes one contact with two deals, not two contacts. That matching is organisation-wide, so an enquiry through one form finds the contact another form created.

Using a form in an automation

On an automation's Form submitted trigger, the *Which form?* dropdown lists every form you've built by name: no key or token to type. Leave it on Any form to react to all of them.

Each entry says what that form creates, for example *Website enquiry form, creates a deal in Lead Pipeline / Enquiry* or *Reno guide form, contact only*. A form that makes a deal has already done the job of a Create deal step, so an automation for it should work on that deal instead: move it, tag it or notify someone.

In the form's settings, a note under New leads go to pipeline and Starting stage says the same thing. If a switched-on automation also has a Create deal step for the form, the note lists it with a link to open it:

  • An automation set to this form: take the Create deal step out.
  • An automation set to Any form: the step may still be needed for forms that only capture a contact, so the note doesn't tell you to remove it. The step is skipped for this form.

To send new enquiries somewhere else, change the pipeline and stage on the form.

Spam and abuse

The form carries a hidden trap field that catches most bot submissions, and submission rates are capped per visitor and per organisation so a flood can't bury your pipeline. You don't need to configure anything.

A submission the trap catches isn't thrown away: it still arrives in your pipeline as a deal and contact (or just a contact, for a contact-only form), with the deal's name starting "Possible spam:" so it's easy to spot. Your automations still run for it, exactly like any other enquiry: a "thanks, we'll be in touch" email or a task for whoever chases leads fires the same way, so nothing arrives silently. If it's genuinely spam, delete it in one click; if it isn't (a real visitor's browser can trigger the trap by autofilling it), it's still there: nothing about a real enquiry gets lost.

If you'd rather an automation skip a flagged submission, add a Branch step that checks the spam_suspect property for the value yes.

When the cap turns a visitor away, or an enquiry is saved but its automations fail to run, our team is alerted automatically. We're also alerted when a visitor submits a form whose link no longer works. If you delete a form or regenerate its link, update your website's snippet so enquiries keep arriving.

Sending people to your own thank-you page

By default, someone who sends an enquiry sees your after-submit message right where the form was. If you'd rather they land on a page of your own (usually a thank-you page), put its address in Redirect after submit.

The most common reason to do this is conversion tracking. Google Tag Manager, Google Ads and similar tools count a conversion when someone *loads* a particular page, and a message appearing in place is not a page load. Sending people to https://your-site.co.nz/thank-you gives those tools the page load they are waiting for.

A few things worth knowing:

  • The address has to be a full one starting with https://: anything else is refused when you save, with the reason shown under the box.
  • Your after-submit message still appears for a moment on the way through, and stays put if the browser blocks the jump, so keep it sensible. There's a Continue → link there too, in case the jump doesn't happen.
  • If your website builder only accepts the iframe snippet (GoDaddy and Weebly, typically), your thank-you page opens *inside* the form's box rather than taking over the whole page. Use the script snippet where you can.
  • Nothing changes on a form that fails to send: someone who misses a required question stays on your page with the form in front of them, as before.
  • Leave the box empty and nothing changes: the message shows in place, exactly as it does today.

If the embed link leaks

Each form's address contains a private token. If one ends up somewhere you don't want it, use Regenerate token on that form: the old embed stops working immediately, and you paste the fresh snippet into your site. The other forms are untouched.

Delete form removes it for good; any site still embedding it shows "this form is unavailable".

If the form doesn't appear

  • Nothing shows up at all: your builder is probably stripping the script. Switch the snippet type to iframe and paste that instead.
  • A box appears but it's cut off: the builder is holding the frame at a fixed height. Drag the element taller (Wix, Framer) or raise the height in the iframe snippet.
  • It works in the app preview but not on your site: on Webflow, publish the site; embeds never run in the Designer.
  • Your custom CSS looks different on the live form: check the live preview first: it uses the same renderer, so a difference there means the CSS is fine and the builder's own frame is squeezing it. Give the element more room.