[{"data":1,"prerenderedAt":1178},["ShallowReactive",2],{"article-alternates":3,"article-\u002Fru\u002Fmarketing\u002Fmmm-incrementality-2026-attribution":13},{"i18nKey":4,"paths":5},"marketing-004-2026-05",{"de":6,"en":7,"es":8,"fr":9,"it":10,"ru":11,"tr":12},"\u002Fde\u002Fmarketing\u002Fmmm-incrementality-2026-attribution-setup","\u002Fen\u002Fmarketing\u002Fmmm-incrementality-2026-attribution-setup","\u002Fes\u002Fmarketing\u002Fmmm-incrementality-2026-attribution-setup","\u002Ffr\u002Fmarketing\u002Fmmm-incrementality-2026-attribution-setup","\u002Fit\u002Fmarketing\u002Fmmm-incrementality-2026-attribution-setup","\u002Fru\u002Fmarketing\u002Fmmm-incrementality-2026-attribution","\u002Ftr\u002Fmarketing\u002Fmmm-incrementality-2026nin-attribution-setupi",{"_path":11,"_dir":14,"_draft":15,"_partial":15,"_locale":16,"title":17,"description":18,"publishedAt":19,"modifiedAt":19,"category":14,"i18nKey":4,"tags":20,"readingTime":26,"author":27,"body":28,"_type":1172,"_id":1173,"_source":1174,"_file":1175,"_stem":1176,"_extension":1177},"marketing",false,"","MMM + Incrementality: Attribution Setup 2026","Robyn, Meta Lift, geo experiments — когда что использовать? Как построить правильную архитектуру измерений в post-cookie эпохе?","2026-05-14",[21,22,23,24,25],"mmm","incrementality","attribution","robyn","meta-lift",8,"Roibase",{"type":29,"children":30,"toc":1162},"root",[31,39,46,51,56,70,76,81,86,91,98,266,276,282,287,292,407,939,944,950,955,965,975,985,995,1005,1021,1031,1037,1042,1047,1055,1060,1101,1107,1117,1127,1137,1147,1151,1156],{"type":32,"tag":33,"props":34,"children":35},"element","p",{},[36],{"type":37,"value":38},"text","Last-click attribution мёртв, browser signals ненадёжны, Conversion API зашумлен — в 2026 году измерение performance marketing встало на совершенно новый фундамент. Marketing Mix Modeling (MMM) перестал быть тяжёлым инструментом только для годового бюджетного планирования CPG-брендов; теперь это динамическая система, встроенная в еженедельный цикл решений и постоянно калибруемая incrementality-тестами. Meta открыла исходный код Robyn, Google перенёс свой MMM stack в BigQuery ML, Snapchat запустил geo-experiment API в production. Вопрос уже не \"MMM или incrementality?\" — а \"какой метод в каком слое, и как я их вместе использую?\"",{"type":32,"tag":40,"props":41,"children":43},"h2",{"id":42},"почему-mmm-актуален-именно-сейчас",[44],{"type":37,"value":45},"Почему MMM Актуален Именно Сейчас",{"type":32,"tag":33,"props":47,"children":48},{},[49],{"type":37,"value":50},"Cookies исчезли, ATT opt-in на уровне 25%, Privacy Sandbox всё ещё неопределён — платформенная аналитика с 2024 года работает с ошибкой 40-60% (Forrester 2025). В такой ситуации принимать решения на основе last-click модели или data-driven attribution из Google Analytics — это как ездить на высокой скорости с завязанными глазами. MMM — единственная макро-фреймворк: оценивает все каналы через совокупный spend и результат, работает через регрессию, не требует cookies, извлекает причинно-следственные связи из временных рядов.",{"type":32,"tag":33,"props":52,"children":53},{},[54],{"type":37,"value":55},"Новизна MMM в 2026 — это не годовое, а еженедельное обновление моделей, встроенное в автоматический pipeline, использование first-party сигналов от sGTM и CDP. Robyn от Meta делает это реальностью: открытый исходный код, R\u002FPython, еженедельный refresh, Bayesian ridge regression, автоматический hyperparameter tuning для adstock и saturation curves. Эра \"6 месяцев на построение модели\" закончилась — теперь 2-недельный спринт, и модель в production.",{"type":32,"tag":33,"props":57,"children":58},{},[59,61,68],{"type":37,"value":60},"Пример: DTC-бренд с 15 каналами подключил Robyn к BigQuery. Еженедельные данные по spend, impressions, revenue через ",{"type":32,"tag":62,"props":63,"children":65},"code",{"className":64},[],[66],{"type":37,"value":67},"bq load",{"type":37,"value":69}," закачали в pipeline. Модель за 3 недели истории данных рассчитала для каждого канала ROAS curve, adstock (delay эффекта рекламы) и saturation (убывающая отдача при повышении spend). Результат: TikTok ROAS на 18% ниже прогноза платформы — потому что last-click attribution переоценивал TikTok. А Google Search, наоборот, на 22% выше.",{"type":32,"tag":40,"props":71,"children":73},{"id":72},"где-включается-incrementality-test",[74],{"type":37,"value":75},"Где Включается Incrementality Test",{"type":32,"tag":33,"props":77,"children":78},{},[79],{"type":37,"value":80},"MMM смотрит макро — совокупный эффект всех каналов через регрессию временных рядов. Но он не может ответить: \"Если я потрачу на Meta на $10k больше на этой неделе, что будет?\" Сюда приходит incrementality test: проводит реальный эксперимент, держит контрольную группу, измеряет lift.",{"type":32,"tag":33,"props":82,"children":83},{},[84],{"type":37,"value":85},"Meta встроила Conversion Lift test в платформу: случайно разбивает пользователей на holdout, не показывает им объявления, в конце измеряет разницу в конверсиях между двумя группами. В 2026 году это уже не только на Meta — Google Ads предлагает Geo Experiments (контрольные группы по географии), TikTok запустил Brand Lift API, Snapchat — Snap Lift Studio. Все используют один принцип: рандомизация и контролируемое воздействие.",{"type":32,"tag":33,"props":87,"children":88},{},[89],{"type":37,"value":90},"Ключевое отличие: MMM отвечает \"что было раньше\", incrementality — \"что будет дальше\". MMM извлекает корреляцию из наблюдаемых данных, incrementality тестирует причинно-следственную связь. Идеальная setup — комбинировать: MMM даёт макро-тренд + ROI benchmark, incrementality валидирует канальные тактики.",{"type":32,"tag":92,"props":93,"children":95},"h3",{"id":94},"какой-тест-когда-применять",[96],{"type":37,"value":97},"Какой Тест Когда Применять",{"type":32,"tag":99,"props":100,"children":101},"table",{},[102,136],{"type":32,"tag":103,"props":104,"children":105},"thead",{},[106],{"type":32,"tag":107,"props":108,"children":109},"tr",{},[110,116,121,126,131],{"type":32,"tag":111,"props":112,"children":113},"th",{},[114],{"type":37,"value":115},"Метод",{"type":32,"tag":111,"props":117,"children":118},{},[119],{"type":37,"value":120},"Когда",{"type":32,"tag":111,"props":122,"children":123},{},[124],{"type":37,"value":125},"Длительность",{"type":32,"tag":111,"props":127,"children":128},{},[129],{"type":37,"value":130},"Стоимость",{"type":32,"tag":111,"props":132,"children":133},{},[134],{"type":37,"value":135},"Достоверность",{"type":32,"tag":137,"props":138,"children":139},"tbody",{},[140,173,204,235],{"type":32,"tag":107,"props":141,"children":142},{},[143,153,158,163,168],{"type":32,"tag":144,"props":145,"children":146},"td",{},[147],{"type":32,"tag":148,"props":149,"children":150},"strong",{},[151],{"type":37,"value":152},"MMM (Robyn)",{"type":32,"tag":144,"props":154,"children":155},{},[156],{"type":37,"value":157},"Квартальное\u002Fгодовое планирование, оптимизация микса",{"type":32,"tag":144,"props":159,"children":160},{},[161],{"type":37,"value":162},"2-4 недели setup, еженедельный refresh",{"type":32,"tag":144,"props":164,"children":165},{},[166],{"type":37,"value":167},"Низкая (open source)",{"type":32,"tag":144,"props":169,"children":170},{},[171],{"type":37,"value":172},"Средняя (корреляция)",{"type":32,"tag":107,"props":174,"children":175},{},[176,184,189,194,199],{"type":32,"tag":144,"props":177,"children":178},{},[179],{"type":32,"tag":148,"props":180,"children":181},{},[182],{"type":37,"value":183},"Meta Conversion Lift",{"type":32,"tag":144,"props":185,"children":186},{},[187],{"type":37,"value":188},"Тактические решения по кампаниям, новые креативы",{"type":32,"tag":144,"props":190,"children":191},{},[192],{"type":37,"value":193},"2-4 недели теста",{"type":32,"tag":144,"props":195,"children":196},{},[197],{"type":37,"value":198},"Средняя (holdout spend)",{"type":32,"tag":144,"props":200,"children":201},{},[202],{"type":37,"value":203},"Высокая (RCT)",{"type":32,"tag":107,"props":205,"children":206},{},[207,215,220,225,230],{"type":32,"tag":144,"props":208,"children":209},{},[210],{"type":32,"tag":148,"props":211,"children":212},{},[213],{"type":37,"value":214},"Google Geo Experiments",{"type":32,"tag":144,"props":216,"children":217},{},[218],{"type":37,"value":219},"Географические изменения spend",{"type":32,"tag":144,"props":221,"children":222},{},[223],{"type":37,"value":224},"3-6 недель",{"type":32,"tag":144,"props":226,"children":227},{},[228],{"type":37,"value":229},"Средняя",{"type":32,"tag":144,"props":231,"children":232},{},[233],{"type":37,"value":234},"Высокая (quasi-RCT)",{"type":32,"tag":107,"props":236,"children":237},{},[238,246,251,256,261],{"type":32,"tag":144,"props":239,"children":240},{},[241],{"type":32,"tag":148,"props":242,"children":243},{},[244],{"type":37,"value":245},"Ghost Ads (Snapchat\u002FTikTok)",{"type":32,"tag":144,"props":247,"children":248},{},[249],{"type":37,"value":250},"Валидация платформенного ROI",{"type":32,"tag":144,"props":252,"children":253},{},[254],{"type":37,"value":255},"2-3 недели",{"type":32,"tag":144,"props":257,"children":258},{},[259],{"type":37,"value":260},"Низкая",{"type":32,"tag":144,"props":262,"children":263},{},[264],{"type":37,"value":265},"Средняя-высокая",{"type":32,"tag":33,"props":267,"children":268},{},[269,274],{"type":32,"tag":148,"props":270,"children":271},{},[272],{"type":37,"value":273},"Реальный пример:",{"type":37,"value":275}," Финтех-приложение видит 15% органического роста в App Store. Решают измерить эффект Apple Search Ads через geo-experiment: США делят на 10 DMA, в 5 из них отключают ASA полностью. За 21 день в контрольных регионах установок на 12% больше, но в holdout'е органический рост только на 2% — значит, ASA даёт 10% incrementality. На основе этого увеличивают ASA бюджет на 30%, ROAS растёт с 2.1 до 2.8.",{"type":32,"tag":40,"props":277,"children":279},{"id":278},"практический-pipeline-mmm-с-robyn",[280],{"type":37,"value":281},"Практический Pipeline MMM с Robyn",{"type":32,"tag":33,"props":283,"children":284},{},[285],{"type":37,"value":286},"Robyn — open source, лицензия MIT, производная от собственной MMM-инфраструктуры Meta. Версия 2026 (v3.11) уже полностью на Python (не R wrapper), встроенный BigQuery connector, автоматический hyperparameter tuning через Optuna.",{"type":32,"tag":33,"props":288,"children":289},{},[290],{"type":37,"value":291},"Основные шаги:",{"type":32,"tag":293,"props":294,"children":295},"ol",{},[296,352,370,380,397],{"type":32,"tag":297,"props":298,"children":299},"li",{},[300,305,307,313,315,321,322,328,329,335,336,342,344,350],{"type":32,"tag":148,"props":301,"children":302},{},[303],{"type":37,"value":304},"Подготовка данных:",{"type":37,"value":306}," Еженедельная гранулярность — таблица с ",{"type":32,"tag":62,"props":308,"children":310},{"className":309},[],[311],{"type":37,"value":312},"date",{"type":37,"value":314},", ",{"type":32,"tag":62,"props":316,"children":318},{"className":317},[],[319],{"type":37,"value":320},"channel",{"type":37,"value":314},{"type":32,"tag":62,"props":323,"children":325},{"className":324},[],[326],{"type":37,"value":327},"spend",{"type":37,"value":314},{"type":32,"tag":62,"props":330,"children":332},{"className":331},[],[333],{"type":37,"value":334},"impressions",{"type":37,"value":314},{"type":32,"tag":62,"props":337,"children":339},{"className":338},[],[340],{"type":37,"value":341},"revenue",{"type":37,"value":343},". В BigQuery: ",{"type":32,"tag":62,"props":345,"children":347},{"className":346},[],[348],{"type":37,"value":349},"marketing_data.weekly_agg",{"type":37,"value":351},".",{"type":32,"tag":297,"props":353,"children":354},{},[355,360,362,368],{"type":32,"tag":148,"props":356,"children":357},{},[358],{"type":37,"value":359},"Install Robyn:",{"type":37,"value":361}," ",{"type":32,"tag":62,"props":363,"children":365},{"className":364},[],[366],{"type":37,"value":367},"pip install pyrobyn",{"type":37,"value":369}," (Python 3.10+)",{"type":32,"tag":297,"props":371,"children":372},{},[373,378],{"type":32,"tag":148,"props":374,"children":375},{},[376],{"type":37,"value":377},"Конфиг:",{"type":37,"value":379}," YAML с типом adstock (geometric vs Weibull), saturation curve (Hill), range hyperparameters.",{"type":32,"tag":297,"props":381,"children":382},{},[383,388,389,395],{"type":32,"tag":148,"props":384,"children":385},{},[386],{"type":37,"value":387},"Train модели:",{"type":37,"value":361},{"type":32,"tag":62,"props":390,"children":392},{"className":391},[],[393],{"type":37,"value":394},"robyn.train()",{"type":37,"value":396}," — Nevergrad optimizer, 2000 итераций, лучший fit из Pareto frontier.",{"type":32,"tag":297,"props":398,"children":399},{},[400,405],{"type":32,"tag":148,"props":401,"children":402},{},[403],{"type":37,"value":404},"Результаты:",{"type":37,"value":406}," ROAS curve для каждого канала, decomposition chart (вклад по неделям), budget allocator (оптимальное распределение spend).",{"type":32,"tag":408,"props":409,"children":413},"pre",{"code":410,"language":411,"meta":16,"className":412,"style":16},"from pyrobyn import Robyn\n\n# Данные из BigQuery\ndata = client.query(\"\"\"\n  SELECT date, channel, spend, revenue\n  FROM `project.marketing_data.weekly_agg`\n  WHERE date BETWEEN '2025-01-01' AND '2026-05-14'\n\"\"\").to_dataframe()\n\n# Модель\nmodel = Robyn(\n    data=data,\n    dep_var='revenue',\n    paid_media_spends=['spend'],\n    adstock='geometric',\n    saturation='hill',\n    hyperparameters='auto'  # Optuna tuning\n)\n\n# Обучение (2 часа, 8 ядер)\nmodel.train(iterations=2000, trials=5)\n\n# Выбор лучшей модели (Pareto NRMSE + convergence)\nbest = model.select_model('pareto_front', rank=1)\n\n# Переаллокация бюджета\nallocator = best.budget_allocator(\n    total_budget=500000,  # Месячный бюджет\n    scenario='max_response'\n)\nprint(allocator.optimal_allocation)\n","python","language-python shiki shiki-themes github-dark",[414],{"type":32,"tag":62,"props":415,"children":416},{"__ignoreMap":16},[417,445,455,465,490,499,508,517,530,538,547,565,584,607,635,657,679,702,711,719,728,774,782,791,836,844,853,871,899,917,925],{"type":32,"tag":418,"props":419,"children":422},"span",{"class":420,"line":421},"line",1,[423,429,435,440],{"type":32,"tag":418,"props":424,"children":426},{"style":425},"--shiki-default:#F97583",[427],{"type":37,"value":428},"from",{"type":32,"tag":418,"props":430,"children":432},{"style":431},"--shiki-default:#E1E4E8",[433],{"type":37,"value":434}," pyrobyn ",{"type":32,"tag":418,"props":436,"children":437},{"style":425},[438],{"type":37,"value":439},"import",{"type":32,"tag":418,"props":441,"children":442},{"style":431},[443],{"type":37,"value":444}," Robyn\n",{"type":32,"tag":418,"props":446,"children":448},{"class":420,"line":447},2,[449],{"type":32,"tag":418,"props":450,"children":452},{"emptyLinePlaceholder":451},true,[453],{"type":37,"value":454},"\n",{"type":32,"tag":418,"props":456,"children":458},{"class":420,"line":457},3,[459],{"type":32,"tag":418,"props":460,"children":462},{"style":461},"--shiki-default:#6A737D",[463],{"type":37,"value":464},"# Данные из BigQuery\n",{"type":32,"tag":418,"props":466,"children":468},{"class":420,"line":467},4,[469,474,479,484],{"type":32,"tag":418,"props":470,"children":471},{"style":431},[472],{"type":37,"value":473},"data ",{"type":32,"tag":418,"props":475,"children":476},{"style":425},[477],{"type":37,"value":478},"=",{"type":32,"tag":418,"props":480,"children":481},{"style":431},[482],{"type":37,"value":483}," client.query(",{"type":32,"tag":418,"props":485,"children":487},{"style":486},"--shiki-default:#9ECBFF",[488],{"type":37,"value":489},"\"\"\"\n",{"type":32,"tag":418,"props":491,"children":493},{"class":420,"line":492},5,[494],{"type":32,"tag":418,"props":495,"children":496},{"style":486},[497],{"type":37,"value":498},"  SELECT date, channel, spend, revenue\n",{"type":32,"tag":418,"props":500,"children":502},{"class":420,"line":501},6,[503],{"type":32,"tag":418,"props":504,"children":505},{"style":486},[506],{"type":37,"value":507},"  FROM `project.marketing_data.weekly_agg`\n",{"type":32,"tag":418,"props":509,"children":511},{"class":420,"line":510},7,[512],{"type":32,"tag":418,"props":513,"children":514},{"style":486},[515],{"type":37,"value":516},"  WHERE date BETWEEN '2025-01-01' AND '2026-05-14'\n",{"type":32,"tag":418,"props":518,"children":519},{"class":420,"line":26},[520,525],{"type":32,"tag":418,"props":521,"children":522},{"style":486},[523],{"type":37,"value":524},"\"\"\"",{"type":32,"tag":418,"props":526,"children":527},{"style":431},[528],{"type":37,"value":529},").to_dataframe()\n",{"type":32,"tag":418,"props":531,"children":533},{"class":420,"line":532},9,[534],{"type":32,"tag":418,"props":535,"children":536},{"emptyLinePlaceholder":451},[537],{"type":37,"value":454},{"type":32,"tag":418,"props":539,"children":541},{"class":420,"line":540},10,[542],{"type":32,"tag":418,"props":543,"children":544},{"style":461},[545],{"type":37,"value":546},"# Модель\n",{"type":32,"tag":418,"props":548,"children":550},{"class":420,"line":549},11,[551,556,560],{"type":32,"tag":418,"props":552,"children":553},{"style":431},[554],{"type":37,"value":555},"model ",{"type":32,"tag":418,"props":557,"children":558},{"style":425},[559],{"type":37,"value":478},{"type":32,"tag":418,"props":561,"children":562},{"style":431},[563],{"type":37,"value":564}," Robyn(\n",{"type":32,"tag":418,"props":566,"children":568},{"class":420,"line":567},12,[569,575,579],{"type":32,"tag":418,"props":570,"children":572},{"style":571},"--shiki-default:#FFAB70",[573],{"type":37,"value":574},"    data",{"type":32,"tag":418,"props":576,"children":577},{"style":425},[578],{"type":37,"value":478},{"type":32,"tag":418,"props":580,"children":581},{"style":431},[582],{"type":37,"value":583},"data,\n",{"type":32,"tag":418,"props":585,"children":587},{"class":420,"line":586},13,[588,593,597,602],{"type":32,"tag":418,"props":589,"children":590},{"style":571},[591],{"type":37,"value":592},"    dep_var",{"type":32,"tag":418,"props":594,"children":595},{"style":425},[596],{"type":37,"value":478},{"type":32,"tag":418,"props":598,"children":599},{"style":486},[600],{"type":37,"value":601},"'revenue'",{"type":32,"tag":418,"props":603,"children":604},{"style":431},[605],{"type":37,"value":606},",\n",{"type":32,"tag":418,"props":608,"children":610},{"class":420,"line":609},14,[611,616,620,625,630],{"type":32,"tag":418,"props":612,"children":613},{"style":571},[614],{"type":37,"value":615},"    paid_media_spends",{"type":32,"tag":418,"props":617,"children":618},{"style":425},[619],{"type":37,"value":478},{"type":32,"tag":418,"props":621,"children":622},{"style":431},[623],{"type":37,"value":624},"[",{"type":32,"tag":418,"props":626,"children":627},{"style":486},[628],{"type":37,"value":629},"'spend'",{"type":32,"tag":418,"props":631,"children":632},{"style":431},[633],{"type":37,"value":634},"],\n",{"type":32,"tag":418,"props":636,"children":638},{"class":420,"line":637},15,[639,644,648,653],{"type":32,"tag":418,"props":640,"children":641},{"style":571},[642],{"type":37,"value":643},"    adstock",{"type":32,"tag":418,"props":645,"children":646},{"style":425},[647],{"type":37,"value":478},{"type":32,"tag":418,"props":649,"children":650},{"style":486},[651],{"type":37,"value":652},"'geometric'",{"type":32,"tag":418,"props":654,"children":655},{"style":431},[656],{"type":37,"value":606},{"type":32,"tag":418,"props":658,"children":660},{"class":420,"line":659},16,[661,666,670,675],{"type":32,"tag":418,"props":662,"children":663},{"style":571},[664],{"type":37,"value":665},"    saturation",{"type":32,"tag":418,"props":667,"children":668},{"style":425},[669],{"type":37,"value":478},{"type":32,"tag":418,"props":671,"children":672},{"style":486},[673],{"type":37,"value":674},"'hill'",{"type":32,"tag":418,"props":676,"children":677},{"style":431},[678],{"type":37,"value":606},{"type":32,"tag":418,"props":680,"children":682},{"class":420,"line":681},17,[683,688,692,697],{"type":32,"tag":418,"props":684,"children":685},{"style":571},[686],{"type":37,"value":687},"    hyperparameters",{"type":32,"tag":418,"props":689,"children":690},{"style":425},[691],{"type":37,"value":478},{"type":32,"tag":418,"props":693,"children":694},{"style":486},[695],{"type":37,"value":696},"'auto'",{"type":32,"tag":418,"props":698,"children":699},{"style":461},[700],{"type":37,"value":701},"  # Optuna tuning\n",{"type":32,"tag":418,"props":703,"children":705},{"class":420,"line":704},18,[706],{"type":32,"tag":418,"props":707,"children":708},{"style":431},[709],{"type":37,"value":710},")\n",{"type":32,"tag":418,"props":712,"children":714},{"class":420,"line":713},19,[715],{"type":32,"tag":418,"props":716,"children":717},{"emptyLinePlaceholder":451},[718],{"type":37,"value":454},{"type":32,"tag":418,"props":720,"children":722},{"class":420,"line":721},20,[723],{"type":32,"tag":418,"props":724,"children":725},{"style":461},[726],{"type":37,"value":727},"# Обучение (2 часа, 8 ядер)\n",{"type":32,"tag":418,"props":729,"children":731},{"class":420,"line":730},21,[732,737,742,746,752,756,761,765,770],{"type":32,"tag":418,"props":733,"children":734},{"style":431},[735],{"type":37,"value":736},"model.train(",{"type":32,"tag":418,"props":738,"children":739},{"style":571},[740],{"type":37,"value":741},"iterations",{"type":32,"tag":418,"props":743,"children":744},{"style":425},[745],{"type":37,"value":478},{"type":32,"tag":418,"props":747,"children":749},{"style":748},"--shiki-default:#79B8FF",[750],{"type":37,"value":751},"2000",{"type":32,"tag":418,"props":753,"children":754},{"style":431},[755],{"type":37,"value":314},{"type":32,"tag":418,"props":757,"children":758},{"style":571},[759],{"type":37,"value":760},"trials",{"type":32,"tag":418,"props":762,"children":763},{"style":425},[764],{"type":37,"value":478},{"type":32,"tag":418,"props":766,"children":767},{"style":748},[768],{"type":37,"value":769},"5",{"type":32,"tag":418,"props":771,"children":772},{"style":431},[773],{"type":37,"value":710},{"type":32,"tag":418,"props":775,"children":777},{"class":420,"line":776},22,[778],{"type":32,"tag":418,"props":779,"children":780},{"emptyLinePlaceholder":451},[781],{"type":37,"value":454},{"type":32,"tag":418,"props":783,"children":785},{"class":420,"line":784},23,[786],{"type":32,"tag":418,"props":787,"children":788},{"style":461},[789],{"type":37,"value":790},"# Выбор лучшей модели (Pareto NRMSE + convergence)\n",{"type":32,"tag":418,"props":792,"children":794},{"class":420,"line":793},24,[795,800,804,809,814,818,823,827,832],{"type":32,"tag":418,"props":796,"children":797},{"style":431},[798],{"type":37,"value":799},"best ",{"type":32,"tag":418,"props":801,"children":802},{"style":425},[803],{"type":37,"value":478},{"type":32,"tag":418,"props":805,"children":806},{"style":431},[807],{"type":37,"value":808}," model.select_model(",{"type":32,"tag":418,"props":810,"children":811},{"style":486},[812],{"type":37,"value":813},"'pareto_front'",{"type":32,"tag":418,"props":815,"children":816},{"style":431},[817],{"type":37,"value":314},{"type":32,"tag":418,"props":819,"children":820},{"style":571},[821],{"type":37,"value":822},"rank",{"type":32,"tag":418,"props":824,"children":825},{"style":425},[826],{"type":37,"value":478},{"type":32,"tag":418,"props":828,"children":829},{"style":748},[830],{"type":37,"value":831},"1",{"type":32,"tag":418,"props":833,"children":834},{"style":431},[835],{"type":37,"value":710},{"type":32,"tag":418,"props":837,"children":839},{"class":420,"line":838},25,[840],{"type":32,"tag":418,"props":841,"children":842},{"emptyLinePlaceholder":451},[843],{"type":37,"value":454},{"type":32,"tag":418,"props":845,"children":847},{"class":420,"line":846},26,[848],{"type":32,"tag":418,"props":849,"children":850},{"style":461},[851],{"type":37,"value":852},"# Переаллокация бюджета\n",{"type":32,"tag":418,"props":854,"children":856},{"class":420,"line":855},27,[857,862,866],{"type":32,"tag":418,"props":858,"children":859},{"style":431},[860],{"type":37,"value":861},"allocator ",{"type":32,"tag":418,"props":863,"children":864},{"style":425},[865],{"type":37,"value":478},{"type":32,"tag":418,"props":867,"children":868},{"style":431},[869],{"type":37,"value":870}," best.budget_allocator(\n",{"type":32,"tag":418,"props":872,"children":874},{"class":420,"line":873},28,[875,880,884,889,894],{"type":32,"tag":418,"props":876,"children":877},{"style":571},[878],{"type":37,"value":879},"    total_budget",{"type":32,"tag":418,"props":881,"children":882},{"style":425},[883],{"type":37,"value":478},{"type":32,"tag":418,"props":885,"children":886},{"style":748},[887],{"type":37,"value":888},"500000",{"type":32,"tag":418,"props":890,"children":891},{"style":431},[892],{"type":37,"value":893},",  ",{"type":32,"tag":418,"props":895,"children":896},{"style":461},[897],{"type":37,"value":898},"# Месячный бюджет\n",{"type":32,"tag":418,"props":900,"children":902},{"class":420,"line":901},29,[903,908,912],{"type":32,"tag":418,"props":904,"children":905},{"style":571},[906],{"type":37,"value":907},"    scenario",{"type":32,"tag":418,"props":909,"children":910},{"style":425},[911],{"type":37,"value":478},{"type":32,"tag":418,"props":913,"children":914},{"style":486},[915],{"type":37,"value":916},"'max_response'\n",{"type":32,"tag":418,"props":918,"children":920},{"class":420,"line":919},30,[921],{"type":32,"tag":418,"props":922,"children":923},{"style":431},[924],{"type":37,"value":710},{"type":32,"tag":418,"props":926,"children":928},{"class":420,"line":927},31,[929,934],{"type":32,"tag":418,"props":930,"children":931},{"style":748},[932],{"type":37,"value":933},"print",{"type":32,"tag":418,"props":935,"children":936},{"style":431},[937],{"type":37,"value":938},"(allocator.optimal_allocation)\n",{"type":32,"tag":33,"props":940,"children":941},{},[942],{"type":37,"value":943},"Вывод: уменьшить Meta на 12%, увеличить Google Search на 18%, TikTok оставить — при таком распределении прогнозируемая выручка вырастет на 9%. Для валидации этого прогноза запусти 4-недельный incrementality test.",{"type":32,"tag":40,"props":945,"children":947},{"id":946},"цикл-объединяющий-оба-метода",[948],{"type":37,"value":949},"Цикл, Объединяющий Оба Метода",{"type":32,"tag":33,"props":951,"children":952},{},[953],{"type":37,"value":954},"MMM и incrementality test питают друг друга: MMM отвечает \"что тестировать\", тест — \"верны ли предположения MMM\". Успешные компании в 2026 году крутят такой цикл:",{"type":32,"tag":33,"props":956,"children":957},{},[958,963],{"type":32,"tag":148,"props":959,"children":960},{},[961],{"type":37,"value":962},"1. Макро-планирование (Квартальное):",{"type":37,"value":964}," Запусти Robyn MMM, получи ROAS curve и saturation point для каждого канала. Где есть margin?",{"type":32,"tag":33,"props":966,"children":967},{},[968,973],{"type":32,"tag":148,"props":969,"children":970},{},[971],{"type":37,"value":972},"2. Гипотезы (Ежемесячно):",{"type":37,"value":974}," Если MMM говорит \"Google Display ROAS 1.2, saturation 70%\", формулируй гипотезу увеличения бюджета.",{"type":32,"tag":33,"props":976,"children":977},{},[978,983],{"type":32,"tag":148,"props":979,"children":980},{},[981],{"type":37,"value":982},"3. Дизайн теста (2-недельный спринт):",{"type":37,"value":984}," Geo-experiment в Google Ads или Conversion Lift на Meta. Holdout 20%, контрольная группа spend 0%, тестовая +50%.",{"type":32,"tag":33,"props":986,"children":987},{},[988,993],{"type":32,"tag":148,"props":989,"children":990},{},[991],{"type":37,"value":992},"4. Результаты (3-4 недели):",{"type":37,"value":994}," Реальная incrementality 1.8 — выше прогноза MMM. Скорректируй модель.",{"type":32,"tag":33,"props":996,"children":997},{},[998,1003],{"type":32,"tag":148,"props":999,"children":1000},{},[1001],{"type":37,"value":1002},"5. Обновление модели:",{"type":37,"value":1004}," Добавь результаты теста в MMM как prior (Bayesian update). В следующей итерации прогноз будет точнее.",{"type":32,"tag":33,"props":1006,"children":1007},{},[1008,1010,1019],{"type":37,"value":1009},"Этот цикл должен быть в сердце ",{"type":32,"tag":1011,"props":1012,"children":1016},"a",{"href":1013,"rel":1014},"https:\u002F\u002Fwww.roibase.com.tr\u002Fru\u002Fdijitalpazarlama",[1015],"nofollow",[1017],{"type":37,"value":1018},"dijitalpazarlama",{"type":37,"value":1020}," стратегии — непрерывная циркуляция данных от планирования до execution.",{"type":32,"tag":33,"props":1022,"children":1023},{},[1024,1029],{"type":32,"tag":148,"props":1025,"children":1026},{},[1027],{"type":37,"value":1028},"Кейс:",{"type":37,"value":1030}," Платформа путешествий в Q4 2025 прогнозировала TikTok ROAS 0.9 через Robyn. Платформа показывала 1.3. 6-недельный Conversion Lift тест выявил реальную incrementality 0.85. Платформа ошибалась на 53% (last-click bias). Компания сократила TikTok на 40%, перекинула в Google Search — общий ROAS вырос с 1.8 до 2.3.",{"type":32,"tag":40,"props":1032,"children":1034},{"id":1033},"фундамент-attribution-в-post-cookie-мире",[1035],{"type":37,"value":1036},"Фундамент Attribution в Post-Cookie Мире",{"type":32,"tag":33,"props":1038,"children":1039},{},[1040],{"type":37,"value":1041},"В 2026 году attribution — это не \"кому приписать кредит\", а \"как объединить частичные сигналы\". Когда cookies исчезли, осталась не одна источник, а множество фрагментированных точек: first-party события из sGTM, server-side сигналы от Conversion API платформ, offline конверсии из CRM. Слой, который их объединяет, — CDP + data warehouse (BigQuery, Snowflake, Redshift).",{"type":32,"tag":33,"props":1043,"children":1044},{},[1045],{"type":37,"value":1046},"Современный стек:",{"type":32,"tag":408,"props":1048,"children":1050},{"code":1049},"Web\u002FApp → sGTM → BigQuery\n              ↓\n           dbt transform\n              ↓\n      Robyn MMM + Lift Test\n              ↓\n       Looker Dashboard\n",[1051],{"type":32,"tag":62,"props":1052,"children":1053},{"__ignoreMap":16},[1054],{"type":37,"value":1049},{"type":32,"tag":33,"props":1056,"children":1057},{},[1058],{"type":37,"value":1059},"Robyn в этом pipeline — не просто узел, а критический. Он показывает макро-тренд, определяет направление тестов. Результаты тестов возвращаются в BigQuery, используются как prior в следующной итерации MMM.",{"type":32,"tag":33,"props":1061,"children":1062},{},[1063,1068,1070,1076,1078,1084,1086,1091,1093,1099],{"type":32,"tag":148,"props":1064,"children":1065},{},[1066],{"type":37,"value":1067},"Технический момент:",{"type":37,"value":1069}," Robyn's BigQuery integration работает через Python SDK ",{"type":32,"tag":62,"props":1071,"children":1073},{"className":1072},[],[1074],{"type":37,"value":1075},"google-cloud-bigquery",{"type":37,"value":1077},". Еженедельные данные грузи в ",{"type":32,"tag":62,"props":1079,"children":1081},{"className":1080},[],[1082],{"type":37,"value":1083},"marketing_data.robyn_input",{"type":37,"value":1085}," через ",{"type":32,"tag":62,"props":1087,"children":1089},{"className":1088},[],[1090],{"type":37,"value":67},{"type":37,"value":1092},", результаты модели пишутся в ",{"type":32,"tag":62,"props":1094,"children":1096},{"className":1095},[],[1097],{"type":37,"value":1098},"robyn_output",{"type":37,"value":1100},". Looker Studio читает напрямую эту таблицу — на CMO-дашбоарде видны real-time ROAS curve и рекомендации по распределению бюджета.",{"type":32,"tag":40,"props":1102,"children":1104},{"id":1103},"частые-ошибки-и-контраргументы",[1105],{"type":37,"value":1106},"Частые Ошибки и Контраргументы",{"type":32,"tag":33,"props":1108,"children":1109},{},[1110,1115],{"type":32,"tag":148,"props":1111,"children":1112},{},[1113],{"type":37,"value":1114},"\"MMM требует data scientist, мы не потянем.\"",{"type":37,"value":1116},"\nRobyn — open source с чистой документацией, готовые Colab notebooks. Mid-level growth analyst с хорошим Python за 2 недели документации переведёт в production. В 2026 \"не хватает дата-учёного\" — это оправдание из прошлого.",{"type":32,"tag":33,"props":1118,"children":1119},{},[1120,1125],{"type":32,"tag":148,"props":1121,"children":1122},{},[1123],{"type":37,"value":1124},"\"Incrementality test дорог, есть потери на holdout.\"",{"type":37,"value":1126},"\nЕсли держать holdout 10-20%, это ~1.5-3% revenue loss за 3 недели. Но если крутить неверный канал год — это 20-30% loss. ROI теста 10x+.",{"type":32,"tag":33,"props":1128,"children":1129},{},[1130,1135],{"type":32,"tag":148,"props":1131,"children":1132},{},[1133],{"type":37,"value":1134},"\"Платформенной аналитики достаточно.\"",{"type":37,"value":1136},"\nMeta dashboard даёт last-click + view-through за 1 день. Не видит органики, cross-channel эффектов, delayed conversions. Платформа — тактический сигнал, MMM — стратегическая реальность.",{"type":32,"tag":33,"props":1138,"children":1139},{},[1140,1145],{"type":32,"tag":148,"props":1141,"children":1142},{},[1143],{"type":37,"value":1144},"\"Еженедельный train моделей — это оverkill.\"",{"type":37,"value":1146},"\nСезонность, промо, экономические шоки меняют ROAS. Еженедельный refresh ловит trend shifts за 2 недели. Месячный — это 6-8 недель задержки решений.",{"type":32,"tag":1148,"props":1149,"children":1150},"hr",{},[],{"type":32,"tag":33,"props":1152,"children":1153},{},[1154],{"type":37,"value":1155},"Решена ли задача attribution в 2026? Нет — но toolkit полностью переформатирован. Cookies ушли, на их место встал стек MMM + incrementality + first-party data. Open-source инструменты типа Robyn выравняли поле между большим брендом и стартапом. Geo-experiment и Conversion Lift встроены в платформы — никаких отдельных data science teams. Вопрос перешёл с \"какой метод\" на \"какой метод в каком слое и как я создам цикл\". Кто ответит правильно — тот побеждает.",{"type":32,"tag":1157,"props":1158,"children":1159},"style",{},[1160],{"type":37,"value":1161},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":16,"searchDepth":457,"depth":457,"links":1163},[1164,1165,1168,1169,1170,1171],{"id":42,"depth":447,"text":45},{"id":72,"depth":447,"text":75,"children":1166},[1167],{"id":94,"depth":457,"text":97},{"id":278,"depth":447,"text":281},{"id":946,"depth":447,"text":949},{"id":1033,"depth":447,"text":1036},{"id":1103,"depth":447,"text":1106},"markdown","content:ru:marketing:mmm-incrementality-2026-attribution.md","content","ru\u002Fmarketing\u002Fmmm-incrementality-2026-attribution.md","ru\u002Fmarketing\u002Fmmm-incrementality-2026-attribution","md",1778738637337]