# Filter spam from Netlify forms before it reaches your CRM

> Every new form submission gets judged real or junk, sorted by intent, and only genuine sales leads land in HubSpot with an email brief waiting for your team.

- Workflow type: agent
- Services: Netlify, HubSpot, Gmail
- Categories: Sales
- Published: 2026-08-07

## What it does

- Watches your marketing site for new form submissions and reads every field the moment one arrives.
- Judges each submission as genuine or spam by weighing the message itself, the sender's email domain, and whether the body is generic link bait.
- Sorts genuine submissions into sales, support, careers, or partnership, and files sales enquiries in HubSpot as a new lead with the original message attached.
- Emails your team a short brief on every genuine submission covering who got in touch, what they want, how urgent it looks, and a suggested first reply. Spam is dropped silently.

## What you'll need

- A Netlify account with forms enabled on your marketing site
- A HubSpot login that can create contacts
- A Gmail account to send the team briefs from
- The email address of the team that should receive those briefs

## Prompt

Poll Netlify for the new_form_submission event on my marketing site. Each time a submission comes in, read every field that was filled out, including the sender's name, their email address, their company if it is present, and the full message body. You are the first filter on inbound form submissions, and your job is to make sure junk never reaches my CRM.

First, judge whether the submission is genuine or spam. Weigh three things together. One, the content of the message itself, and whether it reads like a real person describing a real need rather than a mass blast. Two, the sender's email domain, and whether it looks disposable, throwaway, or unrelated to any company they claim to represent. Three, whether the body is generic link bait, such as an SEO or backlink offer, a crypto or investment pitch, or boilerplate outreach with pasted URLs. Use your own judgement on the whole picture rather than matching a fixed keyword list.

If you judge a submission to be spam, discard it. Create no CRM record and send no email. Do not ask me to confirm.

For every submission you judge genuine, classify its intent as one of sales, support, careers, or partnership.

When the intent is sales, use the HubSpot Create Contact operation to open a record for that person. Fill in the email address, the first and last name, and the company from the submission. Set the lifecycle stage to lead. Write the original message text into the contact properties so that the rep who opens the record can see exactly what the person asked for in their own words, without having to go and find the form submission.

For every genuine submission, whatever the intent, use the Gmail Send a Message operation to email the owning team. The email should cover who submitted the form and what company they are from, what they are asking for, how urgent it looks based on the language they used, and a suggested first reply that the rep can edit and send. Make the suggested reply specific to what this person actually wrote, not a generic template, and keep it short enough that editing it is faster than starting from scratch. Put the intent classification in the subject line so the team can scan their inbox.

If a submission arrives without the complete set of fields, call the Netlify List Form Submissions operation to pull the full record for that form before you make your judgement.

## How to customize

- Tighten or loosen what counts as spam, for example always trusting submissions from company domains you already recognize.
- Send each intent to a different inbox so sales, support, careers, and partnership briefs reach the right people.
- Change which details get written onto the HubSpot record, or start filing partnership and support enquiries in the CRM too.

## FAQ

### Do I need a paid spam filtering service for this?

No. The judgement is made by actually reading the submission, so there is no separate spam scoring subscription to buy or tune. Netlify's own filtering already removes the obvious junk, and this adds a second layer that catches the plausible looking submissions that slip through.

### What happens to a submission that gets judged wrong?

Anything judged genuine always emails your team, so a misread spam message costs you one email you can ignore. Anything judged spam is discarded with no CRM record and no email, so if you want to double check, the submissions are still sitting in your Netlify dashboard.

### Will this work on a free HubSpot account?

Yes. Creating a contact, setting the lifecycle stage to lead, and saving the original message onto the record are all available on HubSpot's free tier.

### Can I use a different CRM instead of HubSpot?

Yes. Salesforce and Pipedrive both work the same way for creating an inbound lead. Swap the CRM step and keep the rest of the workflow as it is.

### Does every submission end up in the CRM?

No, and that is the point. Only genuine submissions with sales intent create a contact. Support, careers, and partnership enquiries still get an email brief so nothing is lost, but they do not clutter your pipeline.

Use this prompt in General Input: https://www.generalinput.com/prompts/filter-spam-from-netlify-forms-before-it-reaches-your-crm