Что такое дедупликация клиентов
Дедупликация — приведение нескольких записей об одном человеке к одному профилю, то есть к единому профилю клиента. Задача звучит технически, но её последствия видны в отчётах: без дедупликации бизнес не знает, сколько у него клиентов, и систематически недооценивает их ценность.
Проблема появляется не из-за плохой архитектуры, а из-за нормального поведения пользователей. Один и тот же человек попадает в базу многократно — с разных устройств, каналов и точек контакта, и каждый раз система имеет право считать его новым.
Откуда берутся дубли
| Источник дубля | Как выглядит в данных | Частота |
|---|---|---|
| Гость → авторизованный | Анонимный профиль с историей просмотров и отдельный профиль с заказами | Постоянно |
| Разные устройства | Смартфон и десктоп как два независимых посетителя | Постоянно |
| Несколько адресов почты | Личная почта для подписки, рабочая — для заказа | Часто |
| Опечатки и варианты написания | Пробелы, регистр, домены-двойники | Часто |
| Форматы телефона | 8XXX, +7XXX, номер со скобками и дефисами | Часто |
| Оффлайн-карта лояльности | Отдельная запись в системе лояльности без связи с онлайн-профилем | В омниканальных сетях |
| Оформление «на другого человека» | Заказ на имя родственника с тем же телефоном | Регулярно |
Обратная ситуация встречается реже, но обходится дороже: общий семейный ноутбук или рабочий компьютер, где под одним устройством скрываются разные люди. Любая склейка «по устройству» в этом случае объединяет чужие истории.
Детерминированное и вероятностное сопоставление
| Параметр | Детерминированное | Вероятностное |
|---|---|---|
| На чём основано | Точное совпадение email, телефона, ID клиента, номера карты | Устройство, IP, адрес доставки, поведенческие признаки |
| Точность | Высокая | Зависит от порога, ошибки неизбежны |
| Покрытие | Только записи с переданным идентификатором | Шире, включая анонимный трафик |
| Основной риск | Недосклейка — один человек остаётся несколькими профилями | Пересклейка — объединение разных людей |
| Где применимо | Заказы, авторизация, программа лояльности | Связка анонимной сессии с известным профилем |
Базовая связка выполняется механикой identity resolution: анонимный идентификатор в браузере или приложении сопоставляется с профилем в момент авторизации или оформления заказа, после чего вся предыдущая история переносится в объединённый профиль. Вероятностные правила поверх этого — инструмент расширения покрытия, а не замена детерминированным.
Вероятностную склейку по устройству нельзя применять к операциям с чувствительными последствиями: показу истории заказов, персональным скидкам, отображению личных данных. Порог ошибки, приемлемый для товарных рекомендаций, недопустим там, где пользователь увидит чужую информацию.
Правила слияния
Найти дубли — половина работы. Вторая половина — решить, каким станет объединённый профиль. Правила задаются заранее, иначе результат зависит от порядка обработки записей.
| Тип поля | Правило приоритета |
|---|---|
| Контактные данные (email, телефон) | Побеждает подтверждённое значение; неподтверждённые сохраняются как альтернативные |
| Имя, адрес доставки | Побеждает значение из последнего завершённого заказа |
| История заказов и событий | Объединяется целиком, без потери записей |
| Согласия на коммуникации | Побеждает самое строгое: отзыв перекрывает согласие |
| Ограничения на отслеживание | Переносятся на весь объединённый профиль |
| Служебные идентификаторы | Сохраняются все, с указанием основного |
Отдельно фиксируется обратимость. Ошибочную склейку придётся разделять, поэтому в профиле должны оставаться исходные идентификаторы и признак того, из каких записей он собран. Слияние «с потерей источника» превращает любую ошибку в необратимую.
Согласия — единственная категория, где строгое правило важнее удобства. Формально более свежая запись может содержать согласие, но если в объединяемых данных есть отзыв, приоритет у отзыва: цена ошибки здесь не маркетинговая, а юридическая.
Как ошибки дедупликации ломают метрики
Завышенное число клиентов. Каждый несклеенный дубль — «новый клиент» в отчёте. Доля новых покупателей выглядит здоровой, при этом реального притока нет.
Заниженный LTV и частота покупок. Пять заказов одного человека, разложенные по трём профилям, дают трёх клиентов с одной-двумя покупками. LTV занижается, retention выглядит хуже, чем есть, а окупаемость привлечения считается неверно.
Сломанная атрибуция. Путь «увидел рекламу с телефона — купил с десктопа» без склейки распадается на два несвязанных визита. Атрибуция отдаёт заслугу последнему каналу и обнуляет вклад верхних этапов воронки.
Персонализация «не тому человеку». Здесь ошибки видны пользователю. Недосклейка обнуляет накопленный профиль: постоянный клиент получает подборку как новичок. Пересклейка выдаёт чужие интересы — сценарий, который читается как сбой сайта и подрывает доверие к рекомендациям в целом.
Двойные коммуникации. Один человек в двух профилях получает одно и то же письмо дважды, а частотные ограничения считаются по каждому профилю отдельно и не срабатывают.
Чек-лист внедрения
- Составить карту источников: где создаются записи о клиенте и какие идентификаторы передаёт каждый источник — сайт, приложение, касса, программа лояльности, данные первой стороны из CRM.
- Нормализовать значения до сравнения: регистр и пробелы в почте, единый формат телефона, приведение адресов.
- Включить детерминированные правила по email, телефону и внутреннему ID — они снимают основную долю дублей.
- Настроить связку анонимной сессии с профилем в момент авторизации и оформления заказа.
- Оценить долю ошибочных склеек на ручной выборке до включения вероятностных правил в продуктив.
- Прописать правила слияния полей и отдельно — правило «самое строгое согласие побеждает».
- Сохранять исходные идентификаторы, чтобы склейку можно было откатить.
- Ввести регулярный контроль: доля профилей без устойчивого идентификатора, число слияний за период, число ручных разделений.