Вы уже знаете, что определить телефон посетителя сайта можно. Но как именно это работает внутри? Откуда берутся номера? Это законно? И почему иногда номер не определяется?
В этой статье — подробный технический разбор:
- какие данные собирает скрипт;
- что такое «цифровой отпечаток» (fingerprint);
- как работают Big Data‑источники;
- почему точность не 100% и от чего она зависит;
- как сервисы избегают нарушения 152‑ФЗ.
Статья для продвинутых. Если вы не технический специалист — всё равно разберётесь, объясняю простыми словами.
Общая схема: от визита до номера в CRM
Весь процесс занимает 10–30 секунд после ухода посетителя с сайта. Выглядит он так:
- Посетитель заходит на сайт.
- Скрипт собирает технические данные (IP, браузер, экран, часовой пояс и т.д.).
- Данные отправляются на сервер провайдера (например, ЯЛидер!).
- Провайдер формирует «цифровой отпечаток» (fingerprint).
- Отпечаток сопоставляется с Big Data‑базами (миллиарды записей из открытых источников).
- Если найдено совпадение — в вашу CRM приходит номер телефона и дополнительные данные.
- Если совпадений нет — вы ничего не платите.
Теперь каждый шаг — подробнее.
Шаг 1. Что собирает скрипт на сайте
Скрипт — это фрагмент JavaScript, который выполняется в браузере посетителя. Он собирает только техническую информацию, которая не является персональными данными по закону (ст. 10 152‑ФЗ).
Типичный набор данных:
- IP‑адрес (без привязки к конкретному человеку)
- User‑Agent (версия браузера, ОС, тип устройства)
- Разрешение экрана
- Часовой пояс
- Язык интерфейса
- Список установленных шрифтов (редко, но бывает)
- Настройки WebGL и Canvas (для fingerprinting)
- Реферер (откуда пришёл)
- UTM‑метки (если есть)
Важно: скрипт не считывает файлы cookie других сайтов, не читает историю браузера, не перехватывает пароли и не внедряется в системные процессы. Всё строго в рамках разрешённых браузерных API.
Шаг 2. Формирование «цифрового отпечатка» (fingerprint)
Все собранные параметры передаются на сервер, где из них генерируется уникальная хеш‑сумма — цифровой отпечаток.
Представьте, что у каждого человека есть набор характеристик: рост, цвет волос, размер обуви, голос. Даже если вы не знаете имени, по совокупности признаков можно с высокой вероятностью узнать человека. То же самое с отпечатком устройства.
Например:
- IP:
93.180.xxx.xxx(регион) - Браузер: Chrome 122
- ОС: Windows 11
- Экран: 1920×1080
- Часовой пояс: UTC+3 (Москва)
- Canvas fingerprint:
a3f5c8...(уникальный ID, который генерирует браузер при отрисовке скрытого изображения)
Эти параметры вместе дают почти уникальный идентификатор устройства. Если тот же пользователь зайдёт с другого браузера или с телефона — отпечаток будет другим. Если с того же самого компьютера и браузера (даже через неделю) — отпечаток с большой вероятностью совпадёт.
Шаг 3. Источники Big Data: откуда берутся номера
Самый загадочный шаг. Где сервис берёт миллиарды номеров с привязкой к отпечаткам?
Честный ответ: из публичных, обезличенных и легально собранных источников. Никаких взломов баз операторов или утечек ФСБ.
Основные типы источников:
1. Сайты объявлений и маркетплейсы
Avito, Юла, Auto.ru и другие. Пользователи сами публикуют свои номера телефонов вместе с геолокацией, временем публикации, иногда — с IP. Сервисы индексируют эти объявления и связывают номер с цифровым отпечатком (когда тот же пользователь заходил на сайт объявлений).
2. Открытые профили в соцсетях
ВКонтакте, Telegram (каналы), профили на форумах. Если пользователь указал номер телефона публично (например, в разделе «Контакты»), он становится достоянием Big Data.
3. Сервисы проверки контрагентов и справочники
2ГИС, «СБИС», «Контур.Фокус» — открытые данные о компаниях и ИП (телефоны, адреса). А также частные справочники, которые агрегируют номера из открытых источников.
4. Обратный обмен между сервисами (партнёрские сети)
Некоторые провайдеры (ЯЛидер!, Roistat) обмениваются обезличенными данными по принципу «ты мне — я тебе». Это законно, так как передаются не номера напрямую, а паттерны «отпечаток → номер» в зашифрованном виде.
5. Покупка у легальных агрегаторов данных
На рынке есть компании, которые собирают информацию из открытых источников (Big Data брокеры). Они продают доступ к своим базам, но строго соблюдают законодательство — не передают персональные данные без обезличивания.
⚠️ Важно: ни один легальный сервис не имеет доступа к закрытым базам операторов сотовой связи (МТС, Билайн, Мегафон). Это запрещено законом «О связи» и УК РФ. Утверждения обратного — миф или рекламный трюк.
Шаг 4. Сопоставление: как отпечаток связывается с номером
Допустим, у нас есть:
- Цифровой отпечаток
F1(сгенерирован для посетителя вашего сайта). - База данных из 10 миллиардов записей вида:
F2 → 79261234567,F3 → 79151112233и т.д.
Процесс сопоставления:
- Берём отпечаток
F1. - Ищем в базе записи с полностью совпадающим отпечатком (строгое равенство).
- Если есть — номер ваш.
- Если нет — ищем частично похожие отпечатки (IP совпадает, но браузер другой — возможно, тот же человек с другого устройства). Применяются алгоритмы fuzzy matching.
Почему не всегда находится?
- Уникальность отпечатка не 100% — два разных пользователя могут случайно иметь одинаковые параметры (особенно если у обоих стандартные настройки браузера).
- Человек никогда не публиковал свой номер в открытых источниках — тогда номер просто неоткуда взять.
- Номер привязан к другому устройству — например, человек заходит с рабочего компьютера, а объявление публиковал с домашнего. Отпечатки разные, совпадения нет.
Поэтому реальный процент определения — 20–40% от трафика. И это нормально.
Шаг 5. Почему точность не 100% и от чего она зависит
Факторы, которые влияют на процент определений:
| Фактор | Влияние |
|---|---|
| Тип трафика | Органика и реклама дают больше определений, чем прямой заход (direct) или соцсети. |
| Доля мобильного трафика | На мобильных устройствах отпечаток менее стабилен (смена IP, смена браузера). |
| Использование VPN/прокси | IP меняется, отпечаток искажается. |
| Блокировщики рекламы | Некоторые блокировщики могут препятствовать работе скрипта. |
| Регион посетителей | Москва и СПБ — больше данных, регионы — меньше. |
| Качество Big Data провайдера | У лидеров (ЯЛидер!, Roistat) базы больше и свежее. |
Средние значения по рынку:
- Хорошо: 30–40% определений (лидеры).
- Средне: 20–30%.
- Плохо: <15% (устаревшие или дешёвые сервисы).
Шаг 6. Почему это законно (кратко)
Мы уже касались этой темы в статье №2, но повторим ключевые моменты с технической стороны:
- Скрипт собирает обезличенные технические данные — это не персональные данные (ПДн) по 152‑ФЗ, поэтому согласие на сбор не требуется.
- Сопоставление с Big Data происходит на стороне провайдера. Вы не передаёте ему персональные данные — только отпечатки.
- Номер телефона считается ПДн только тогда, когда вы получаете его в привязке к конкретному посетителю. Но вы получаете его из публичных источников, где номер уже был «освещён» самим пользователем. Это разрешено (ст. 6 152‑ФЗ, обработка общедоступных ПДн).
- Вы обязаны разместить на сайте политику конфиденциальности и cookie‑баннер. Это стандартное требование для любого сайта, собирающего техническую информацию.
Ни один суд в РФ ещё не признал использование определителя номеров (через публичные источники) незаконным, при условии соблюдения оферты и политики.
Заключение: как это всё работает в двух словах
- Скрипт собирает технические данные посетителя.
- Сервер превращает их в уникальный «цифровой отпечаток».
- Отпечаток сравнивается с огромными базами данных из открытых источников (объявления, соцсети, справочники).
- При совпадении — вы получаете номер телефона (и часто дополнительные данные: имя, город, источник).
- Точность зависит от качества базы и чистоты трафика — в среднем 25–35%.
Ключевые выводы:
- Никто не взламывает операторов и не читает вашу телефонную книгу — это миф.
- Технология легальна, если вы правильно оформили политику и cookie‑баннер.
- Процент определений ограничен публичностью данных — поэтому не бывает 100%.
- Лидеры рынка (ЯЛидер!, Roistat) добиваются 30–40% за счёт свежих и больших баз.
Следующая статья из цикла: «Скрипт определения номера телефона — готовый код и установка» — техническая инструкция с примером кода и разбором каждой строки.