Inbound forms collect a mix of buyers, students, job seekers, vendors and bots. The email address is the cheapest qualification signal you have, and it’s available the moment the form is submitted.
Signals that help qualify
| Signal | Field | Reads as |
|---|---|---|
| Company domain | category: "business" |
A company, even if it’s small |
| Personal provider | category: "personal" |
An individual, or a buyer using a personal address |
| Disposable / relay | is_disposable, is_relay |
Low intent, or someone avoiding follow-up |
| Education / government | category |
Often a different sales motion |
| Role account | is_role_account |
Shared inbox: real company, unknown person |
| Google Workspace / Microsoft 365 | workspace.*.detected |
Company size and stack hints; integration fit |
| Federated sign-in (Okta, ADFS…) | workspace.microsoft_365.auth, identity_provider |
Usually a more mature IT setup |
| New or parked domain | is_new_domain, reason parked_domain |
Brand-new company, or something less legitimate |
These are hints, not firmographics. A two-person startup on Microsoft 365 looks similar to a large one. Combine them with your own data (company name, website, form answers).
A simple scoring sketch
function leadScore(v) {
if (v.recommendation === 'block') return 0;
let score = 50;
if (v.category === 'business') score += 20;
if (v.is_role_account) score -= 10;
if (v.workspace?.microsoft_365?.detected || v.workspace?.google_workspace?.detected) score += 10;
if (v.workspace?.microsoft_365?.auth === 'federated') score += 5;
if (v.is_new_domain) score -= 15;
return Math.max(0, Math.min(100, score));
}
Tune the weights against your own closed-won data; the point is to make the first sort automatic.
Where to run it
- On form submission: HubSpot forms, Typeform, Webflow
- In automation: Zapier, Make, n8n
- In your backend: code examples
Check the domain instead of the address when you only need the company ({"domain": "acme.io"}); it works the same and keeps less personal data in flight.
Routing ideas
allow+ score ≥ 70 → assign an owner immediately, notify in Slackallow+ lower score → nurture sequence with a meeting linkreview→ quick human lookblock→ newsletter or self-serve resources, not the sales queue
Related: Sales routing by workspace · CRM hygiene