Protect your Keap form from bots
In short: To stop spam on a Keap form, either run the form's unstyled HTML through the SpamKill Setup Wizard and paste the protected code on your page (about 5 minutes), or build the form in the SpamKill Form Builder and connect Keap (about 10 minutes). Either way, SpamKill checks every submission without a CAPTCHA and real leads still land in Keap.
Bots are filling your Keap forms with fake contacts. Pick how your form is set up and follow that path. Either way, real leads keep landing in Keap and the spam stops at the door.
- About 5–10 min
- 2 ways to set up
- Copy and paste one snippet
Last verified on Keap Max Classic (Automation Builder Web Form goal) with the SpamKill Setup Wizard and SpamKill Forms
What changes, and what doesn't
- Leads still arrive in Keap as contacts
- Your Keap tags, automations and existing contacts
- Your page: only the form code changes
- Every submission is checked before it reaches Keap
- Bots are stopped without a CAPTCHA
- Undo it anytime by putting your old form code back
Before you start
Have these ready so nothing stops you halfway.
- A SpamKill accountNo account yet? Start a free trial.
- A Keap login that can edit formsFor SpamKill Forms you also approve SpamKill once, on Keap's own sign-in screen.
- Access to the page your form goes onFor example your WordPress, Webflow or Squarespace editor, or your landing page builder.
How is your Keap form set up?
Not sure? Open your form in Keap and click its Code tab. If you can pick HTML Code (unstyled), choose the first option.
Pick the option that matches your form to see its steps.
Protect your Keap web form
Not your setup? Choose another optionQuick setup
For returning users. Each line links to its full step.
- In Keap, open Marketing › Automation Builder, open your automation and double-click its form goal. Step 1
- On the Code tab, pick HTML Code (unstyled) and copy the code. Step 2
- In the SpamKill Console, open Setup Wizard, click No to the WordPress question and paste the code. Step 3
- Check the email field shows inf_field_Email, click Generate Protected Code, then Yes, protect my form. Step 4
- Paste the protected code where the Keap code was, publish the page, then click Next. Step 5
- Submit [email protected] and expect an error, then submit a real address and check Keap. Step 6
Open your Web Form goal
Where: KeapAutomation BuilderYour automation
In Keap, go to Marketing › Automation Builder. Open the automation your form belongs to. Double-click the form's goal (1) to open the form editor.
You should see: The form editor, with your form's fields on the Design tab.
Using an older legacy web form?
Open it from Marketing › Legacy › View Web Forms and click its Publish tab instead of Code. The rest of the steps are the same.
Copy the unstyled HTML
Where: KeapYour formCode
Click the Code tab. Select HTML Code (unstyled) (1). Click the copy icon next to the code (2).
You should see: Keap says The HTML snippet has been copied to the clipboard.
Why not the Javascript Snippet?
Keap draws that version with a script after the page loads, so there's no form code for SpamKill to protect. The unstyled HTML is the form itself.
Paste it into the Setup Wizard
Where: SpamKill ConsoleSetup Wizard
In the SpamKill Console, click Setup Wizard in the sidebar. If your site isn't on WordPress, click No under Is your website developed in WordPress?. Paste the Keap code into the box (1).
You should see: Tips under the box, starting with a note that scripts in your paste are removed and your fields are kept.
Is this form already live on your site?
Clone it in Keap and paste the clone's code instead. You can delete the old form once the new one is set up.
Generate the protected code
Where: SpamKill ConsoleSetup Wizard
SpamKill picks your email field (1). Check it shows inf_field_Email. Click Generate Protected Code (2). Confirm with Yes, protect my form.
You should see: Replace the existing code with this code on your website, above your protected code.
Want it to keep your styling?
Style the form in Keap before you copy its code. SpamKill keeps most styling, and it's much harder to add back afterwards.
Swap the code on your page
Where: Your website editor
Copy the protected code from the box. Open the page with your Keap form in your website editor. Delete the Keap form code and paste the SpamKill code in its place. Save and publish the page. Then click Next in the wizard.
You should see: Your page shows the same form as before.
Does your site style the form by field name?
SpamKill renames each field, and the wizard lists the old and new names. Update any CSS or scripts that point at the old names.
Test it twice
Open your page in a private window. Submit the form with [email protected] as the email (1). Then submit it again with an address you can recognise.
The first try shows That email address doesn't look right.
The second try appears in Contacts with the name and email you entered.
Back in the wizard, click Both Tests Passed.
You should see: Your form's usual Keap thank-you page after the second try.
Your Keap form is protected
- Bots are stopped before they reach Keap.
- Real leads arrive exactly as before, with no extra steps for them.
- Every block is logged in your SpamKill dashboard.
Something not working?
Find what you're seeing.
Real leads aren't showing up in Keap
Check the live page has the protected code: its form sends to protect.spamkill.dev. Then check the form is still published in Keap. If you changed the form in Keap, copy its code again and repeat steps 3 to 5.
A real visitor was told their email doesn't look right
SpamKill checks for missing @ symbols, extra spaces and common typos. The visitor can click Go back to the form, fix the address and send again.
My form looks different
Scripts in Keap's code are removed, and your site's CSS may target the old field names. Restyle the form in Keap and repeat steps 2 to 5, or update your CSS with the new names the wizard listed.
Changed your mind? Undo in under a minute
- Open the page in your website editor.
- Delete the SpamKill code and paste your original Keap form code back.
- Save and publish the page. Your form is back to how it was.
Build a SpamKill form for Keap
Not your setup? Choose another optionQuick setup
For returning users. Each line links to its full step.
- In SpamKill, open Form Builder and click Create form. Step 1
- On the Build tab, add the fields your Keap form has. Step 2
- On the Deliver tab, click Connect next to Keap, pick your Keap app and click Allow. Step 3
- Check the field mapping, add a tag, click Save mapping, then Publish form. Step 4
- Copy the code from the Embed tab and paste it where the form should appear. Step 5
- Submit your live form once, then check the contact in Keap. Step 6
Create your SpamKill form
Where: SpamKill ConsoleForm BuilderForms
In the SpamKill Console, click Form Builder in the sidebar, then Create form. Pick the starting point closest to your Keap form (1), give it a name, and click Create (2).
You should see: Your new form open on the Build tab, marked Draft.
Match your Keap fields
Where: Form BuilderYour formBuild
Add each field your Keap form asks for from Common fields (1). Reorder or remove fields in the form on the right (2). Every form keeps one required Email field.
You should see: The same fields as your Keap form, with All changes saved at the top right.
Want it to look like your old form?
Use the Design tab to pick colours, font and label position. Style changes apply when you publish.
Connect Keap
Where: Form BuilderYour formDeliver
Open the Deliver tab and click Connect next to Keap (1). Keap opens its Authorize Application screen. Pick your Keap app (2), then click Allow (3).
You should see: Back in SpamKill, a green Connected. message and Keap · Already connected. Click Use this.
More than one Keap app in the list?
Pick the one your team works in. Its name matches the address you sign in to, such as yourname.infusionsoft.com.
Map fields, tag and publish
Where: Form BuilderYour formDeliver
SpamKill matches your fields and splits Full name into first and last name (1). Under Tags, add the tag your Keap automations start on (2). Click Save mapping, then Publish form (3).
You should see: Mapping saved., then the form's badge changes from Draft to Published.
Want to check delivery before going live?
Click Send a test lead to this CRM. A test contact appears in Keap. Delete it afterwards.
Place the form on your page
Where: Form BuilderYour formEmbed
On the Embed tab, click Copy (1). Open your page or landing page in its editor. Paste the code where the form should appear, replacing any old Keap form code. Save and publish the page.
You should see: Your page shows the SpamKill form with your fields.
Changed a field later?
Re-paste the code only when you add or remove a field. Other changes apply when you click Update & re-publish.
Test it with a real submission
Open your page in a private window and fill in the form the way a customer would. Use an email address you can recognise. Then check Keap.
The test contact appears in Contacts, with first and last name filled in.
Your tag shows on the contact's Tag tab.
You should see: A Thanks — we got your response. page right after you submit.
Your Keap form is protected
- Bots are stopped before they reach Keap.
- Real leads arrive exactly as before, with no extra steps for them.
- Every block is logged in your SpamKill dashboard.
Something not working?
Find what you're seeing.
My Keap automation didn't start
An automation that starts on a Keap Web Form submitted goal won't fire, because the lead now arrives through SpamKill. Start it on a Tag applied goal with the tag you added in step 4.
Leads show in SpamKill but not in Keap
Open the form's Leads tab and filter by Failed. Then check the Deliver tab still shows Keap as Connected. If it doesn't, click Connect again and pick the same Keap app.
A field is missing from the Keap contact
It's probably set to Not sent on the Deliver tab. Pick a Keap field for it, click Save mapping, then Update & re-publish.
Changed your mind? Undo in under a minute
- Open the page in your website editor.
- Delete the SpamKill code and paste your original Keap form code back.
- Save and publish the page. Your form is back to how it was.
- Optional: in the Form Builder, click Disconnect on the form's Deliver tab.
Thanks! Glad your form is protected.
Sorry about that. Tell us which step tripped you up and we'll fix the guide.
Stuck? We'll set it up with you.
Free setup help for every plan. Send us a message and we'll walk through your Keap form with you.
Get setup help