Field SOP
Field SOP

Lead Auto-Collect + Scoring + Notify Workflow

n8n lead auto-collect + scoring + notify workflow: multi-channel leads -> dedupe+enrich -> LLM scoring (intent/budget/timing) -> high-score push to sales + CRM. With .json template + scoring prompt + 4 pitfalls (incl. personal-data compliance).

Published July 28, 20263 min read
<!-- workflow-lead-crm-automation | resource | Lead Auto-Collect + Scoring + Notify Workflow -->

Leads scattered across forms, WeChat, and email—sales reps triaging each one by hand is slow and leaky. This n8n workflow unifies multi-channel leads, auto-dedupes and enriches company info, scores them with an LLM by intent / budget / timing, then pushes high-score leads to Feishu/DingTalk/Slack while logging to CRM. B2B sales teams benefit most-the more leads, the more time saved; import, configure, run, and a single lead can go from submission to a rep's hands in under a minute.

Workflow Chain

Multi-channel intake (form / WeChat / email / webhook) -> dedupe (phone + email hash) -> company enrichment (HTTP lookup) -> LLM scoring (intent / budget / timing) -> branch: high-score push to sales + CRM log; low-score to nurture pool.

Download Template

Setup Steps

  1. Import: n8n -> Workflows -> Import from File, pick lead-crm-automation.json
  2. Webhook node: copy Production URL, hook it to your form backend / WeChat callback / email forwarding rule
  3. Dedupe node: use Postgres or Redis to query lead_key (phone or email hash); skip if it already exists
  4. Company enrichment node: HTTP Request to a business registry (Clearbit / Companies House), pull name, size, industry
  5. LLM scoring node: fill Kimi / DeepSeek key, 8k context is enough; prompt below
  6. If branch node: score >= 7 push to sales, < 7 to nurture pool
  7. Push node: Feishu / DingTalk / Slack bot webhook; template carries lead summary + scoring reason
  8. CRM node: HTTP Request writes to your CRM (HubSpot / Salesforce / Feishu Bitable all work)
  9. Test run: manually POST a test lead, check whether the push lands in the group + CRM entry is created

Companion Prompt (LLM Scoring)

Prompt
You are a senior sales ops analyst. Score this lead 0-10 with a one-sentence reason.
Dimensions:
- Intent (0-4): active submission, depth of questions
- Budget (0-3): inferred from company size / industry / title
- Timing (0-3): time signals like "now", "this week", "Q3"
Output JSON only: {"score": number, "reason": "one sentence", "tags": ["high intent","weak budget"]}
Lead info: {{lead_payload}}
Compliance: this field contains personal data—scoring only, do not use for training or external sharing.

Pitfalls

  • Personal data compliance: collecting phone/email needs explicit user consent (form checkbox + privacy policy link). Don't ship scoring data to third-party LLM training; mask before calling external APIs
  • Don't dedupe on email alone: phone is the primary key in China; email-only dedupe misses a lot. Hash before storing to avoid plaintext at rest
  • LLM scores drift: don't drop low-score leads outright—route to a nurture pool and re-touch periodically. Tune the threshold per business; B2B SaaS usually starts at 7
  • Enrichment rate limits: most business-registry APIs bill per call; cache in Redis (7 days) to avoid re-querying the same company

The template is the skeleton; webhook endpoints and LLM API keys are yours. After it runs, add two nodes: high-score leads auto-create a day-1 follow-up task in CRM and assign by region; the nurture pool gets re-scored weekly, and any intent upgrade pushes to sales. Backtest the scoring model against closed-won deals once a month to catch drift.

References

This article is AI-assisted and human-edited. Last updated: 2026-07-28

Related