Meta Ads

Meta Conversions API (CAPI): що це таке і як підключити на сайт

| 28 Тра 2026 | 5 хв читання 0 переглядів
Обкладинка: Meta Conversions API — UA
Meta Conversions API (CAPI) — це серверний інструмент від Meta, який передає дані про конверсії напряму з вашого сервера на сервери Meta, минаючи браузер. Він вирішує головну проблему 2024–2025 рр.: iOS 14.5+, адблокери та обмеження cookie знищують до 30–40% даних пікселя. CAPI повертає цю втрачену аналітику та підвищує ефективність реклами в Facebook та Instagram.

Що таке Meta Conversions API

Meta Conversions API (скорочено — CAPI, або Conversions API) — це серверний канал передачі даних між вашим сайтом і рекламним кабінетом Meta Ads. На відміну від Meta Pixel, який працює в браузері користувача, CAPI надсилає події конверсій напряму з вашого веб-сервера (або серверного коду) на сервери Meta через захищений HTTPS-запит.

Офіційна назва — Meta Conversions API. До перейменування компанії у 2021 році інструмент називався Facebook Conversions API або Facebook CAPI. Обидві назви досі активно використовуються в індустрії та ведуть до одного і того ж інструменту.

Принцип роботи: замість того, щоб браузер відвідувача надсилав дані на Facebook (як це робить піксель), ваш сервер самостійно відправляє структурований JSON-запит із даними про подію — покупку, реєстрацію, заявку — безпосередньо на Graph API Meta. Браузер при цьому не задіяний.

Чому виник Meta CAPI: проблема втрати даних

З 2021 року рекламодавці зіткнулися з масштабною проблемою атрибуції. Причин кілька:

  1. iOS 14.5+ та ATT-фреймворк. Apple зобов’язала всі iOS-застосунки запитувати дозвіл користувача на відстеження. Більшість користувачів відмовляє — і Meta Pixel перестає бачити їхні конверсії. За різними оцінками, iOS-аудиторія генерує від 40 до 60% мобільного трафіку.
  2. Адблокери та розширення для приватності. uBlock Origin, Privacy Badger, DuckDuckGo browser — ці інструменти блокують JavaScript-запити пікселя ще до того, як він завантажується. Частка користувачів з адблокерами в Україні та Польщі сягає 35–40%.
  3. Обмеження сторонніх cookie (third-party cookies). Chrome планомірно відмовляється від third-party cookies. Safari і Firefox вже обмежили їх. Без cookie атрибуція по кліку суттєво деградує.
  4. Контентні блокувальники браузерів. Brave, Firefox Enhanced Tracking Protection та інші агресивно фільтрують запити до відомих рекламних доменів — включно з connect.facebook.net.

Результат: за даними Meta та незалежних досліджень, тільки Meta Pixel без CAPI фіксує в середньому 60–70% реальних конверсій. Решта 30–40% просто «зникають» — ви витрачаєте бюджет, але алгоритм не бачить результату й неправильно оптимізує кампанії.

Conversions API вирішує цю проблему кардинально: оскільки запит іде з вашого сервера, а не браузера, жоден адблокер, iOS-обмеження чи браузерне правило його не блокує.

CAPI vs Meta Pixel: ключові відмінності

CAPI — це не заміна Meta Pixel, а доповнення до нього. Ці два інструменти вирішують різні завдання і найкраще працюють разом.

CAPI vs Meta Pixel порівняння — Spilno Agency
Порівняння Meta Pixel та Conversions API
ПараметрMeta Pixel (браузерний)Conversions API (серверний)
Де виконуєтьсяБраузер користувачаВаш сервер
Вразливий до адблокерівТакНі
Вразливий до iOS 14.5+ЧастковоНі
НалаштуванняПросте (1 сніпет коду)Складніше (серверна логіка)
Дані реального часуТакТак (при правильному налаштуванні)
Офлайн-конверсіїНіТак
Поведінкові дані (скролл, час)ТакОбмежено
ДедублікаціяПотрібна при сумісному використанніПотрібна при сумісному використанні

Золоте правило: запускайте Pixel + CAPI одночасно. Pixel краще відстежує поведінкові дані (кліки, скролл, мікроконверсії), CAPI — фінальні конверсії (покупки, заявки). Разом вони дають Meta повний сигнал для навчання алгоритму.

Як Meta Conversions API передає дані

Технічно CAPI — це POST-запит до Graph API Meta. Ось спрощений приклад події Purchase:

POST https://graph.facebook.com/v19.0/{PIXEL_ID}/events?access_token={TOKEN}

{
  "data": [{
    "event_name": "Purchase",
    "event_time": 1716900000,
    "event_id": "order_12345",
    "action_source": "website",
    "event_source_url": "https://yoursite.com/checkout/success",
    "user_data": {
      "em": ["a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3"],
      "ph": ["1234567890abcdef..."],
      "client_ip_address": "203.0.113.1",
      "client_user_agent": "Mozilla/5.0..."
    },
    "custom_data": {
      "value": 1250.00,
      "currency": "UAH",
      "order_id": "12345"
    }
  }]
}

Кілька важливих деталей:

  1. Хешування PII. Особисті дані (email, телефон) передаються в SHA-256-хеші, а не відкритим текстом. Це вимога GDPR і правила Meta.
  2. event_id для дедублікації. Якщо ви надсилаєте ту саму подію і через Pixel, і через CAPI — потрібен однаковий event_id, щоб Meta не рахувала її двічі.
  3. action_source. Вказує, звідки прийшла подія: website, app, email, phone_call та ін.
  4. Access Token. Кожен запит автентифікується через System User Access Token, який генерується в Business Manager.

3 способи встановити Meta Conversions API

Meta пропонує кілька підходів залежно від вашої технічної можливості та платформи:

3 способи підключити Meta Conversions API — схема Spilno Agency
3 методи підключення CAPI залежно від технічних можливостей

Спосіб 1: Партнерська інтеграція (без коду)

Найпростіший варіант — підключити CAPI через готову інтеграцію в Events Manager. Meta має офіційні партнерства з десятками платформ:

Кроки підключення через Events Manager:

  1. Відкрийте Meta Events Manager → оберіть ваш піксель.
  2. Перейдіть у вкладку Settings → розділ Conversions API.
  3. Натисніть Connect a partner.
  4. Оберіть вашу платформу (наприклад, WooCommerce) і дотримуйтесь інструкцій.
  5. Авторизуйте з’єднання та вкажіть, які події передавати.
  6. Перевірте роботу в розділі Test Events.

Спосіб 2: Через Google Tag Manager (GTM)

Якщо ваш сайт використовує GTM, можна налаштувати CAPI через спеціальний тег Meta без написання серверного коду. Це вимагає Server-Side GTM — окремий Google Cloud-контейнер, який виступає серверним проксі.

  1. Налаштуйте Server-Side GTM-контейнер (Google Cloud Run або App Engine).
  2. В серверному контейнері GTM додайте тег Facebook Conversions API (офіційний від Meta або від третіх сторін, наприклад Stape.io).
  3. Налаштуйте тригери — які події передавати (Purchase, Lead, ViewContent тощо).
  4. Вкажіть Pixel ID та Access Token.
  5. Додайте event_id — однаковий для Pixel і CAPI, щоб уникнути дублів.
  6. Опублікуйте контейнер і перевірте в Meta Events Manager → Test Events.

Переваги GTM-підходу: не потрібен бекенд-розробник, можна швидко змінювати логіку через інтерфейс GTM, легко масштабувати на інші платформи. Недолік: Server-Side GTM потребує хостингу на Google Cloud (~$5–20/міс).

Спосіб 3: Пряма серверна інтеграція (код)

Найгнучкіший варіант — реалізувати CAPI напряму у вашому бекенді. Meta надає офіційні SDK для Python, PHP, Node.js, Ruby, Java.

Приклад на PHP (WordPress/WooCommerce):

// При успішному оформленні замовлення WooCommerce
add_action('woocommerce_payment_complete', function($order_id) {
    $order = wc_get_order($order_id);

    $payload = [
        'data' => [[
            'event_name'       => 'Purchase',
            'event_time'       => time(),
            'event_id'         => 'wc_order_' . $order_id,
            'action_source'    => 'website',
            'event_source_url' => home_url('/checkout/order-received/'),
            'user_data'        => [
                'em' => [hash('sha256', strtolower(trim($order->get_billing_email())))],
                'ph' => [hash('sha256', preg_replace('/D/', '', $order->get_billing_phone()))],
            ],
            'custom_data' => [
                'value'    => (float) $order->get_total(),
                'currency' => get_woocommerce_currency(),
                'order_id' => strval($order_id),
            ],
        ]]
    ];

    wp_remote_post(
        'https://graph.facebook.com/v19.0/YOUR_PIXEL_ID/events?access_token=YOUR_TOKEN',
        ['body' => json_encode($payload), 'headers' => ['Content-Type' => 'application/json']]
    );
});

Приклад на Python:

import hashlib
import time
import requests

def send_purchase_event(order_id, email, phone, value, currency="UAH"):
    payload = {
        "data": [{
            "event_name": "Purchase",
            "event_time": int(time.time()),
            "event_id": f"order_{order_id}",
            "action_source": "website",
            "user_data": {
                "em": [hashlib.sha256(email.lower().strip().encode()).hexdigest()],
                "ph": [hashlib.sha256(re.sub(r'D', '', phone).encode()).hexdigest()],
            },
            "custom_data": {
                "value": float(value),
                "currency": currency,
                "order_id": str(order_id),
            }
        }]
    }

    response = requests.post(
        f"https://graph.facebook.com/v19.0/{PIXEL_ID}/events",
        params={"access_token": ACCESS_TOKEN},
        json=payload
    )
    return response.json()

Дедублікація: як уникнути подвійного рахунку

Коли Pixel і CAPI працюють одночасно — і браузер, і сервер надсилають подію Purchase для одного замовлення. Без дедублікації Meta порахує це як 2 конверсії замість 1, що спотворить звітність і нашкодить оптимізації.

Рішення — поле event_id. Принцип простий:

  1. Генеруйте унікальний event_id для кожної події (наприклад, purchase_12345 або UUID).
  2. Передайте цей же event_id у браузерному коді Pixel:
fbq('track', 'Purchase', {value: 1250, currency: 'UAH'}, {eventID: 'purchase_12345'});
  1. Передайте той самий event_id у серверному запиті CAPI (поле event_id у JSON).
  2. Meta автоматично визначить дублікат і порахує подію лише один раз.

Вікно дедублікації: Meta порівнює події протягом 48 годин. Якщо два запити мають однаковий event_id, однаковий event_name і відправлені з різницею менше 48 годин — зараховується лише один.

Які події передавати через CAPI

Meta CAPI підтримує всі стандартні події Pixel і Custom Events. Пріоритети для передачі через CAPI:

Пріоритетні події Meta CAPI — таблиця Spilno Agency
Пріоритети подій CAPI: Purchase та Lead — критичні
ПодіяКод подіїКоли передаватиПріоритет
ПокупкаPurchaseПісля успішної оплатиКритичний
Ліди / ЗаявкиLeadПісля відправки формиКритичний
РеєстраціяCompleteRegistrationПісля підтвердження emailВисокий
Додавання до кошикаAddToCartПри додаванні товаруСередній
Початок оформленняInitiateCheckoutПри відкритті сторінки checkoutСередній
Перегляд контентуViewContentПри завантаженні сторінки товаруНизький
ПошукSearchПри виконанні пошукового запитуНизький

Рекомендація Spilno Agency: обов’язково передавайте через CAPI Purchase та Lead — це конверсії, на яких навчається алгоритм. Решту подій можна залишити тільки в Pixel.

Як отримати Access Token для CAPI

  1. Увійдіть у Meta Business SuiteBusiness Settings.
  2. Перейдіть у System Users → натисніть Add.
  3. Створіть System User з роллю Admin.
  4. Натисніть Generate New Token, оберіть потрібний рекламний акаунт.
  5. У дозволах включіть: ads_management, business_management.
  6. Збережіть токен — він буде показаний лише один раз.

Або через Events Manager:

  1. Meta Events Manager → ваш піксель → Settings.
  2. Розділ Conversions APIGenerate access token.
  3. Скопіюйте токен та додайте його у ваш серверний код або GTM.

Як перевірити роботу Meta CAPI

  1. Відкрийте Meta Events Manager → ваш піксель → вкладка Test Events.
  2. Скопіюйте тестовий код (TEST12345) та додайте його в запити CAPI як параметр test_event_code.
  3. Зробіть тестову покупку або подію на сайті.
  4. У розділі Test Events ви побачите отримані події в реальному часі.
  5. Перевірте розділ Activity — тут відображається якість та повнота даних.
  6. Зверніть увагу на Event Match Quality (EMQ) — бажаний показник від 6 до 10. Чим більше даних про користувача ви передаєте (email + телефон + IP), тим вищий EMQ.

Типові помилки при налаштуванні CAPI

  1. Немає дедублікації. Запускаєте Pixel і CAPI без event_id — Meta рахує двійники, ROAS виглядає завищеним.
  2. Затримка надсилання. Відправляєте CAPI-подію через кілька годин після реальної конверсії. Поле event_time має відповідати реальному часу події (не часу відправки).
  3. Неправильне хешування. Email треба привести до нижнього регістру та обрізати пробіли ПЕРЕД хешуванням: hashlib.sha256(email.lower().strip().encode()).
  4. Відсутній action_source. Це обов’язкове поле. Для сайту — "website".
  5. Тільки CAPI без Pixel. Деякі поведінкові дані (ViewContent, AddToCart) краще відстежувати пікселем. Оптимальна стратегія — обидва канали.

Часті запитання про Meta Conversions API

Чи обов’язково мати Meta Pixel для роботи CAPI?

Ні, технічно CAPI може працювати самостійно. Але Meta рекомендує використовувати обидва інструменти: Pixel для поведінкових даних у браузері, CAPI — для фінальних конверсій на сервері. Разом вони забезпечують найповніше покриття.

Чи відповідає CAPI вимогам GDPR?

CAPI сам по собі є більш privacy-friendly за Pixel, оскільки не використовує браузерні cookie. Однак відповідальність за отримання згоди від користувача (Consent Mode) залишається за вами. Перед відправкою даних через CAPI переконайтеся, що у вас є юридична підстава (consent або legitimate interest) для обробки персональних даних.

Скільки часу займає налаштування CAPI?

Залежить від методу: партнерська інтеграція (WooCommerce, Shopify) — від 30 хвилин до 2 годин. Server-Side GTM — від 4 до 8 годин (потрібне налаштування Google Cloud). Пряма серверна інтеграція — від 1 до 3 днів залежно від складності бекенду.

Що таке Event Match Quality (EMQ)?

Event Match Quality (EMQ) — показник від 0 до 10 в Meta Events Manager, який вимірює, наскільки якісно ваші серверні події збігаються з профілями користувачів Facebook. Вищий EMQ = краща атрибуція = точніша оптимізація. Для досягнення EMQ 7+ передавайте: email (хешований), телефон (хешований), IP-адресу, User Agent, fbp/fbc cookie.

Чи можна через CAPI передавати офлайн-конверсії?

Так. CAPI підтримує поле action_source: "physical_store" та інші офлайн-джерела. Це дозволяє передавати дані з CRM, касових систем, кол-центрів — і атрибутувати офлайн-продажі до онлайн-реклами.

Висновок

Meta Conversions API — це вже не опція, а необхідність для будь-якого бізнесу, який серйозно вкладається в рекламу в Facebook та Instagram. В умовах iOS 14.5+, адблокерів і обмежень cookie тільки Pixel втрачає від 30 до 40% даних про конверсії — а це пряме погіршення оптимізації рекламних кампаній.

Рекомендований підхід: запускайте Pixel + CAPI одночасно, обов’язково налаштуйте дедублікацію через event_id, і стежте за Event Match Quality. Якщо ви тільки починаєте — скористайтесь партнерською інтеграцією через Events Manager. Якщо потрібен максимальний контроль — Server-Side GTM або пряма серверна інтеграція.

Маєте питання щодо налаштування Meta CAPI для вашого проєкту? Зверніться до Spilno Agency — ми налаштуємо серверне відстеження та повернемо втрачені дані конверсій.

Покрокова інструкція: підключення CAPI через Server-Side GTM

Крок 1: Відкрийте Events Manager і оберіть набір даних

Крок 1: Відкрийте Events Manager і оберіть набір даних

Перейдіть у Meta Events Manager та відкрийте набір даних (датасет), до якого хочете підключити CAPI. Якщо набору ще немає — натисніть «Підключити дані» для створення нового.

Крок 2: Прив’яжіть рекламні акаунти

Крок 2: Прив'яжіть рекламні акаунти

Оберіть рекламні акаунти, які матимуть доступ до цього набору даних. Зазвичай це ваш основний акаунт Meta Ads.

Крок 3: Натисніть «Підключити дані»

Крок 3: Натисніть «Підключити дані»

На головному екрані Events Manager натисніть кнопку «Підключити дані», щоб розпочати процес підключення джерела.

Крок 4: Оберіть джерело «Інтернет»

Крок 4: Оберіть джерело «Інтернет»

У списку джерел даних оберіть «Інтернет» — це означає трекінг подій на вашому вебсайті. Натисніть «Далі».

Крок 5: Оберіть «Налаштуйте Conversions API»

Крок 5: Оберіть «Налаштуйте Conversions API»

На екрані підключення даних сайту виберіть опцію «Налаштуйте Conversions API». Meta показує орієнтовне зниження CPA на ~19% при використанні CAPI.

Крок 6: GTM-метод рекомендовано

Крок 6: GTM-метод рекомендовано

Meta автоматично рекомендує налаштування CAPI через Google Tag Manager, відзначаючи зниження ціни за результат на ~31%. Натисніть «Далі».

Крок 7: Що вам знадобиться

Крок 7: Що вам знадобиться

Для налаштування CAPI через GTM потрібні: веб-контейнер GTM (вже встановлений на сайті) і серверний контейнер GTM (новий, на Google Cloud або Stape). Весь процес займає ~30 хвилин і не потребує розробника.

Крок 8: Виберіть веб-контейнер GTM

Крок 8: Виберіть веб-контейнер GTM

З випадаючого списку виберіть акаунт і веб-контейнер Google Tag Manager, який вже встановлений на вашому сайті. Якщо GTM ще не підключений — спочатку додайте його на сайт.

Крок 9: Виберіть хостинг для серверного контейнера

Крок 9: Виберіть хостинг для серверного контейнера

Оберіть платформу для серверного контейнера: Google Cloud (~$5–20/міс, Auto-provisioning за ~30 хв) або Stape (freemium, простіше налаштування за ~15 хв). Для новачків рекомендуємо Google Cloud — пряма інтеграція з GTM.

Крок 10: Створіть новий серверний контейнер у GTM

Крок 10: Створіть новий серверний контейнер у GTM

Перейдіть до свого акаунту Google Tag Manager і натисніть «Створити контейнер». Вам потрібен новий контейнер з типом платформи «Сервер».

Крок 11: Вкажіть тип платформи «Сервер»

Крок 11: Вкажіть тип платформи «Сервер»

Введіть назву контейнера (наприклад, yoursite.com - server) і в полі «Платформа» оберіть «Сервер». Натисніть «Створити».

Крок 12: Автоматичне надання сервера Google Cloud

Крок 12: Автоматичне надання сервера Google Cloud

Оберіть «Автоматично надати сервер» — GTM розгорне Cloud Run-контейнер у вашому проекті Google Cloud. Це найпростіший спосіб без ручного налаштування інфраструктури.

Крок 13: Виберіть платіжний акаунт і створіть сервер

Крок 13: Виберіть платіжний акаунт і створіть сервер

Виберіть платіжний акаунт Google Cloud (або створіть новий) і натисніть «Вибрати платіжний обліковий запис і створити сервер». Google автоматично розгорне Cloud Run-інстанс (~5–10 хвилин).

Крок 14: Сервер успішно створено

Крок 14: Сервер успішно створено

GTM покаже URL серверного контейнера (формат: https://server-side-tagging-xxxxxxxx-uc.a.run.app) і ID проекту Google Cloud. Скопіюйте цей URL — він знадобиться на наступному кроці.

Крок 15: GTM — сервер створено. Скопіюйте URL

Крок 15: GTM — сервер створено. Скопіюйте URL

Після автоматичного розгортання GTM покаже діалог «Сервер створено» з конфігурацією контейнера та URL-адресою Cloud Run. Скопіюйте цей URL — він знадобиться в наступному кроці для Meta Events Manager.

Крок 16: Знайдіть ID вимірювання GA4

Крок 16: Знайдіть ID вимірювання GA4

Перейдіть до Google Analytics 4 → Адміністратор → Потоки даних → ваш потік. Тут ви побачите Ідентифікатор показника у форматі G-XXXXXXXXXX. Він потрібен Meta для коректної атрибуції.

Крок 17: Скопіюйте ID вимірювання GA4

Крок 17: Скопіюйте ID вимірювання GA4

Натисніть на іконку копіювання поруч з Ідентифікатором показника (G-XXXXXXXXXX). Внизу екрана з’явиться підтвердження «Скопійовано в буфер обміну».

Крок 18: Введіть ID GA4 і опублікуйте

Крок 18: Введіть ID GA4 і опублікуйте

Поверніться до Meta Events Manager. На кроці «Опубліковати» вставте скопійований ID вимірювання GA4 у відповідне поле і натисніть «Опублікувати». Готово — CAPI через GTM підключено!

Валерій Красько Spilno Agency Всі статті автора →

Залишились питання?

Розкажіть про задачу — відповімо по темі статті


← Повернутися до блогу