СтатьяАналитикаРеклама

Как пересчитать рекламные расходы в BYN и сохранить курс

Как выбрать дату курса, учесть Cur_Scale, пересчитать USD, EUR и RUB и сохранить исходные поля для проверки CPL.

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

Если расходы из рекламных кабинетов приходят в USD, EUR и RUB, сначала выберите правило даты курса, а затем сохраняйте рядом исходную сумму, валюту, масштаб и курс. Пересчёт только итоговой суммы в конце месяца нельзя воспроизвести: непонятно, какой курс применён к каждой строке и почему CPL изменился.

Для управленческого отчёта удобно переводить ежедневный расход по официальному курсу НБРБ на дату этой строки. Формула одна: amount × Cur_OfficialRate ÷ Cur_Scale. Если банк или платёжный документ уже показывает фактически списанные BYN, храните эту сумму отдельно: официальный курс не заменяет курс платёжной системы, комиссию и бухгалтерское правило.

Зафиксируйте правило до расчёта

Есть несколько допустимых дат: день расхода, день списания, день документа или последний день отчётного периода. Они отвечают на разные вопросы. Дневной курс помогает сопоставить рекламную активность с датой отчёта. Фактическое списание в BYN нужно для сверки денег. Курс на конец месяца подходит для отдельной управленческой оценки, если команда заранее так договорилась.

Запишите правило одной фразой, например: «Для дневного маркетингового отчёта расход пересчитываем по официальному курсу НБРБ на дату расхода; факт оплаты сверяем по выписке и не заменяем им дневную строку». Тогда два аналитика получат одинаковый результат.

Не смешивайте правила внутри одной колонки. Если половина строк пересчитана по дню расхода, а половина — по дню оплаты, сумма выглядит точной, но сравнение кампаний перестаёт быть воспроизводимым.

Учитывайте масштаб валюты

В ответе НБРБ есть два поля, нужных для пересчёта:

  • Cur_OfficialRate — официальное значение в BYN;
  • Cur_Scale — количество единиц иностранной валюты, для которого указано значение.

Для USD и EUR 8 октября 2026 года масштаб равен 1. Для RUB в тот же день курс 3,5871 указан за 100 рублей. Поэтому 12 500 RUB нельзя умножать на 3,5871 напрямую: результат нужно разделить на 100.

Три рекламных расхода в USD, EUR и RUB пересчитаны в BYN по формуле с Cur_OfficialRate и Cur_Scale.

Учебный расчёт использует официальные курсы НБРБ на 8 октября 2026 года; расходы кампаний условные.

В примере получаются три строки:

Исходный расходКурс и масштабРасход в BYN
125,40 USD3,0667 за 1 USD384,56
89,90 EUR3,4338 за 1 EUR308,70
12 500 RUB3,5871 за 100 RUB448,39
Итого1 141,65

Каждая строка округляется до двух знаков только после деления на масштаб. Если округлять курс до меньшего числа знаков или сначала считать месячный итог в валюте, а затем переводить его одной датой, результат может отличаться.

Сохраните исходные данные рядом с результатом

Минимальная таблица для проверки содержит:

ПолеЗачем оно нужно
dateдата расхода по выбранному правилу
platform и campaignисточник строки и объект анализа
amountисходная сумма без пересчёта
currencyисходная валюта
rate_dateдата применённого курса
cur_scaleмасштаб валюты из ответа НБРБ
official_rate_bynсохранённый официальный курс
amount_bynрезультат пересчёта

Одного amount_byn недостаточно. Через месяц официальный источник всё ещё позволит получить исторический курс, но без rate_date, currency и cur_scale нельзя доказать, как появилась конкретная сумма.

Сохраняйте и сам ответ источника либо его идентификатор загрузки. Это защищает расчёт от тихого изменения логики импорта. В нашем примере JSON НБРБ лежит рядом с CSV расходов, а скрипт читает его как неизменяемый вход.

Воспроизведите пересчёт на учебном файле

В комплекте есть условный ad-spend.csv, сохранённый ответ НБРБ за 8 октября и скрипт на стандартной библиотеке Python. Команда:

python3 convert_spend.py \
  ad-spend.csv \
  nbrb-rates-2026-10-08.json \
  ad-spend-byn.csv

возвращает:

rows=3 total_byn=1141.65

Скрипт использует Decimal, делит официальный курс на масштаб, округляет каждую строку до 0,01 BYN и добавляет все поля проверки. Повторный запуск на тех же входных файлах даёт CSV с тем же SHA-256: 3d79ea8459cb5ce5634876c0d1f867e6f2cb28f34407f9e1b4dd746920962641.

Для рабочего отчёта добавьте проверки до расчёта:

  1. валюта заполнена и входит в разрешённый список;
  2. для каждой даты найден курс;
  3. Cur_Scale больше нуля;
  4. исходная сумма не была уже переведена платформой;
  5. сумма строк в исходной валюте совпадает с выгрузкой кабинета;
  6. после пересчёта не появилось потерянных или продублированных строк.

Отделите официальный курс от фактического списания

Рекламная система может показать 125,40 USD, НБРБ — официальный курс на дату, а банк — другую сумму в BYN. Это не обязательно ошибка: на платёж влияют дата проведения, курс банка или платёжной системы и комиссия.

Храните два показателя:

  • spend_byn_report — расход по принятому курсу для сопоставимого маркетингового отчёта;
  • charged_byn — фактически списанная сумма по выписке или платёжному документу.

Разница между ними — отдельная строка сверки. Не распределяйте её по кампаниям без зафиксированного правила. Иначе CPL начнёт зависеть от случайного способа разнести комиссию и курсовую разницу.

Если кабинет уже экспортирует расходы в BYN, проверьте его метод пересчёта и дату. Не переводите такую колонку повторно. Для отчёта в нескольких валютах полезно сохранять исходную сумму даже тогда, когда платформа отдаёт готовый эквивалент.

Проверьте итог перед расчётом CPL

После пересчёта сначала сравните расходы по платформе, кампании и дате. Только затем объединяйте их с лидами и считайте стоимость результата. Если при соединении таблиц расходы выросли, причина может быть в размножении строк, а не в валюте; это разобрано в статье о задвоении расходов после объединения таблиц.

Формула CPL остаётся простой: расход в BYN делится на число лидов с тем же определением, периодом и правилом атрибуции. Сам расчёт и границы показателя есть в ответе «Как рассчитать стоимость лида». Для решения о допустимом CPL добавьте маржу и конверсию в продажу по материалу о юнит-экономике рекламы.

Ограничения

Официальный курс НБРБ подходит как прозрачное правило управленческого пересчёта, но сам по себе не подтверждает сумму оплаты и не заменяет требования бухгалтерского или налогового учёта. Для финансовой отчётности используйте правило организации и первичные документы.

Учебный пример показывает механику одной даты. Если отчёт охватывает месяц, получайте курс для каждой даты расхода либо используйте другое заранее утверждённое правило. Не подставляйте ближайший найденный курс молча: выходные, отсутствие валюты в ответе и ошибка загрузки должны оставаться видимыми состояниями.

Источники

Материал подготовлен редакцией WiseLab с помощью AI. Источники и фактические утверждения проверены при подготовке.

Загружаем рейтинг…

Насколько полезен материал?

Выберите оценкуСлева — меньше пользы, справа — больше

Загружаем вашу оценку…

Что думаете?

Загружаем комментарии…

СЛЕДУЮЩИЙ ШАГ

Что ещё поможет в этой задаче