inbound-lead-enrichment

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Inbound Lead Enrichment

入站线索数据补全与增强

Takes inbound leads with incomplete data and fills in the gaps. Researches the company, identifies the person's role, finds other stakeholders at the company, and checks for existing relationships in CRM. Turns a bare email address into a full lead profile.
针对数据不完整的入站线索补全缺失信息。调研线索所属公司、识别联系人职位、查找公司内其他关键决策者,并检查CRM系统中的现有关联关系。仅通过一个邮箱地址即可生成完整的客户线索档案。

When to Auto-Load

自动加载场景

Load this composite when:
  • User says "enrich these leads", "fill in the missing data", "research these inbound leads"
  • inbound-lead-qualification
    flags leads as
    insufficient_data
  • inbound-lead-triage
    detects leads with missing company/title fields
  • User has a list of emails or partial lead data and needs complete profiles
在以下场景中加载此复合工具:
  • 用户提出“补全这些线索数据”、“填充缺失信息”、“调研这些入站线索”等需求
  • inbound-lead-qualification
    标记线索为
    insufficient_data
    (数据不足)
  • inbound-lead-triage
    检测到线索缺失公司/职位字段
  • 用户拥有邮箱列表或部分线索数据,需要生成完整档案

Architecture

架构

[Raw Leads] → Step 1: Assess Gaps → Step 2: Company Research → Step 3: Person Research → Step 4: Stakeholder Discovery → Step 5: Relationship Check → Step 6: Compile & Output
                   ↓                      ↓                         ↓                          ↓                             ↓                          ↓
            Gap inventory        Company profiles         Person profiles            Buying committee          CRM/pipeline matches       Enriched lead records

[原始线索] → 步骤1:评估数据缺口 → 步骤2:企业调研 → 步骤3:联系人调研 → 步骤4:关键决策者挖掘 → 步骤5:关联关系检查 → 步骤6:整合与输出
                   ↓                      ↓                         ↓                          ↓                             ↓                          ↓
            缺口清单        企业档案         联系人档案            采购决策团队          CRM/销售管道匹配       增强版线索记录

Step 0: Configuration (Once Per Client)

步骤0:配置(每位客户仅需一次)

On first run, establish enrichment tool preferences. Save to
clients/<client-name>/config/lead-enrichment.json
.
json
{
  "enrichment_tools": {
    "company_research": {
      "primary": "web-search | Apollo | Crunchbase | none",
      "secondary": "web-search"
    },
    "person_research": {
      "primary": "Apollo | LinkedIn scraper (Apify) | web-search | none",
      "secondary": "web-search"
    },
    "stakeholder_finding": {
      "primary": "Apollo | LinkedIn Sales Nav export | company-contact-finder | none",
      "secondary": "web-search"
    }
  },
  "crm_source": {
    "tool": "Supabase | HubSpot | Salesforce | CSV | none",
    "access_method": ""
  },
  "buyer_personas": [],
  "enrichment_depth": {
    "tier_1_leads": "deep",
    "tier_2_leads": "deep",
    "tier_3_leads": "standard",
    "tier_4_leads": "minimal",
    "untiered_leads": "standard"
  },
  "cost_controls": {
    "max_apify_credits_per_run": null,
    "max_apollo_credits_per_run": null,
    "skip_paid_enrichment_for_tier_4": true
  }
}
On subsequent runs: Load config silently.

首次运行时,设置数据增强工具偏好,并保存至
clients/<client-name>/config/lead-enrichment.json
json
{
  "enrichment_tools": {
    "company_research": {
      "primary": "web-search | Apollo | Crunchbase | none",
      "secondary": "web-search"
    },
    "person_research": {
      "primary": "Apollo | LinkedIn scraper (Apify) | web-search | none",
      "secondary": "web-search"
    },
    "stakeholder_finding": {
      "primary": "Apollo | LinkedIn Sales Nav export | company-contact-finder | none",
      "secondary": "web-search"
    }
  },
  "crm_source": {
    "tool": "Supabase | HubSpot | Salesforce | CSV | none",
    "access_method": ""
  },
  "buyer_personas": [],
  "enrichment_depth": {
    "tier_1_leads": "deep",
    "tier_2_leads": "deep",
    "tier_3_leads": "standard",
    "tier_4_leads": "minimal",
    "untiered_leads": "standard"
  },
  "cost_controls": {
    "max_apify_credits_per_run": null,
    "max_apollo_credits_per_run": null,
    "skip_paid_enrichment_for_tier_4": true
  }
}
后续运行时: 静默加载配置。

Step 1: Assess Data Gaps

步骤1:评估数据缺口

Process

流程

For each lead, inventory what's known vs. unknown:
Required fields (must fill):
  • company_name
    — What company do they work for?
  • company_domain
    — Company website domain
  • person_name
    — Full name
  • person_title
    — Current job title
  • person_email
    — Contact email (usually already have this from inbound)
Valuable fields (fill if possible):
  • company_size
    — Employee count or range
  • company_industry
    — Industry classification
  • company_stage
    — Funding stage or maturity
  • company_hq
    — Headquarters location
  • company_description
    — One sentence about what they do
  • person_seniority
    — IC, Manager, Director, VP, C-Level, Founder
  • person_department
    — Engineering, Sales, Marketing, etc.
  • person_linkedin
    — LinkedIn profile URL
  • person_tenure
    — How long at current company
Bonus fields (nice to have):
  • company_tech_stack
    — Known technologies used
  • company_recent_news
    — Any recent events (funding, launches, hires)
  • person_background
    — Previous companies, education
  • person_social_activity
    — Recent posts or engagement topics
针对每条线索,梳理已知信息与缺失信息:
必填字段(必须补全):
  • company_name
    — 所属公司名称
  • company_domain
    — 公司官网域名
  • person_name
    — 联系人全名
  • person_title
    — 当前职位
  • person_email
    — 联系邮箱(通常从入站渠道已获取)
高价值字段(尽可能补全):
  • company_size
    — 员工数量或范围
  • company_industry
    — 行业分类
  • company_stage
    — 融资阶段或成熟度
  • company_hq
    — 总部所在地
  • company_description
    — 公司业务一句话介绍
  • person_seniority
    — 普通员工、经理、总监、副总裁、高管、创始人
  • person_department
    — 技术部、销售部、市场部等
  • person_linkedin
    — LinkedIn个人主页链接
  • person_tenure
    — 当前公司任职时长
附加字段(如有则补全):
  • company_tech_stack
    — 公司使用的已知技术栈
  • company_recent_news
    — 近期动态(融资、产品发布、招聘等)
  • person_background
    — 过往任职公司、教育经历
  • person_social_activity
    — 近期社交动态或参与话题

Gap Classification

缺口分级

For each lead, classify the enrichment effort needed:
Gap LevelMissingEnrichment NeededCost
Minimal1-2 valuable fieldsQuick web searchFree
StandardCompany or title missingWeb search + possible API lookupLow
DeepMultiple required fields missingMulti-source researchMedium
Email-onlyOnly have an email addressFull research from scratchHigh
针对每条线索,分级确定所需的数据增强力度:
缺口等级缺失内容所需增强力度成本
基础级1-2个高价值字段快速网页搜索免费
标准级缺失公司或职位信息网页搜索+可选API查询
深度级多个必填字段缺失多数据源调研
仅邮箱仅提供邮箱地址从零开始全面调研

Output

输出

  • Gap inventory table showing each lead and what's missing
  • Recommended enrichment depth per lead (based on gap level AND urgency tier if available)
  • Cost estimate if paid tools will be used
  • 缺口清单表格,展示每条线索的缺失信息
  • 针对每条线索推荐的增强深度(基于缺口等级及紧急程度)
  • 若使用付费工具,提供成本预估

Human Checkpoint

人工确认环节

"Here's what's missing across your leads. [X] need deep enrichment, [Y] need standard, [Z] just need a quick lookup. Estimated cost: [amount]. Proceed?"

“以下是线索的缺失信息统计:[X]条线索需要深度增强,[Y]条需要标准增强,[Z]条仅需快速查询。预估成本:[金额]。是否继续?”

Step 2: Company Research

步骤2:企业调研

Process

流程

For each unique company in the lead list (deduplicate — don't research the same company twice for multiple leads):
From email domain (if company name is missing):
  1. Extract domain from email (e.g.,
    jane@acme.com
    acme.com
    )
  2. Skip personal email domains (gmail, yahoo, hotmail, outlook, etc.)
  3. Look up the domain → company name, description
Company profile research:
FieldPrimary SourceFallback Source
Company nameDomain lookupWeb search
DescriptionCompany website (homepage, about page)Crunchbase, LinkedIn company page
Employee countApollo, LinkedIn company pageCrunchbase, web search
IndustryLinkedIn company page, CrunchbaseInfer from website content
Stage/FundingCrunchbase, news articlesApollo, web search
HQ LocationLinkedIn company page, websiteCrunchbase
Tech stackJob postings, BuiltWithWeb search
Recent newsWeb search (last 90 days)Twitter/social mentions
Research depth by config:
  • Deep: All fields, multiple sources, verify across sources
  • Standard: Required + valuable fields, primary source only
  • Minimal: Company name + description + size only
针对线索列表中的每家独立公司(去重——同一家公司无需为多条线索重复调研):
通过邮箱域名调研(若缺失公司名称):
  1. 从邮箱中提取域名(例如:
    jane@acme.com
    acme.com
  2. 跳过个人邮箱域名(gmail、yahoo、hotmail、outlook等)
  3. 查询域名对应的公司名称与业务介绍
企业档案调研:
字段主要数据源备用数据源
公司名称域名查询网页搜索
业务介绍公司官网(首页、关于我们页面)Crunchbase、LinkedIn企业主页
员工数量Apollo、LinkedIn企业主页Crunchbase、网页搜索
所属行业LinkedIn企业主页、Crunchbase从官网内容推断
发展阶段/融资情况Crunchbase、新闻报道Apollo、网页搜索
总部所在地LinkedIn企业主页、官网Crunchbase
技术栈招聘信息、BuiltWith网页搜索
近期动态网页搜索(近90天)Twitter/社交平台提及内容
按配置确定调研深度:
  • 深度增强: 覆盖所有字段,多数据源交叉验证
  • 标准增强: 仅覆盖必填+高价值字段,使用主要数据源
  • 基础增强: 仅覆盖公司名称+业务介绍+员工规模

Output

输出

Each company gets a
company_profile
block:
{
  "company_name": "",
  "company_domain": "",
  "company_description": "",
  "employee_count": "",
  "employee_range": "",
  "industry": "",
  "sub_industry": "",
  "stage": "",
  "last_funding": "",
  "hq_location": "",
  "tech_stack": [],
  "recent_news": [],
  "research_sources": [],
  "confidence": "high | medium | low"
}
每家公司生成一个
company_profile
模块:
{
  "company_name": "",
  "company_domain": "",
  "company_description": "",
  "employee_count": "",
  "employee_range": "",
  "industry": "",
  "sub_industry": "",
  "stage": "",
  "last_funding": "",
  "hq_location": "",
  "tech_stack": [],
  "recent_news": [],
  "research_sources": [],
  "confidence": "high | medium | low"
}

Handling Personal Email Domains

个人邮箱域名处理

If the lead used a personal email (gmail, etc.):
  1. Check if name + any other available data can identify the company (e.g., form field, chat message)
  2. If company is mentioned in their form submission or chat, use that
  3. If truly unknown, flag as
    company_unidentified
    — still proceed with person research if name is available

若线索使用个人邮箱(gmail等):
  1. 检查是否可通过姓名+其他可用数据识别公司(例如:表单字段、聊天记录)
  2. 若表单提交或聊天内容中提及公司,则使用该信息
  3. 若确实无法识别,标记为
    company_unidentified
    ——若有姓名信息,仍继续进行联系人调研

Step 3: Person Research

步骤3:联系人调研

Process

流程

For each lead, build a person profile:
From name + company (if title is missing):
  1. Search LinkedIn for person at company (via configured tool or web search)
  2. Cross-reference with Apollo or other contact databases
  3. If multiple matches, use email domain to disambiguate
Person profile research:
FieldPrimary SourceFallback Source
Full nameInput dataLinkedIn profile
Current titleLinkedIn profile, ApolloWeb search
Seniority levelInfer from titleLinkedIn profile
DepartmentInfer from titleLinkedIn profile
Tenure at companyLinkedIn profileApollo
Previous companiesLinkedIn profileWeb search
EducationLinkedIn profileSkip
LinkedIn URLApollo, web searchSkip
LinkedIn headlineLinkedIn profileSkip
Recent activityLinkedIn posts (if scraper configured)Skip
Seniority inference rules:
  • Titles containing: Intern, Associate, Coordinator, Specialist →
    IC_junior
  • Titles containing: Analyst, Engineer, Designer, Developer (no "Senior/Lead/Staff") →
    IC_mid
  • Titles containing: Senior, Lead, Staff, Principal →
    IC_senior
  • Titles containing: Manager, Team Lead →
    Manager
  • Titles containing: Director, Head of →
    Director
  • Titles containing: VP, Vice President, SVP, EVP →
    VP
  • Titles containing: Chief, C-level abbreviations (CTO, CMO, CRO, CFO), President →
    C_Level
  • Titles containing: Founder, Co-founder, Owner →
    Founder
Adjust for company size:
  • At companies <20 employees: inflate seniority one level (a "Manager" has Director-level scope)
  • At companies >5000 employees: deflate seniority one level (a "Director" may have Manager-level autonomy)
针对每条线索,生成联系人档案:
通过姓名+公司调研(若缺失职位):
  1. 通过配置工具或网页搜索,在LinkedIn查找该公司下的对应联系人
  2. 与Apollo或其他联系人数据库交叉验证
  3. 若存在多个匹配结果,通过邮箱域名区分
联系人档案调研:
字段主要数据源备用数据源
全名输入数据LinkedIn个人主页
当前职位LinkedIn个人主页、Apollo网页搜索
职级从职位推断LinkedIn个人主页
所属部门从职位推断LinkedIn个人主页
当前公司任职时长LinkedIn个人主页Apollo
过往任职公司LinkedIn个人主页网页搜索
教育经历LinkedIn个人主页跳过
LinkedIn链接Apollo、网页搜索跳过
LinkedIn简介LinkedIn个人主页跳过
近期动态LinkedIn帖子(若配置了爬虫工具)跳过
职级推断规则:
  • 职位包含:Intern(实习生)、Associate(助理)、Coordinator(协调员)、Specialist(专员)→
    IC_junior
    (初级员工)
  • 职位包含:Analyst(分析师)、Engineer(工程师)、Designer(设计师)、Developer(开发人员)(无“Senior/Lead/Staff”前缀)→
    IC_mid
    (中级员工)
  • 职位包含:Senior(高级)、Lead(主管)、Staff(资深)、Principal(首席)→
    IC_senior
    (高级员工)
  • 职位包含:Manager(经理)、Team Lead(团队主管)→
    Manager
    (经理)
  • 职位包含:Director(总监)、Head of(负责人)→
    Director
    (总监)
  • 职位包含:VP、Vice President(副总裁)、SVP(高级副总裁)、EVP(执行副总裁)→
    VP
    (副总裁)
  • 职位包含:Chief、高管头衔缩写(CTO、CMO、CRO、CFO)、President(总裁)→
    C_Level
    (高管)
  • 职位包含:Founder(创始人)、Co-founder(联合创始人)、Owner(所有者)→
    Founder
    (创始人)
根据公司规模调整职级:
  • 员工数<20人的公司:职级上调一级(“经理”相当于“总监”权限)
  • 员工数>5000人的公司:职级下调一级(“总监”可能仅拥有“经理”级自主权)

Output

输出

Each lead gets a
person_profile
block:
{
  "full_name": "",
  "current_title": "",
  "seniority_level": "",
  "department": "",
  "tenure_months": null,
  "previous_companies": [],
  "education": "",
  "linkedin_url": "",
  "linkedin_headline": "",
  "recent_activity_summary": "",
  "research_sources": [],
  "confidence": "high | medium | low"
}

每条线索生成一个
person_profile
模块:
{
  "full_name": "",
  "current_title": "",
  "seniority_level": "",
  "department": "",
  "tenure_months": null,
  "previous_companies": [],
  "education": "",
  "linkedin_url": "",
  "linkedin_headline": "",
  "recent_activity_summary": "",
  "research_sources": [],
  "confidence": "high | medium | low"
}

Step 4: Stakeholder Discovery

步骤4:关键决策者挖掘

Process

流程

For each company in the lead list, identify other relevant people — the buying committee.
Why this matters:
  • Inbound leads are rarely the sole decision-maker
  • Finding the rest of the buying committee early accelerates the deal
  • Multi-threading (engaging multiple people at a company) dramatically improves win rates
Who to find (based on buyer personas from config):
  1. Economic buyer — Person who signs the check. Usually VP+ or C-level in the relevant department.
  2. Champion — Person most likely to push for adoption internally. Usually a senior IC or Director who feels the pain.
  3. Technical evaluator — Person who will assess the product's technical fit. Usually engineering or ops.
  4. End user — Person who will use the product daily. Their buy-in prevents post-sale churn.
Process per company:
  1. Using the buyer personas, determine which roles to search for
  2. Search via configured tool (Apollo, LinkedIn, company-contact-finder)
  3. For each stakeholder found, capture: name, title, seniority, LinkedIn URL, email (if available)
  4. Note the relationship to the inbound lead: same team? Same department? Different function?
Depth control:
  • Deep enrichment (Tier 1-2 leads): Find all 4 stakeholder types. Research each.
  • Standard enrichment (Tier 3 leads): Find economic buyer + champion only.
  • Minimal enrichment (Tier 4 / untiered): Skip stakeholder discovery.
针对线索列表中的每家公司,识别其他相关人员——即采购决策团队。
重要性:
  • 入站线索很少是唯一的决策者
  • 提前找到完整的采购决策团队可加速成单
  • 多线程触达(同时对接公司内多人)可显著提升赢单率
需挖掘的角色(基于配置的买家画像):
  1. 经济决策者 — 最终签字付款的人。通常是相关部门的副总裁及以上级别。
  2. 内部支持者 — 最可能在内部推动产品落地的人。通常是感受到业务痛点的资深员工或总监。
  3. 技术评估者 — 评估产品技术适配性的人。通常是技术部或运维部人员。
  4. 终端用户 — 日常使用产品的人。他们的认可可降低售后流失率。
每家公司的调研流程:
  1. 根据买家画像确定需搜索的角色
  2. 通过配置工具(Apollo、LinkedIn、company-contact-finder)搜索
  3. 针对找到的每位关键决策者,记录:姓名、职位、职级、LinkedIn链接、邮箱(若有)
  4. 标记与入站线索的关系:同团队?同部门?不同职能?
深度控制:
  • 深度增强(1-2级线索):挖掘全部4类角色,并完成每位的调研
  • 标准增强(3级线索):仅挖掘经济决策者+内部支持者
  • 基础增强(4级/未分级线索):跳过关键决策者挖掘

Output

输出

Each company gets a
stakeholder_map
:
{
  "company": "",
  "inbound_lead": {
    "name": "",
    "title": "",
    "role_in_deal": "economic_buyer | champion | evaluator | user | unknown"
  },
  "stakeholders_found": [
    {
      "name": "",
      "title": "",
      "seniority": "",
      "linkedin_url": "",
      "email": "",
      "role_in_deal": "",
      "relationship_to_lead": "",
      "confidence": "high | medium | low"
    }
  ],
  "buying_committee_completeness": "full | partial | minimal",
  "recommended_multi_thread": ""
}
每家公司生成一个
stakeholder_map
{
  "company": "",
  "inbound_lead": {
    "name": "",
    "title": "",
    "role_in_deal": "economic_buyer | champion | evaluator | user | unknown"
  },
  "stakeholders_found": [
    {
      "name": "",
      "title": "",
      "seniority": "",
      "linkedin_url": "",
      "email": "",
      "role_in_deal": "",
      "relationship_to_lead": "",
      "confidence": "high | medium | low"
    }
  ],
  "buying_committee_completeness": "full | partial | minimal",
  "recommended_multi_thread": ""
}

Stakeholder Prioritization

关键决策者优先级

If the inbound lead IS the economic buyer → stakeholders are supporting context If the inbound lead is a user/evaluator → finding the economic buyer is critical If the inbound lead is unknown → identifying their role determines the multi-threading strategy

若入站线索本身是经济决策者 → 其他关键决策者作为辅助参考 若入站线索是用户/评估者 → 找到经济决策者是核心任务 若入站线索角色未知 → 先识别其角色,再确定多线程触达策略

Step 5: Relationship Check

步骤5:关联关系检查

Process

流程

For each lead AND each discovered stakeholder, check existing systems for prior relationships:
Check 1 — CRM / Supabase
people
table:
  • Does this person already exist in our system?
  • If yes: what's their current status? (active lead, contacted, nurture, customer, churned)
  • If yes: who owns the relationship?
Check 2 — Outreach history (
outreach_log
):
  • Have we emailed/messaged this person before?
  • If yes: when, what channel, what was the outcome?
  • Critical: prevent the "we cold-emailed you last week and you ignored us, now you came inbound" collision
Check 3 — Company-level pipeline (
companies
table or CRM):
  • Is there an active deal with this company?
  • If yes: at what stage? Who's the deal owner?
  • An inbound lead at a company with an active deal is a HUGE signal — flag it prominently
Check 4 — Signal history (
signals
table):
  • Has this company appeared in any signal scans?
  • If yes: which signals? Were they acted on?
Check 5 — Mutual connections (if data available):
  • Does anyone on our team know someone at this company?
  • If yes: note the warm intro path
针对每条线索及每个挖掘到的关键决策者,检查现有系统中的过往关联关系:
检查1 — CRM / Supabase
people
表:
  • 该联系人是否已存在于系统中?
  • 若是:当前状态是什么?(活跃线索、已联系、培育中、客户、流失)
  • 若是:谁负责维护该关系?
检查2 — 触达历史(
outreach_log
):
  • 我们是否曾通过邮件/消息联系过该联系人?
  • 若是:联系时间、渠道、结果如何?
  • 核心:避免出现“上周我们给你发过冷邮件未得到回复,现在你主动进线”的尴尬场景
检查3 — 公司级销售管道(
companies
表或CRM):
  • 该公司是否有活跃的销售机会?
  • 若是:处于哪个阶段?谁负责该机会?
  • 若有活跃销售机会的公司有入站线索,这是极强的信号——需重点标记
检查4 — 信号历史(
signals
表):
  • 该公司是否曾出现在信号扫描中?
  • 若是:涉及哪些信号?是否已跟进?
检查5 — 共同联系人(若有数据):
  • 我们团队中是否有人认识该公司的员工?
  • 若是:记录可进行转介绍的路径

Output

输出

Each lead gets a
relationship_context
block:
{
  "person_in_crm": true/false,
  "person_crm_status": "",
  "person_outreach_history": [
    {
      "date": "",
      "channel": "",
      "campaign": "",
      "outcome": ""
    }
  ],
  "company_in_pipeline": true/false,
  "company_deal_stage": "",
  "company_deal_owner": "",
  "company_signal_history": [],
  "mutual_connections": [],
  "relationship_summary": ""
}

每条线索生成一个
relationship_context
模块:
{
  "person_in_crm": true/false,
  "person_crm_status": "",
  "person_outreach_history": [
    {
      "date": "",
      "channel": "",
      "campaign": "",
      "outcome": ""
    }
  ],
  "company_in_pipeline": true/false,
  "company_deal_stage": "",
  "company_deal_owner": "",
  "company_signal_history": [],
  "mutual_connections": [],
  "relationship_summary": ""
}

Step 6: Compile & Output

步骤6:整合与输出

Enriched Lead Record

增强版线索记录

Merge all research into a single enriched record per lead:
{
  "original_data": {},
  "company_profile": {},
  "person_profile": {},
  "stakeholder_map": {},
  "relationship_context": {},
  "enrichment_metadata": {
    "enrichment_depth": "deep | standard | minimal",
    "fields_filled": X,
    "fields_still_missing": [],
    "sources_used": [],
    "confidence_overall": "high | medium | low",
    "enrichment_date": "",
    "cost_incurred": ""
  }
}
将所有调研数据整合为每条线索的单独增强记录:
{
  "original_data": {},
  "company_profile": {},
  "person_profile": {},
  "stakeholder_map": {},
  "relationship_context": {},
  "enrichment_metadata": {
    "enrichment_depth": "deep | standard | minimal",
    "fields_filled": X,
    "fields_still_missing": [],
    "sources_used": [],
    "confidence_overall": "high | medium | low",
    "enrichment_date": "",
    "cost_incurred": ""
  }
}

Output Formats

输出格式

Primary: Enriched CSV
Produce a CSV that extends the original lead data with all enriched fields:
Original Fields+ Company Fields+ Person Fields+ Stakeholder Fields+ Relationship Fields+ Metadata
All input columnscompany_description, employee_count, industry, stage, hq, tech_stack, recent_newscurrent_title, seniority, department, tenure, linkedin_url, headlinestakeholder_1_name, stakeholder_1_title, stakeholder_1_role, ... (up to 4)in_crm, crm_status, in_pipeline, deal_stage, outreach_history_summaryenrichment_depth, confidence, fields_missing, sources_used
Save to:
clients/<client-name>/leads/inbound-enriched-[date].csv
Secondary: Enrichment Report
markdown
undefined
主要格式:增强版CSV
生成CSV文件,在原始线索数据基础上添加所有增强字段:
原始字段+ 企业字段+ 联系人字段+ 关键决策者字段+ 关联关系字段+ 元数据
所有输入列company_description, employee_count, industry, stage, hq, tech_stack, recent_newscurrent_title, seniority, department, tenure, linkedin_url, headlinestakeholder_1_name, stakeholder_1_title, stakeholder_1_role, ...(最多4个)in_crm, crm_status, in_pipeline, deal_stage, outreach_history_summaryenrichment_depth, confidence, fields_missing, sources_used
保存路径:
clients/<client-name>/leads/inbound-enriched-[date].csv
次要格式:增强报告
markdown
undefined

Lead Enrichment Report: [Date]

线索增强报告:[日期]

Summary

摘要

  • Total leads enriched: X
  • Deep enrichment: X leads (Tier 1-2)
  • Standard enrichment: X leads (Tier 3)
  • Minimal enrichment: X leads (Tier 4)
  • 增强线索总数: X
  • 深度增强: X条(1-2级线索)
  • 标准增强: X条(3级线索)
  • 基础增强: X条(4级线索)

Data Quality

数据质量

  • Fully enriched (all required + valuable fields): X leads
  • Mostly enriched (all required, some valuable): X leads
  • Partially enriched (some required fields still missing): X leads
  • Could not enrich (insufficient starting data): X leads
  • 完全增强(所有必填+高价值字段补全):X条线索
  • 基本增强(所有必填字段补全,部分高价值字段缺失):X条线索
  • 部分增强(部分必填字段仍缺失):X条线索
  • 无法增强(初始数据不足):X条线索

Company Research

企业调研

  • Unique companies researched: X
  • Companies already in CRM: X
  • Companies with active deals: X (flag for deal owner)
  • Companies with signal history: X
  • 调研独立公司数量: X
  • 已在CRM中的公司: X
  • 有活跃销售机会的公司: X(标记给销售机会负责人)
  • 有信号历史的公司: X

Stakeholder Discovery

关键决策者挖掘

  • Total stakeholders found: X across Y companies
  • Economic buyers identified: X
  • Champions identified: X
  • Full buying committees mapped: X companies
  • 找到的关键决策者总数: X(覆盖Y家公司)
  • 识别的经济决策者: X
  • 识别的内部支持者: X
  • 完整采购决策团队已映射: X家公司

Relationship Flags

关联关系标记

  • Leads already in CRM: X (update status, don't create duplicates)
  • Previously contacted leads: X (check outreach history before re-engaging)
  • Companies with active deals: X (coordinate with deal owner)
  • Warm intro paths found: X
  • 已在CRM中的线索: X(更新状态,避免重复创建)
  • 曾触达过的线索: X(再次触达前检查历史记录)
  • 有活跃销售机会的公司: X(与销售机会负责人协同)
  • 找到转介绍路径: X

Cost

成本

  • Enrichment tool credits used: [breakdown by tool]
  • Cost per lead: [average]
  • 增强工具消耗额度: [按工具细分]
  • 单线索平均成本: [平均值]

CSV saved to: [path]

CSV保存路径:[路径]


---

---

Handling Edge Cases

边缘场景处理

Lead with only an email, nothing else:
  1. Extract domain → look up company
  2. Search "[name] [company]" on LinkedIn/web
  3. If still can't identify: flag as
    enrichment_failed
    with reason, recommend manual lookup
  4. Don't waste paid API credits on truly unidentifiable leads — web search first
Same company appears multiple times (multiple inbound leads):
  • Research the company ONCE, apply to all leads
  • Stakeholder discovery runs once per company, not per lead
  • Note the multi-lead signal: "3 people from [Company] came inbound — buying committee forming?"
Lead claims a title that doesn't match LinkedIn:
  • Trust LinkedIn over self-reported form data (people sometimes inflate titles on forms)
  • Note the discrepancy: "Form says 'VP of Engineering', LinkedIn says 'Senior Engineer'"
  • Use the LinkedIn title for qualification purposes
Company recently renamed, merged, or was acquired:
  • If the company domain redirects, follow the redirect
  • Note the corporate action: "[Company] was acquired by [Parent] in [date]"
  • Qualify against the current entity, not the historical one
Person left the company since filling the form:
  • If LinkedIn shows a different company than the form submission, flag it
  • Note: "Lead submitted via [Company] but now at [New Company] as of [date]"
  • Qualify both companies if both are potentially relevant
Enrichment tool rate limits or failures:
  • If primary tool fails, fall back to secondary (web search is always available)
  • If both fail for a specific lead, mark as
    enrichment_partial
    and move on
  • Never block the entire batch because one lead failed
Very high volume (100+ leads):
  • Batch company research first (deduplicate companies)
  • Parallelize person research via Task agents (15-20 leads per batch)
  • Skip stakeholder discovery for Tier 4 and untiered leads
  • Provide cost estimate before running paid enrichment tools
Personal email domains:
  • If form had a company field: use it even though email is personal
  • If no company info: attempt LinkedIn search by name
  • Last resort: flag as
    company_unidentified
    , enrich person only

仅提供邮箱,无其他信息的线索:
  1. 提取域名 → 查询公司信息
  2. 在LinkedIn/网页搜索“[姓名] [公司]”
  3. 若仍无法识别:标记为
    enrichment_failed
    并说明原因,建议人工查询
  4. 不要在无法识别的线索上浪费付费API额度——优先使用网页搜索
同一家公司出现多条入站线索:
  • 仅调研公司一次,结果应用于所有线索
  • 关键决策者挖掘仅针对公司运行一次,而非每条线索
  • 标记多线索信号:“[公司]有3位联系人进线——是否正在组建采购决策团队?”
线索自报职位与LinkedIn不符:
  • 优先信任LinkedIn信息(用户有时会在表单中夸大职位)
  • 标记差异:“表单填写‘工程副总裁’,LinkedIn显示‘高级工程师’”
  • 资质审核时使用LinkedIn职位信息
公司近期更名、合并或被收购:
  • 若公司域名跳转,跟进跳转后的域名
  • 标记企业变动:“[公司]于[日期]被[母公司]收购”
  • 基于当前主体进行资质审核,而非历史主体
联系人填写表单后已离职:
  • 若LinkedIn显示的公司与表单提交的不符,标记该情况
  • 备注:“线索通过[原公司]提交表单,但自[日期]起任职于[新公司]”
  • 若两家公司均相关,则同时对两家进行资质审核
增强工具触发限流或故障:
  • 若主工具故障,切换至备用工具(网页搜索始终可用)
  • 若两个工具均对某条线索失效,标记为
    enrichment_partial
    并继续处理其他线索
  • 不要因单条线索故障阻塞整个批次
大批次线索(100+条):
  • 先批量完成企业调研(去重公司)
  • 通过Task agent并行处理联系人调研(每批次15-20条线索)
  • 跳过4级及未分级线索的关键决策者挖掘
  • 使用付费增强工具前提供成本预估
个人邮箱域名:
  • 若表单中有公司字段:即使邮箱是个人邮箱,仍使用该公司信息
  • 若无公司信息:尝试通过姓名搜索LinkedIn
  • 最后手段:标记为
    company_unidentified
    ,仅增强联系人信息

Update Protocol

更新规则

After enrichment is complete, update the source systems:
  1. If CRM is configured: Create/update lead records with enriched data. Don't overwrite existing data — append or fill gaps only.
  2. If Supabase is the data store: Upsert into
    people
    and
    companies
    tables.
  3. Flag duplicates: If enrichment reveals a lead already exists in CRM under a different email, flag the duplicate rather than creating a second record.

增强完成后,更新源系统:
  1. 若配置了CRM: 创建/更新线索记录,补充增强数据。不要覆盖现有数据——仅追加或补全缺口。
  2. 若使用Supabase作为数据存储: 插入/更新
    people
    companies
    表。
  3. 标记重复项: 若增强后发现线索已在CRM中(使用不同邮箱),标记为重复项而非创建新记录。

Tools Required

所需工具

  • Web search — primary fallback for all research
  • Apollo — company + person lookup (optional, enhances depth)
  • LinkedIn scraper (Apify) — person profile enrichment (optional)
  • Company-contact-finder — stakeholder discovery
  • CRM access — relationship checks (HubSpot, Salesforce, Supabase)
  • Supabase client — pipeline, outreach history, signal lookups
  • Read/Write — CSV I/O and config management
  • Task tool — for parallelizing enrichment across large lead batches
  • 网页搜索 — 所有调研的主要备用方案
  • Apollo — 企业+联系人查询(可选,提升调研深度)
  • LinkedIn scraper (Apify) — 联系人档案增强(可选)
  • Company-contact-finder — 关键决策者挖掘
  • CRM权限 — 关联关系检查(HubSpot、Salesforce、Supabase)
  • Supabase客户端 — 销售管道、触达历史、信号查询
  • 读写权限 — CSV读写与配置管理
  • 任务工具 — 大批次线索的并行增强处理