要在不丢失有用数据的前提下合并重复 Leads,首先要判断哪些记录代表同一个人或同一家公司。然后选择需要保留的主记录,补全其中缺失的字段,并在执行合并前处理相互冲突的值。

如果只是删除所有重复的邮箱行,可能会误删仅存在于其他记录中的电话号码、备注或 CRM ID。Datablist 将重复项检测与合并决策分开,让你在修改数据前先检查每一组重复记录。

如果 Leads 分散在多个数据库中,导出数据时应保留每条源记录的 ID。本指南采用基于文件的工作流:先在 Datablist 中清理合并后的 Leads 列表,再准备源系统所需的更新数据。

在这篇分步指南中,你将学会:

注意: 本指南介绍的是 Lead 去重,但相同流程也适用于联系人、公司、产品等任何需要去重的记录列表。

查找重复 Leads

首先,将你的 Leads 数据库导入 Datablist。

在 Datablist 中,数据以 collection 的形式组织。每个 collection 用来存储采用相同数据模型的一组记录。你需要通过外部文件导入 Leads。Datablist 支持 CSV 和 Excel 文件。点击 Import CSV/Excel,然后选择包含 Leads 列表的文件。

点击 + 新建 collection,为它设置名称(还可以添加一个图标 🚀)。你也可以在首页点击 Start with a CSV/Excel file。

创建 collection 的快捷入口
创建 collection 的快捷入口

接下来进入 Properties 页面。系统会在这一步列出解析 CSV 文件后识别出的各个列,并检查每一列,以判断应使用的数据类型。例如,邮箱地址和 URL 通常会被自动识别。

必要时请手动选择数据类型。如果某些 CSV 列无需导入,可以关闭对应列的导入选项。

CSV 列映射
CSV 列映射

下一步会显示文件内容预览。点击 Import {x} items,开始导入。

如果 Leads 分散在多个文件中,请将它们导入同一个 collection,并把含义相同的列映射到相同的 properties。合并文件前,建议添加 Source System 列,同时保留源系统中的联系人 ID。CRM A 的 ID 与 CRM B 的 ID 并不能互换使用。

建议先使用合适的标识符匹配人员,例如个人邮箱或个人资料 URL。如果不同数据库采用各自的 ID 体系,就不要只按源 ID 匹配。对于公司列表,应使用公司标识符,而不能因为多个人使用相同域名,就把他们视为同一个 Lead。

Leads 加载完成后,打开 Clean > Merge duplicates。

启动 Duplicates Finder
启动 Duplicates Finder

选择 Leads 的比较方式,开始去重。系统提供两种模式:

  • All Properties:比较完整的 Lead 记录行。
  • Selected Properties:比较能够识别同一个 Lead 的指定字段。

注意: 在 Datablist 中,“Property”与其他系统里的 Field 或 Column 含义相同。

对于 Lead 去重,请选择 Selected Properties。

选择合并模式
选择合并模式

选择能够识别待去重实体的字段。sales@example.com 这样的公共邮箱可能属于多位联系人,而只按姓名匹配,也可能把不同的人归为一组。

比较邮箱时,应谨慎选择 processor。邮箱去重介绍了何时适合使用标准化邮箱地址,以及遇到邮箱别名或公共收件箱时为什么需要人工检查。建议先使用范围较窄的比较条件,检查分组结果;只有确认匹配结果确实代表同一实体后,再逐步放宽条件。

为 Lead 记录选择唯一标识符
为 Lead 记录选择唯一标识符

如果要结合姓名和公司字段进行匹配,请先阅读多列去重:每个字段采用的算法和总体得分都会影响记录的分组方式。

为每个选中的 property 配置算法和 processor,然后点击 Run duplicates check。

重要提示

  • 分析过程为只读操作。在进入下一阶段并执行 Leads 合并前,数据不会发生任何修改。
  • Exact 文本匹配默认忽略大小写。如果大小写需要用于区分选定的文本值,请启用 Case sensitive。例如,启用后 ABC-123 与 abc-123 会被视为不同的值。

自动合并重复 Leads

选择 Merge and preserve data。Datablist 会从互补的 Lead 记录中补全空字段,然后列出需要设置处理规则的冲突 properties。

对于每项冲突,你可以合并不同的文本值、保留所选 Lead 的值,或应用字段保留规则。配置 Record to keep,确保保留正确的 CRM 记录或源记录。

自动合并算法
自动合并算法

预览会显示哪些值将被补全、合并、保留或丢弃。处理 Ready 分组前,请先仔细检查。标记为 Needs review 的分组不会发生变化。

示例:保留联系人 ID 并合并有用备注

以下示例记录代表同一个人。CRM 联系人记录包含需要保留的 ID,而活动导出记录则提供了补充信息。

来源联系人 ID邮箱电话备注状态
CRMC-104alex@example.com空申请了产品演示Qualified
活动导出E-218alex@example.com+1 202 555 0147在活动现场见过New

选择 CRM 记录作为需要保留的记录。补全其空白的电话字段;如果两条备注都有价值,则合并不同的备注;检查状态冲突后,保留 Qualified。预期结果如下:

联系人 ID邮箱电话备注状态
C-104alex@example.com+1 202 555 0147申请了产品演示;在活动现场见过Qualified

请保留两条原始记录及其源 ID 的副本,以便后续核对。不要把多个联系人 ID 合并成一个值,再将其导入 CRM 的 ID 字段。

先选择保留哪条记录,再处理字段冲突

Record to keep 用于选择最终保留的 Datablist item。Most Complete 会选择已填写字段最多的 item,但它不一定是你希望保留的 CRM 联系人。其他记录选择规则取决于你的套餐。如果自动规则无法可靠选出正确的联系人,请手动检查该分组。

对于每个存在冲突的 property,都需要先明确该字段的业务含义:

  • 备注或备用联系方式: 如果保留这些信息有价值,可以合并不同的文本值。
  • CRM ID、负责人或账户引用: 确认应保留哪条记录后,只保留一个有效值。如果没有做出判断就直接丢弃冲突值,可能导致数据无法正确映射回源系统。
  • 状态: 根据业务规则选择正确的值。字段更完整的记录不一定拥有正确的销售状态。
  • 活动日期: 选择最新活动时,应比较记录活动时间的业务日期字段。Most recently updated 字段规则指的是 Datablist item 的修改日期,而不是某一列中记录的活动日期。

Merge and preserve data 会补全互补字段,并应用已配置的冲突处理规则。Remove duplicates 则会原样保留选中的记录,并删除其他记录。只有在确定被删除的记录不包含任何有用信息时,才应使用第二种模式。

检查预览中即将被丢弃的值。审核完成后再处理 Ready 分组,并把 Needs review 分组留待人工判断。为了保留有用信息,有时应该暂不合并某个分组,直到确认哪个值才是正确的。

手动合并剩余重复 Leads

使用 Datablist Merging Assistant,手动合并剩余的重复 Leads。

打开剩余的重复项分组,检查尚未解决的记录。

每组重复 Leads 左侧都有一个 Manual Merging assistant 按钮,点击后即可打开 Merging Assistant。

合并重复项
合并重复项

系统会打开合并工具。在右侧,Datablist 会把数据最完整的记录选为“Primary item”;左侧剩余的重复 Leads 则称为“Secondary Items”。

Merging Assistant
Merging Assistant

在条件允许时,系统会自动选择 Secondary Items 中的 property 值,并将其合并到 Primary item。如果多个值相互冲突,你需要手动判断并选择要保留的值。

如果最终的“Primary item”符合预期,请点击 Merge 确认合并。所有 Secondary Leads 都会被删除,只保留一条合并后的 Lead 记录。

你也可以直接在这个列表中编辑或删除重复 Leads。

用清理后的 Leads 列表更新 CRM

处理单元格中的多个值

Datablist 会把多个值合并到一个单元格中。因此,列表里可能出现使用分隔符连接的多个值。

例如,合并后的电话字段可能是 +1 202 555 0147;+1 202 555 0182。如果目标系统要求每个字段只能包含一个号码,请在导入前将其拆分为 Phone 1 和 Phone 2。在确认拆分结果正确之前,请保留原始的合并字段。

你可以通过以下方式完成转换:

  • 使用 Datablist 的 Split Property 功能,把包含多个值的数据拆分到多个 properties 中。
  • 直接在 Datablist 中运行脚本,完成拆分处理。
  • 将 Leads 列表导出为 Excel 文件,再使用 Excel 或 Google Sheets 进行后续处理。

如果你希望每个电话号码或邮箱分别占据一行,而不是拆分到多个列中,可以对合并后的文件使用 CSV Rows Splitter。

使用 Split Property 将多个值拆分到不同 properties

Datablist 内置了一个工具,可以把某个 property 中的文本拆分到新的 properties。它非常适合处理去重算法生成的合并结果。

在 Edit 菜单中点击 Split Property,打开该工具。

打开 Split Property 工具
打开 Split Property 工具

选择包含多个值的 property,并选择合并时使用的同一个分隔符。

Split Property——选择分隔符
Split Property——选择分隔符

最后一项设置用于确定要创建多少个部分。请根据需要保留的最大值数量,设置足够多的输出字段。处理前,检查是否存在值数量超过所选输出字段数量的记录行。

Split Property——properties 数量
Split Property——properties 数量

处理数据前,Datablist 会显示结果预览。确认拆分后的数据符合预期,然后点击 Split Property 处理全部数据。

Split Property——预览
Split Property——预览

处理完成后,原始 property 不会发生变化,系统会创建新的 properties 来存储拆分后的值。请将它们重命名为与 CRM 导入列一致的名称。

Split Property——结果
Split Property——结果
在 Datablist 中用 JavaScript 按分隔符拆分值

如果拆分逻辑更复杂,或还需要进行额外处理,Datablist 提供了强大的 JavaScript 代码运行工具。你可以用它将文本拆分到多个 properties 中。

如果还没有用于存储多个值的额外 properties,请先创建它们。例如,创建 Phone 2、Phone 3,或 Email 2、Email 3,用于存储拆分后的单个值。

创建 Properties——第 1 步
创建 Properties——第 1 步
创建 Properties——第 2 步
创建 Properties——第 2 步

然后在 Edit 菜单中点击 Run Javascript,打开脚本编辑器。

运行 JavaScript
运行 JavaScript

根据你的 properties 调整以下脚本:

function runOnItem(item){
  if(!item.phone) return null;

  var parts = item.phone.split(';');

  if(parts.length===1) return null;

  return {
    phone1: parts[0],
    phone2: parts[1]
  }
}

注意: 请分别处理每个合并后的 property。如果一个 property 存储电话号码,另一个存储邮箱地址,请先用脚本处理电话号码,再运行第二个脚本处理邮箱地址。

以下代码示例会拆分 key 为 phone1 的 property 内容。脚本以 semicolon(分号)作为分隔符,并将拆分后的电话号码分别存储在 phone1 和 extraphone 两个 properties 中。

使用 JavaScript 代码按分号拆分
使用 JavaScript 代码按分号拆分

如果你对脚本编写有任何疑问,请联系我们。

将清理后的文件与源数据库核对

在 Datablist 中执行合并只会修改导入的 collection。它不会自动更新或删除外部数据库中的对应记录。 你需要单独准备数据核对与同步流程。

导出最终保留的源 ID,以及需要更新的字段值。对于每条被移除的源记录,应根据目标系统的要求,判断需要执行更新、合并还是删除操作。请遵循该系统的导入与合并规则,尤其要注意关联的活动记录和账户。

付费套餐可以下载合并变更列表,其中包含用于追踪修改的原值和目标值。请将该列表与原始导出文件配合使用。对完整文件执行更新前,先用一小组数据测试目标系统中的更新效果。

将重复项分组导出为 Excel 或 CSV 文件

在去重流程的任何阶段,你都可以导出剩余的重复项。Datablist 支持将数据导出为 Excel 或 CSV 文件。

如果你希望使用 Excel 手动清理重复项,或把这项工作外包给第三方服务商,可以导出重复项分组。

导出去重结果
导出去重结果

FAQ

什么是 Lead 重复?

Lead 重复是指多条记录代表同一个人或同一家公司。Lead 去重需要找出这些记录,并判断应该保留、删除还是合并。来自同一家公司的多个人不一定是重复 Leads。

如何对 Leads 列表进行去重?

选择符合实体特征的标识符,运行重复项检查,并在应用更改前检查分组结果。然后选择需要保留的记录,为每个冲突字段设置处理规则。对于公共邮箱和相似姓名,仅进行简单的相等匹配并不足够,还需要结合更多上下文判断。

如何合并多个数据库中的重复 Leads?

从每个数据库导出相关字段和源 ID,添加来源标签,再将含义相同的字段映射到同一个 Datablist collection。使用个人或公司标识符进行匹配、解决字段冲突,然后导出最终保留的 ID 和清理后的值。最后,分别将这些结果与各个源数据库进行核对和同步。

在选择合并规则前,请先了解 Lead 去重条件。你必须先判断两条记录是否代表同一个 Lead,再决定保留哪些相互冲突的值。

所有 Lead properties 都能合并吗?

文本值可以通过分隔符合并。状态、数值、日期或 CRM ID 等字段通常需要选定并保留一个值。如果合并所有冲突值,生成的结果可能无法被目标系统正确导入。

如何保留多个电话号码?

先在一个文本字段中合并不同的电话号码,再按 CRM 要求将该字段拆分到多个输出列。请检查使用的分隔符和所需列数。详情参见上文的处理单元格中的多个值。

必须一次解决所有重复项分组吗?

不需要。你可以先处理已经审核的分组,并暂时保留无法确定的匹配结果。先从明确的重复项开始,再检查存在歧义的分组。通过预览和剩余分组,你可以把不确定的决策与已确认的结果分开处理。

Lead 去重需要多长时间?

所需时间取决于列表大小、比较设置、浏览器资源以及检查冲突所需的工作量。重复项检测与人工处理冲突 Leads 是两个独立步骤。应用更改前,请保留原始导出文件,不要依赖某个承诺的固定处理秒数。

这个流程能直接连接我的 CRM 吗?

本指南使用 CSV 或 Excel 导出文件。将这些文件导入 Datablist 并不会建立实时 CRM 连接。导入清理结果前,请确认目标系统对 ID 更新、重复项删除和关联关系保留的具体要求。

完成目标系统的导入后,请按源 ID 将新导出的 CSV 与基准文件进行比较。检查发生变化的值,以及意外新增或删除的记录,确认无误后才能视为更新完成。