# Marketing and Sales Automation via CRM: Guide & Checklist

- URL: https://vladimirnovozhilov.com/en/blog/marketing-and-sales-automation-via-crm-guide-checklist/
- Author: Владимир Новожилов
- Published: 2026-10-03
- Category: Growth

> Connect marketing and CRM so data flows both ways and impacts revenue. This article lists required fields, MQL/SQL rules, webhook and offline conversion examples, a CRM comparison table and an implementation checklist. Focused on B2B and IT with RU/EAEU compliance.

В B2B и IT деньги теряются там, где маркетинг и CRM не разговаривают. [Автоматизация маркетинга](/en/blog/marketing-automation-where-to-start-and-what-to-automate/) и продаж через CRM — это не «поставить роботов», а замкнуть цикл данных: от клика и звонка до выручки и обратно в рекламные алгоритмы. Когда UTM, GCLID/FBCLID и статусы сделок сходятся в одной системе, снижаются CAC, растёт ROAS и исчезают слепые зоны.

## Что такое автоматизация маркетинга и продаж через CRM — кратко
Автоматизация — это набор процессов и интеграций, которые:
- передают в CRM полную контекстную информацию о лидах (UTM‑параметры, GCLID/FBCLID, источник звонка, содержимое формы, согласие);
- возвращают из CRM факты продаж и статусы (MQL/SQL, суммы, причины отказов, даты оплат);
- включают сквозную аналитику и автоматические действия: скоринг, маршрутизацию лидов, ретаргетинг из CRM, выгрузку офлайн‑конверсий в Ads/Директ;
- обеспечивают единые регламенты и контроль качества данных.

![Quick wins from a basic end-to-end integration](./images/avtomatizaciya-marketinga-i-prodazh-cherez-crm-fastwin.png)

## Бизнес‑цели интеграции: какие метрики меняются (CAC, LTV, ROAS, скорость обработки)
Коротко по эффектам:
- CAC падает за счёт отключения «пустых» связок UTM и перераспределения бюджета в источники с высоким CR→SQL/оплате.
- ROAS растёт, когда офлайн‑продажи возвращаются в Ads/Директ, а оптимизация строится по реальной ценности.
- LTV повышается благодаря сегментации и [триггерам повторных касаний](/en/blog/email-and-trigger-automation-templates-and-checklists/).
- Скорость обработки лидов сокращается с автодобавлением задач и маршрутизацией по SLA.

Cheat‑sheet по юнит‑экономике:
- CAC = Расходы на привлечение / Количество новых клиентов.
- ROAS = Выручка, атрибутированная рекламе / Рекламные расходы.
- LTV (B2B) ≈ ARPA × Валовая маржа × Срок жизни (мес).

Пример: 1 200 000 ₽ расходов, 80 новых клиентов ⇒ CAC = 15 000 ₽. Выручка 6 000 000 ₽ ⇒ ROAS = 5. Если после интеграции расходы те же, а клиентов 110, CAC падает до 10 909 ₽, ROAS растёт.

![Relative CAC and ROAS values, index before=100%](./images/avtomatizaciya-marketinga-i-prodazh-cherez-crm-unit.png)

## Какие поля и данные обязательно передавать из маркетинга в CRM (с таблицей)
Передавайте максимум контекста — иначе сквозная аналитика будет хромать.

Обязательная матрица полей (marketing → CRM):

| Поле | Пример | Тип | Откуда | Зачем |
|---|---|---|---|---|
| utm_source | google | string | URL/формы | Атрибуция канала |
| utm_medium | cpc | string | URL/формы | Разделение платного/органики |
| utm_campaign | brand_search | string | URL/формы | Аналитика по кампаниям |
| utm_content | adgroup_a | string | URL/формы | Креатив/группа объявлений |
| utm_term | crm integration | string | URL/формы | Ключевая фраза |
| GCLID / FBCLID / yclid | EAIaIQobChM… | string | Куки/скрытое поле | Офлайн‑конверсии в Ads/Meta/Директ |
| ClientID/DeviceID | 123.456 | string | Аналитика | Сшивка сессий |
| Referrer | site.com/page | string | Браузер | Цепочка визитов |
| Landing URL | /pricing | string | Формы | Понимание намерения |
| Call ID (коллтрекинг) | 987654 | string | Calltouch/CoMagic/UIS | Атрибуция звонков |
| Форма/точка входа | demo_request | enum | Сайт/чат/бот | Качество лид‑магнита |
| Consent (согласие) | true/дата | boolean/date | Чекбокс/скрипт | Требование закона |
| Гео/валюта | RU / RUB | enum | Пользователь/аккаунт | Отчётность |

Рекомендация: сохраняйте сырые UTM и «нормализованные» (mapping к единому справочнику). Для звонков — храните номер пула, длительность, статус разговора.

![Closing the loop: from click to payment](./images/avtomatizaciya-marketinga-i-prodazh-cherez-crm-funnel.png)

## Какие данные и статусы возвращать из CRM в маркетинг (с таблицей)
Без обратной связи оптимизации не будет. Возвращайте как минимум:

| Поле | Пример | Тип | Когда отправлять | Зачем |
|---|---|---|---|---|
| Lead Status | MQL / SQL / Won / Lost | enum | Изменение стадии | Прокси‑сигналы для алгоритмов |
| Deal Amount | 420000 | number | Создание/изменение сделки | ROAS/ROMI по каналам |
| Product/Segment | Enterprise | enum | SQL | Сегментация и LTV |
| Close Date | 2026‑07‑18T10:12Z | datetime | Закрытие | Окно атрибуции |
| Lost Reason | Цена/Сроки | enum | Lost | Улучшение офферов |
| Manager ID | s.petrov | string | Создание | SLA/нагрузка |
| Score | 65/100 | number | Создание/обновление | Lead scoring и приоритизация |
| Consent Status | active/withdrawn | enum | Любое обновление | Правомерные рассылки |

Шаблоны сегментов для ретаргетинга из CRM:
- SQL без сделки > 30 дней — «догрев» с кейсами и ROI‑калькулятором.
- Потерянные по «Цена» — акция/рассрочка.
- Покупатели AOV > медианы — апселл/доп. модуль.
- Новые MQL из крупных компаний — персональные офферы/ABM.

## Технические варианты реализации (API, вебхуки, ETL, Sheets, iPaaS)
- Вебхуки CRM → маркетинг: просто, событийно. Подходит для статусов, согласий, сумм. Следите за ретраем и логами.
- API маркетинга/CRM: двусторонний гибкий обмен, контроль ошибок, но требуется разработка и токены.
- iPaaS (Make/Zapier): быстро стартовать, удобно для SMB, но осторожно с объёмами и PII.
- ETL/Batch (ежедневный экспорт в DWH/Sheets): стабильно для отчётности и power‑users, не годится для real‑time оптимизации.
- Серверные формы (server‑to‑server): надёжная доставка лидов и click ID, минует блокировщики.

Выбирайте гибрид: события через вебхуки, отчётность через ETL, серийные задачи через iPaaS.

## Передача офлайн‑конверсий в Google Ads и Meta — пошаговый пример (GCLID/FBCLID)
1) Захват click ID. На лендинге сохраняйте GCLID/FBCLID/yclid в куки и скрытые поля формы.
2) Запись в CRM. Создайте поля под click ID и UTM, сохраняйте время события.
3) Маппинг конверсий. Определите, какие статусы считаются целевыми: SQL, Won или «Счёт оплачен».
4) Подготовка нагрузки. Формируйте запись: click ID, имя конверсии, время, ценность, валюта.
5) Загрузка. Отправляйте через API или CSV‑файл по расписанию (час/день). Для Meta — Conversions API с event_name, event_time, value, currency.
6) Проверка. Сверяйте загрузку и отклик кампаний раз в неделю, корректируйте окно атрибуции.

CSV для Google Ads (UTF‑8):
```
Google Click ID,Conversion Name,Conversion Time,Conversion Value,Conversion Currency
EAIaIQobChMIabc...,Qualified SQL,2026-07-18 10:12:00,0,RUB
EAIaIQobChMIxyz...,Deal Won,2026-08-02 16:45:00,420000,RUB
```

Пример JSON для Meta Conversions API (сервер → Meta):
```
{
  "data": [
    {
      "event_name": "Lead",
      "event_time": 1720590000,
      "action_source": "website",
      "event_source_url": "https://example.com/demo",
      "user_data": {"client_user_agent": "Mozilla/...", "fbc": "fb.1.1720..."},
      "custom_data": {"currency": "RUB", "value": 0, "lead_type": "SQL"}
    }
  ]
}
```

## Шаблон регламента MQL → SQL и примеры правил (чек‑лист)
База: общий ICP и критерии статусов согласованы маркетингом и продажами.

Правила «если — то» (пример):
- Если должность в форме ∈ {CEO, CTO, Head of IT} И компания > 50 сотрудников И регион ∈ {RU, EAEU} И интерес «Демо», то статус = MQL.
- Если назначена встреча И подтверждён бюджет ≥ 300 000 ₽ И есть сроки внедрения ≤ 90 дней, то статус = SQL.
- Если нет ответа 7 дней после 3 касаний, то вернуть из SQL в MQL и запустить nurturing‑цепочку.
- Если сделка закрыта Won, то отправить событие «Оплата» с суммой в Ads/Директ; если Lost, передать причину.

SLA и роли:
- Маркетинг: качество данных формы, корректность UTM/click ID; отчёты CAC/ROAS.
- Продажи: своевременная смена статусов, заполнение суммы и «Lost Reason»; срок реакции ≤ 15 минут.
- Аналитика/IT: стабильность интеграций, логи, мониторинг отказов вебхуков.

## Чек‑лист внедрения: этапы, сроки, роли и контроль качества данных
Этап 1. Аудит (0,5–1 нед)
- Карта воронки, источники лидов, текущие поля в CRM, телефония/коллтрекинг, пиксели/теги.
- Решения: какие конверсии считаем целевыми, окно атрибуции, валюта отчётности.

Этап 2. Схема данных (0,5 нед)
- Справочники каналов, поля для UTM/GCLID/Consent, статусы лидов/сделок, MQL/SQL критерии.

Этап 3. Захват и доставка (1 нед)
- Скрытые поля форм, server‑to‑server дубль, проксирование звонков из коллтрекинга в CRM.

Этап 4. Обратная передача (1–2 нед)
- Вебхуки из CRM по статусам/оплатам, ETL nightly экспорты, ретаргетинг‑сегменты.

Этап 5. Отчётность и оптимизация (1 нед)
- Дашборды CAC/ROAS/LTV в Power BI/Looker Studio; загрузка офлайн‑конверсий; A/B тест гипотез источников.

Контроль качества данных (еженедельно):
- Доля лидов с полными UTM ≥ 95%; доля лидов с click ID ≥ 70% платного трафика; доля сделок с заполненной суммой ≥ 98%; среднее время реакции менеджера ≤ 15 минут.

## Сравнительная таблица CRM: функции, цена, для кого подходит (SMB/Mid/Enterprise)

| Платформа | Ключевое | Маркетинг‑авто | Вебхуки/API | Локализация РФ | Пример цены | Сегмент |
|---|---|---|---|---|---|---|
| HubSpot | Сильная маркетинг‑часть, воронки | Да (email, nurturing) | Широкие | Международная | от $30–$100+/польз. | SMB/Mid |
| amoCRM | Простая воронка, виджеты | Ограниченно (через виджеты) | Да | Сильная RU‑экосистема | от 900–2000 ₽/польз. | SMB |
| Bitrix24 | CRM+таски+телефония | Да (роботы/триггеры) | Да | Глубокая интеграция с 1С/телефонией | от 2490 ₽/мес | SMB/Mid |
| Salesforce | Гибкость Enterprise | Через Marketing/Engage | Широкие | Международная | Enterprise ценообразование | Mid/Enterprise |
| Pipedrive | Удобно для продаж | Через аддоны | Да | RU‑локализация частично | от €14.90/польз. | SMB |

Примечания: для РФ/ЕАЭС учитывайте хранение ПДн (152‑ФЗ), локальные телефонии и коллтрекинги (Calltouch, CoMagic, UIS), интеграцию с 1С.

## KPI и дашборды: примеры метрик и готовые SQL/Looker/GDS‑дашборды
Базовые показатели:
- CR по воронке: Лид→MQL, MQL→SQL, SQL→Won.
- CAC по источнику/кампании, ROAS по источнику, AOV и LTV по сегментам.
- Скорость реакции и доля автодозвона/автосообщений.

Пример SQL (PostgreSQL) — выручка и CAC по источнику за месяц:
```
WITH deals AS (
  SELECT d.id, d.amount, d.close_date::date, l.utm_source, l.lead_id
  FROM crm_deals d
  JOIN crm_leads l ON l.id = d.lead_id
  WHERE d.status = 'Won' AND d.close_date >= date_trunc('month', now())
),
costs AS (
  SELECT utm_source, SUM(cost) AS spend
  FROM ad_costs
  WHERE date >= date_trunc('month', now())
  GROUP BY 1
)
SELECT d.utm_source,
       SUM(d.amount) AS revenue,
       COALESCE(c.spend,0) AS spend,
       CASE WHEN COALESCE(c.spend,0)=0 THEN NULL ELSE SUM(d.amount)/c.spend END AS roas
FROM deals d
LEFT JOIN costs c ON c.utm_source = d.utm_source
GROUP BY 1,3
ORDER BY revenue DESC;
```

Looker Studio формулы:
- CAC = SUM(Расходы) / COUNTD(Клиенты)
- ROAS = SUM(Выручка) / SUM(Расходы)
- CR SQL = COUNT(SQL) / COUNT(MQL)

Power BI: матрица по utm_source×статусу, линейный график ROAS по неделям, KPI‑карточки CAC/LTV.

## Шаблоны интеграций: webhook JSON, пример server‑to‑CRM POST (код), автоматическая загрузка в Ads
Payload вебхука CRM → маркетинг (статус сделки):
```
{
  "event": "deal.updated",
  "data": {
    "deal_id": 8421,
    "status": "Won",
    "amount": 420000,
    "currency": "RUB",
    "close_date": "2026-07-18T10:12:00Z",
    "lead": {
      "id": 5512,
      "utm": {
        "source": "google",
        "medium": "cpc",
        "campaign": "brand",
        "content": "adgroup_a",
        "term": "crm integration"
      },
      "click_id": {"gclid": "EAIaIQobChMI..."}
    }
  }
}
```

Server‑to‑CRM POST (PHP):
```
<?php
$payload = [
  'name' => $_POST['name'] ?? '',
  'email' => $_POST['email'] ?? '',
  'phone' => $_POST['phone'] ?? '',
  'utm_source' => $_POST['utm_source'] ?? $_COOKIE['utm_source'] ?? '',
  'utm_medium' => $_POST['utm_medium'] ?? $_COOKIE['utm_medium'] ?? '',
  'utm_campaign' => $_POST['utm_campaign'] ?? $_COOKIE['utm_campaign'] ?? '',
  'utm_content' => $_POST['utm_content'] ?? $_COOKIE['utm_content'] ?? '',
  'utm_term' => $_POST['utm_term'] ?? $_COOKIE['utm_term'] ?? '',
  'gclid' => $_POST['gclid'] ?? $_COOKIE['gclid'] ?? '',
  'consent' => isset($_POST['consent']) ? 'true' : 'false',
  'consent_time' => date('c')
];

$ch = curl_init('https://crm.example.com/api/leads');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json','Authorization: Bearer TOKEN']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if (curl_errno($ch)) error_log('CRM error: '.curl_error($ch));
curl_close($ch);
?>
```

Google Ads offline conversions (Python, псевдокод):
```
from datetime import datetime
records = [
  {"gclid": "EAIaIQob...", "name": "Qualified SQL", "time": "2026-07-18 10:12:00", "value": 0, "currency": "RUB"},
  {"gclid": "EAIaIQob...", "name": "Deal Won", "time": "2026-08-02 16:45:00", "value": 420000, "currency": "RUB"}
]
for r in records:
    payload = {
      "googleClickId": r["gclid"],
      "conversionName": r["name"],
      "conversionTime": r["time"],
      "conversionValue": r["value"],
      "currencyCode": r["currency"]
    }
    # client.upload_click_conversion(payload)
```

## Кейсы: 2–3 примера с цифрами (рост конверсии, снижение CPL, ROI автоматизации)
Кейс 1. B2B‑интегратор (Mid)
- До: UTM без GCLID, отчёты по лидам, CPL 9 200 ₽, CR MQL→SQL 28%.
- Что сделали: добавили server‑to‑server формы, поля click ID, вебхуки статусов, офлайн‑конверсии «SQL» и «Оплата» в Ads, ретаргетинг по «Lost: Цена».
- После 90 дней: CPL −35%, CR MQL→SQL до 41%, ROAS +48%.

Кейс 2. IT‑услуги (SMB)
- До: заявки из чата, дубли в CRM, нет согласий. Менеджеры реагировали 2–3 часа.
- Что сделали: маршрутизация по сегменту, авто‑задача ≤ 15 минут, скоринг > 60 — звонок в приоритете, email‑догрев для < 60.
- Результат: время реакции 11 минут, CR SQL→Won +22%, средний чек +17% благодаря апселлу сегмента AOV>медианы.

Кейс 3. Образовательные IT‑программы (Mid)
- До: ROAS пляшет, «холодные» переливы трафика.
- Что сделали: связали Calltouch→CRM→Ads, загрузили офлайн «Оплата», отключили 7 связок UTM с низким SQL.
- Результат: ROAS +63%, возврат инвестиций за 2 месяца.

### Частые ошибки и как их избежать
- Передаёте UTM, но не храните click ID — офлайн‑конверсии не сойдутся. Исправление: скрытые поля+куки+серверная дубляж.
- Нет единых статусов/регламента — отчёты не сопоставимы. Исправление: MQL/SQL SLA и «если‑то» правила.
- iPaaS без мониторинга — теряются события. Исправление: ретраи, логи, алёрты об ошибках.
- ПДн без согласий — риски штрафов. Исправление: явный чекбокс, журнал согласий, хранение в РФ.
- Слишком ранняя оптимизация по «Лид» — качество падает. Исправление: прокси «SQL» или «Встреча» пока не набрали «Оплату».

## FAQ: ответы на ключевые практические вопросы
(см. блок FAQ внизу страницы)

## Рекомендации по локализации (RU/ЕАЭС)
- Яндекс.Директ: передавайте yclid/yclid, используйте цели «Заявка/MQL/Оплата»; подгружайте офлайн‑конверсии по ID клика и времени.
- 1С: синхронизируйте суммы, номенклатуру, статусы счетов и оплаты; избегайте задержек через пакетные обмены по расписанию.
- Коллтрекинг: Calltouch/CoMagic/UIS — прокидывайте Call ID и запись разговора в CRM; на основе «качества» помечайте звонки как MQL.
- Законодательство: хранение ПДн на серверах в РФ, явное согласие на маркетинг (дата/время/источник), право на отписку и отзыв согласия.

---

Итог: интеграция CRM и маркетинга — это дисциплина данных. Начните с обязательных полей, двусторонних статусов и офлайн‑конверсий. Дальше — скоринг, ретаргетинг из CRM и дашборды юнит‑экономики. Через 4–8 недель вы увидите снижение CAC, рост ROAS и предсказуемую воронку.

## FAQ

### Which fields must be sent from a form to CRM for end-to-end analytics?

Minimum: utm_source, utm_medium, utm_campaign, utm_content, utm_term, GCLID/FBCLID (or yclid), source and entry point, request page, ClientID/DeviceID, referrer, event time, marketing consent, communication channel. For calls — call ID from call tracking; for offline visits — manager/location tag.

### How to send GCLID/FBCLID to CRM and upload offline conversions to Google Ads?

Save the click ID in cookies/session, pass it in a hidden form field and store it in CRM. On deal close, generate an event with click ID, conversion time and value. Upload via API or CSV with required headers. For Google Ads use: Google Click ID, Conversion Name, Conversion Time, Value, Currency. For Meta use Conversions API with the appropriate event.

### How to correctly define and document MQL and SQL criteria?

Define ICP (company/role/check) and agree with sales on signals: MQL — profile + interest (e.g., C‑level role, RU/EAEU region, budget 300k+, form completed); SQL — confirmed interest by the rep (meeting scheduled/budget confirmed). Document if‑then rules and SLA: who and when changes statuses, which fields are mandatory, and where the runbook is stored.

### What minimum volumes of conversions are needed for effective training of Google/Meta algorithms?

Rule of thumb: 30–50 target offline conversions per campaign within 30 days for stable optimization. If volume is lower — aggregate at ad group/account level, use proxy conversions (SQL instead of Payment), increase attribution window to 90 days and raise bids gradually.

### How long does implementing the “site → CRM → Ads” integration take and what stages to plan?

Basic integration — 3–6 weeks: 1) fields and schema prep (0.5–1 wk), 2) capture UTM/GCLID/call tracking (1 wk), 3) webhooks and CRM statuses (1–2 wk), 4) reporting and tests (1 wk), 5) offline conversions to Ads/Direct (0.5–1 wk). Parallel — MQL/SQL runbooks and team training.
