> For the complete documentation index, see [llms.txt](https://docs.pwa.bot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pwa.bot/poleznoe/makrosy-i-sub-id.md).

# Макросы и SUB ID

\*Оригинал статьи здесь: <https://fbm.red/pwa-subs/>

## Использование Макросов и Sub ID (сабов) в Арбитраже Трафика

Арбитраж трафика — это стратегический процесс, требующий тщательного отслеживания и анализа данных для эффективного управления кампаниями. В этом контексте макросы и Sub ID играют ключевую роль, позволяя более глубоко понимать и оптимизировать источники трафика. Рассмотрим, как эти инструменты помогают арбитражникам в их деятельности.

## **Макросы**

Макросы — это динамические переменные, вставляемые в URL-ссылки, которые передают информацию о кликах и конверсиях. Они могут содержать данные о кампании, креативе, устройстве пользователя, географическом местоположении и других параметрах. Важно отметить, что макросы автоматизируют процесс сбора данных, исключая необходимость ручного ввода информации.

Например, макросы могут выглядеть так:

```url
http://example.com/?source={source}&campaign={campaign_id}&device={device_type}
```

Здесь используются макросы для определения источника трафика, идентификатора кампании и типа устройства пользователя. В этом примере макросы - это:&#x20;

`{source}` - источник трафика

`{campaign_id}` - id рекламной кампании

`{device_type}` - тип устройства.

{% hint style="info" %}
Чаще всего макросы указываются **в одинарных фигурных скобках** вот так - `{nazvanie_macrosa}`. Но бывают сервисы/трекеры/рекламные сети и др., где используется другой синтаксис. Например **в Facebook макросы пишутся в двойных фигурных скобках**, к примеру, макрос `{{campaign.id}}` подставит в URL объявления id кампании.
{% endhint %}

### Доступные макросы в Facebook

Список доступных макросов можно посмотреть [здесь](/nastroiki-facebook/makrosy-facebook.md).

### Для чего вообще нужны макросы?

Для того, чтобы вместо них подставлялись **РЕАЛЬНЫЕ** **ЗНАЧЕНИЯ** параметров. Ведь, каждый сервис имеет свой собственный набор данных. И эти данные обычно нужно куда-то передать.&#x20;

Например, у вас есть в фейсбуке есть 5 кампаний, в каждой кампании по 5 адсетов, в каждом адсете по 5 объявлений. Итого 125 объявлений 😱. И вы в своем трекере/ПП/системе аналитики хотите видеть какие из них приносят конверсии. Значит нужны какие то уникальные параметры для каждого объявления. Например, мы будем использовать id кампании, id адсета и id объявления. И здесь два пути: либо размечать каждое объявление руками (что, по-любому, приведет к ошибкам), либо использовать одну ссылку для всех объявлений, но с макросами.

Ссылка с макросами в этом случае будет выглядеть вот, к примеру, так:

`https://example.com/?param1={{campaign.id}}&param2={{adset.id}}&param3={{site_source_name}}&param4={{placement}}&param5={{ad.id}}`

А реальные переходы будут выглядеть примерно так:

`https://example.com/?param1=6604771447991&param2=6604771448191&param3=ig&param4=instagram_feed&param5=6604771448391`

То есть ссылке везде одинаковая, но для каждого объявления вы будете видеть уникальные значения параметров.

{% hint style="info" %}
Вместо **`param1..param5`**, соответственно, могут быть использованы любые другие названия параметров. Это зависит от того, куда вы отправляете трафик (каждый трекер и ПП умеют принимать по своему. К примеру это могут быть, так называемые САБЫ (\*арбитражный сленг), то есть **`sub1...sub5`** или **`sub_id_1...sub_id_5`** или **`subId1...subId5`** или **`subacc1...subacc5`**
{% endhint %}

{% hint style="success" %}
А pwa.bot умеет принимать АБСОЛЮТНО любые названия параметров. Далее расскажем как их можно трансформировать в то, что принимает трекер или ПП.
{% endhint %}

## **Sub ID**

Sub ID — это специфические метки, используемые в CPA-сетях и партнерских программах для идентификации различных параметров, таких как источник трафика, креатив или рекламная платформа. Sub ID помогают арбитражникам отслеживать и анализировать эффективность различных элементов их кампаний.

Пример использования Sub ID:

```ruby
http://example.com/?sub1=google&sub2=cpc&sub3=video_ad&sub4=male
```

Здесь `sub1` указывает на источник трафика, `sub2` — на тип кампании, `sub3` — на креатив, а `sub4` — на целевую аудиторию.

Синтаксис Сабов может отличаться у каждой Партнерки или трекера.&#x20;

### Параметры в Keitaro

По умолчанию сабы в Keitaro пишутся вот так: `sub_id_1` - `sub_id_30`

[Документация Keitaro](https://docs.keitaro.io/ru/campaigns-and-streams/campaign-parameters.html).

### Параметры в Binom

У Binom параметры (и сабы) называются токенами. И их можно называть самостоятельно.

[Документация Binom](https://docs.binom.org/create-source.php#tokens).

### Для чего вообще нужны Сабы?

Для того, чтобы трекер или Партнерка могли принять и сохранить нужные параметры. Чаще всего после конверсий, ПП отправляет постбеки с данными о конверсии. И чтобы источник трафика (трекер или конструктор PWA - pwa.bot) мог правильно сматчить их со своими данными визитов и далее передать конверсию в источник трафика, например, Facebook.

## Матчинг параметров в pwa.bot

Рассмотрим на примере. Итак, Мы указали в объявлении FB в URL объявления вот такую ссылку:

`https://example.com/?param1={{campaign.id}}&param2={{adset.id}}&param3={{site_source_name}}&param4={{placement}}&param5={{ad.id}}&buyerId=b1`

А как мы знаем, тогда в PWA попадают пользователи по ссылкам вида:

`https://example.com/?param1=6604771447991&param2=6604771448191&param3=ig&param4=instagram_feed&param5=6604771448391&buyerId=b1`

То есть с уже подставленными значениями в параметры `param1`, `param2`, `param3`, `param4`, `param5`. А значение пареметра `buyerId` **указано статично, а не макросом**.

Допустим, что параметр `buyerId` содержит id баера, значение которого мы хотим передать в ПП. Мы его прописали статично в URL объявлений. И еще, пусть мы хотим передать в ПП id рекламной кампании.

Пусть ПП умеет принимать только параметры `sub1`, `sub2`, `sub3`, `sub4` и `sub5.` И умеет принимать id пользователя или click id в параметре `sub10`.

{% hint style="success" %}
pwa.bot позволяет на лету передать в ПП **значение** любого параметра, который был у визита. А уникальное значение id пользоветеля, которое pwa.bot назначает каждому пользователю доступно через макрос **`{user_id}`**
{% endhint %}

Давайте передадим id баера в `sub1`, id адсета в `sub2` и id юзера, назначенный в PWA в `sub10`. Тогда нам нужно прописать в ссылке на оффер вот так:

`https://offerdomain.com/?sub1={buyerId}&sub2={param2}&sub10={user_id}`

тогда в ПП придет пользователь у которого будет:

**sub1=id баера** (статическое значение, из URL в Facebook)

**sub2=id адсета** (динамическое значение, из URL в Facebook)

**sub10=id пользователя PWA.bot** (динамическое значение из pwa.bot)

<figure><img src="/files/Qk9Rrj5Xg13Co8ygYA3W" alt="" width="563"><figcaption></figcaption></figure>

### Заключение

Макросы, UTM-метки и Sub ID — это мощные инструменты в арбитраже трафика, которые позволяют более глубоко понимать поведение пользователей и эффективность кампаний. Их правильное использование помогает арбитражникам оптимизировать свои усилия, повышать рентабельность и максимально использовать доступные данные для принятия обоснованных решений.
