За какой период маркетплейс отдаёт данные о продажах — и почему аналитика не «достаёт» дальше

· Команда «В плюсе»

Подключили магазин, открыли отчёт — а продажи видно только за последние несколько месяцев, хотя товар продаётся уже год. Это не недоработка сервиса и не жадность площадки: у каждого маркетплейса есть предел, докуда он вообще хранит историю заказов и продаж, и аналитика не может показать то, чего у площадки уже нет. Разберём, у кого какое окно, где оно правда упирается в потолок площадки, а где — всего лишь наша настройка, и что из этого следует на практике.

«Посмотрю аналитику за прошлый год» — не работает нигде

Первое, что стоит понять: окно площадки и архив сервиса аналитики — разные вещи, и путать их значит ждать невозможного. Маркетплейс отдаёт историю заказов и продаж через API только за ограниченный период назад от сегодняшнего дня. Это ограничение самой площадки: она либо физически не хранит данные глубже своего окна, либо отдаёт их только оттуда. Если магазин продавал целый год, а аналитику к нему подключили только сейчас, «посмотреть прошлый год» не сможет никто — ни мы, ни любой другой сервис, ни сам продавец в личном кабинете площадки. Данных там не «скрыто» и не «заблокировано» — их там физически больше нет.

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

У каждой площадки своё число, и они не об одном и том же

Здесь и кроется главная путаница. У Wildberries, Ozon, Яндекс.Маркета и Авито разная глубина истории, и за похожими на вид «90 днями» у разных площадок стоят разные вещи: где-то это стена, в которую упирается даже сама площадка, а где-то — просто наша обычная настройка синхронизации, за которой при желании есть что добрать.

ПлощадкаОкноЧто это значит
Wildberries90 днейПотолок площадки. Wildberries физически не хранит данные о заказах и продажах дольше 90 дней от даты заказа или продажи. Просить глубже бессмысленно — там пусто у всех, включая сам кабинет продавца.
Ozon90 дней + добор до 365Это наше окно синхронизации, а не потолок площадки — у Ozon данные глубже есть. Обычный синк просит последние 90 дней, но если магазин пропустил несколько синхронизаций подряд — из-за паузы, неоплаты или просроченного ключа, — следующий синк сам добирает пропущенное, углубляясь на срок до года назад.
Яндекс.Маркет90 днейПотолок площадки. Запрос отчёта длиннее трёх месяцев Маркет отбивает ошибкой — глубже он попросту не отдаёт данные, и наше окно синка выбрано ровно под этот предел.
Авито190 днейПотолок площадки, и окно скользящее. По нашим замерам API реально отдаёт заказ примерно до 185 дней его возраста — на 194-й день заказ из выдачи уже пропадает. Мы запрашиваем чуть шире, 190 дней: запас ничего не стоит, лишние дни в запросе просто не находят ответа. «Скользящее» — ключевое слово: окно не растёт со временем, а сдвигается вместе с сегодняшним днём. Не синхронизировались вовремя — те дни, что выпали за скользящий край, площадка уже не отдаст.

Итого три площадки из четырёх упираются в собственный потолок: глубже данных нет ни у кого, включая саму площадку. У Ozon те же 90 дней — это наша настройка, а не предел площадки, и только здесь пропуск синхронизации можно закрыть задним числом. Если сумма, которая пришла по конкретному заказу Авито, кажется меньше цены заказа — это отдельная история, к окну данных отношения не имеющая: разбор в статье «Почему на Авито пришло меньше, чем цена заказа».

Глубина истории продаж по площадкам: у кого потолок API, а у кого — окно нашего синкаWildberries90 дней — потолок площадкиOzon90 дней наше окно + добор до 365Я.Маркет90 дней — потолок площадкиАвито190 дней — скользящее окносегодня90190365дней назадДанные точно естьМожно догнать синком — только OzonДанных нет ни у кого
Глубина истории продаж по площадкам от сегодняшнего дня. Wildberries и Яндекс.Маркет — 90 дней, это потолок площадки. Авито — скользящее окно площадки около 185 дней; на шкале отложено 190 — столько мы запрашиваем с запасом. У Ozon 90 дней — это наше окно синхронизации, а не предел площадки: пропуск можно догнать синком до 365 дней назад.

Прикиньте на своих цифрах

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

Почему пропущенный период не наверстать

Если магазин продаёт год, а аналитику подключили только сейчас, — этот год истории уже не появится, и дело не в настройках сервиса. Окно площадки — это не история, которую сервис не успел забрать, а сама история: того, что было раньше него, площадка не хранит вовсе. Для Wildberries, Маркета и Авито это значит буквально следующее: заказы полугодовой давности при подключении сегодня не увидит никто, сколько раз ни запускай синхронизацию, — их просто нет в источнике.

У Ozon чуть мягче, но не настолько, чтобы расслабляться. Годовой добор — это потолок нашей стороны, выбранный с запасом: сама площадка отдаёт данные заметно дальше, но за пределами года у нас нет способа отличить пустой ответ «продаж не было» от «данные уже кончились». Заказу, которому на момент подключения было, скажем, полтора года, это уже не поможет — он всё равно не приедет.

Отсюда и практический вывод, ради которого вообще стоило разбираться в этих цифрах: подключать магазин к аналитике нужно не тогда, когда она внезапно понадобилась — к отчёту для инвестора или к спору с бухгалтером, — а сразу, как только пошли первые продажи. Это не претензия к площадке и не повод винить сервис: это просто то, как устроено хранение данных на стороне маркетплейса.

Что происходит после подключения

Хорошая новость в том, что после подключения магазина история работает по другому принципу. С даты, когда синхронизация впервые прошла, каждый заказ записывается в нашу базу и остаётся в ней — заказы не удаляются по сроку давности. Технически это устроено через upsert: при повторной синхронизации существующий заказ обновляется (например, поменялся статус), а не создаётся заново и не стирается просто потому, что стал «старым». Как устроена синхронизация по каждой площадке — в статье «Раздел „Магазины": синхронизация».

Стоит сформулировать это аккуратно: не «мы храним всё вечно», а «то, что уже забрали, не пропадает по сроку». У части служебных таблиц — журналов синхронизации, отметок об отправленных письмах — есть своя ретенция, они чистятся по времени, потому что это техническая изнанка сервиса, а не данные о продажах. Заказы, начисления, удержания и реклама в их число не входят — в этом и состоит весь смысл держать отдельную аналитику поверх кабинета площадки, который сам всё забывает через 90–190 дней.

Именно на этом накопленном архиве строится дальнейший расчёт: прибыль по заказу считается с учётом комиссии, логистики, себестоимости и налога, и чем длиннее история — тем понятнее сравнивать периоды между собой, а не только смотреть на последние три месяца. Если цифры в отчёте на первый взгляд расходятся с тем, что показывает сам кабинет площадки, — это отдельная тема, разобранная в статье «Почему цифры отличаются от кабинета Wildberries».

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

Посмотрите на своих цифрах

Прикиньте прибыль по своему товару прямо на калькуляторе — без регистрации и карты.