ProАналітика 📊
1.16K subscribers
55 photos
48 links
🖐 Всіх вітаю на моєму каналі, присвяченому аналітиці та глибокому аналізу даних📊

Тут ви можете дізнатися найактуальніші тренди 🔥і події у світі економіки, фінансів та технологій 📈
Download Telegram
Python чи SQL для аналізу — хто кого

Питання "SQL чи Python" ставлять неправильно — це не вибір релігії, а питання де лежать дані і що з ними треба зробити. 🔧

SQL виграє, коли дані вже в BigQuery чи Postgres і завдання — агрегація, джойни, віконні функції. Запит на 50 млн рядків виконається за секунди прямо в базі, без переливання даних кудись ще. Якщо можеш описати задачу через GROUP BY і WINDOW — пиши SQL, це буде швидше й дешевше за будь-який pandas.

Python потрібен там, де SQL закінчується: статистичні тести, прогнозні моделі, текст і NLP, графіки для презентації, цикли з умовною логікою. Спробувати зробити когортний аналіз з лагами та експоненційним згладжуванням у чистому SQL — технічно можливо, але код вийде нечитабельним і його ніхто не підтримає через місяць.

Типова робоча схема: важку агрегацію й фільтрацію роблять у BigQuery — там дешевше рахувати на масиві даних, ніж тягнути сирі рядки в ноутбук. А вже агреговану таблицю на тисячі рядків забирають у Python для моделювання й візуалізації. 📊

Помилка, яку бачу постійно: тягнути необроблені дані в pandas і робити groupby там, сплачуючи і за BigQuery слот, і за памʼять ноутбука. Рахуй там, де дані лежать, аналізуй там, де потрібна гнучкість.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Третина трафіка ховається у Direct

Канал Direct у GA4 — це не аудиторія, яка вручну вбила адресу в браузер. Це кошик для всього, що система не змогла розпізнати 📊

Чотири факти. In-app браузери Instagram, TikTok і Facebook стирають referrer майже завжди — клік зі сторіз падає в Direct, хоча прийшов із соцмережі. Месенджери Telegram і Viber у більшості випадків теж не передають referrer header — ще один постачальник "прямого" трафіка. За індустрійними оцінками типовий сайт має 20–40% трафіка в Direct, і до половини цього обсягу — саме нерозпізнані джерела, а не реальні прямі заходи. Додайте сюди lookback window у GA4: мітка кампанії живе 6 місяців, а сесія рветься через 30 хвилин простою — тому навіть власна розсилка без utm осідає в тому самому кошику.

Висновок простий: якщо частка Direct зростає місяць до місяця — це не лояльна аудиторія повертається напряму, а хтось перестав маркувати посилання — пуші, QR-коди, офлайн-банери, email 🔗

Тримайте Direct як метрику якості розмітки, а не як окремий канал залучення. Різке зростання — привід перевірити, де саме загубились utm, а не привід радіти бренд-трафіку.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Шість цифр важливіші за заголовки новин

Поки обшуки в НБУ займають стрічки, справжній стан фінансів країни видно не в заявах нардепів, а в кількох цифрах з відкритих джерел 📊. Ось що можна перевірити самому за десять хвилин, не чекаючи чужих висновків.

Зайди на сайт НБУ й порівняй міжнародні резерви з минулим місяцем — падіння більш ніж на 5% за кілька тижнів це вже сигнал, а не цифра для звіту.

Звір офіційний курс із готівковим на Мінфін.ком.уа — спред понад дві гривні означає, що ринок готується до девальвації швидше за уряд.

Перевір виконання дохідної частини бюджету на kazna.gov.ua — якщо податкові надходження відстають від плану більше місяця, секвестр уже на столі.

Знайди графік траншів МВФ і ЄС на цей квартал — пропущений транш каже більше, ніж будь-яка заява пресслужби 💬.

Подивись дохідність останнього аукціону ОВДП Мінфіну — зростання ставки це ціна довіри до держави, виміряна у відсотках.

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

Ці шість пунктів займуть десять хвилин і скажуть більше, ніж тиждень новин 🔍.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
За банкрутствами стоїть кредитний бум

З початку року понад 1200 українців подали заяви про особисте банкрутство — на 37% більше, ніж торік, і це вже четвертий рік поспіль зростання 📈. На перший погляд виглядає як сигнал біди: війна, доходи не встигають за цінами, люди тонуть у боргах.

Подивився на структуру цифр, а не на заголовок. Дві третини банкрутів — люди 25-45 років, найактивніший вік для споживчих кредитів і покупок у розстрочку. Наймолодшому — 20, найстаршому — 77, але основна маса припадає саме на тих, хто активно брав картки й спліти у 2021-2023, коли банки масово роздавали ліміти під відновлення економіки після локдаунів.

Закон про банкрутство фізосіб діє з 2019 року, але довгі роки люди ним майже не користувались — через страх і складну процедуру 📄. Те, що зростання триває вже чотири роки підряд, означає не нову хвилю бідності, а відкладений ефект того кредитного буму: борги, взяті на піку, нарешті доходять до суду, а інструмент списання нарешті почали використовувати так, як і було задумано.

1200 справ на мільйони активних позичальників — для банківської системи це некритично 💳. Для аналітики боргового навантаження — це маркер, що дивитись варто на 2021-2023, а не на поточний курс чи інфляцію.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Pandas чи Polars — коли міняти звичку

Pandas тягне датасет в один потік, і на 5 млн рядків groupby з'їдає хвилину й половину RAM. Polars той самий запит жене в кілька потоків через Rust-ядро і встигає за секунди, бо не копіює дані на кожному кроці 🐻‍❄️ Різниця не в красі синтаксису — вона суто фізична: lazy-виконання Polars будує план і виконує його один раз, а не рядок за рядком, як ваш звичний eager pandas-код.

Але міняти стек варто не завжди. Якщо аналіз — це Jupyter, 50 тисяч рядків і купа готових snippet'ів з Stack Overflow, pandas швидше доведе до висновку, бо екосистема (matplotlib, seaborn, statsmodels) зшита саме під нього. Polars виграє там, де дані вже не влазять у звичку: ETL на мільйони рядків, повторювані пайплайни, продакшн-скрипти, де секунди виконання рахують у гроші за compute.

Практичне правило: до 1 млн рядків і разового аналізу — pandas, бо швидше написати, ніж переписати. Понад 5 млн рядків, регулярний запуск або межа по пам'яті — Polars, і різницю відчуєте вже на першому запуску ⚡️ Міксувати обидва в одному проєкті — нормально: читання й важкі трансформації на Polars, фінальний df.to_pandas() — для візуалізації й звичних бібліотек.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Графік відключень став фічею прогнозу

Взимку 2024–2025 онлайн-рітейлер генераторів і павербанків почав системно помилятися з прогнозом попиту. Модель на Prophet рахувала сезонність і день тижня — класика. Але попит у Харкові, Одесі чи Сумах стрибав не за календарем, а за графіком відключень: день без світла — і замовлення на зарядні летять вгору за годину. ⚡️ Модель цього не бачила і або не завозила товар, або затарювала склад там, де відключень уже не було.

Data science команда зробила просте: витягла графіки ГПВ по регіонах як окрему змінну з лагом у 2–6 годин і перейшла з однієї глобальної моделі на LightGBM per-region замість Prophet. Сезонність лишили як фон, а не головний сигнал. 🔌

Результат за квартал: MAPE у проблемних регіонах впав з 38% до 14%. Stockouts на топ-20 SKU скоротились на 46%, надлишкові запаси на складах — на 23%. Головний висновок не про модель, а про фічі: та сама архітектура з правильною зовнішньою змінною дає більше, ніж будь-яке тюнінгування гіперпараметрів. 📊

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Дашборд живе довше ніж ваша логіка розрахунку

У середньому BI-дашборд переживає три зміни бізнес-логіки, перш ніж хтось згадає перевірити формули всередині 📊 Оце і є корінь проблеми, яку рідко обговорюють.

Перше: дашборд, зібраний рік тому на Looker Studio чи Tableau, досі показує "виручку" за формулою, яку фінансовий відділ змінив ще у лютому. Ніхто не ламав звʼязок — просто визначення змінилося, а візуалізація лишилась старою.

Друге: 70% дашбордів у типовій компанії не мають власника після запуску. Автор пішов в інший проєкт, і правити логіку вже боїться будь-хто — раптом зламає щось невидиме.

Третє: кожен новий фільтр чи розріз у дашборді множить кількість комбінацій, які ніхто не тестував. Десять полів — і вже тисячі можливих перетинів, де агрегація може рахувати не те, що здається на вигляд.

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

Висновок простий: дашборд — це не разовий продукт, а код, який потребує ревʼю так само, як і будь-який інший. Поставте собі нагадування раз на квартал: відкрити формули і запитати, чи досі вони відповідають тому, як компанія рахує гроші сьогодні.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Один SMS-крок зʼїдав чверть оплат

Команда мобільного застосунку доставки два тижні дивилась на графік і не розуміла, чому конверсія з кошика в оплату раптом просіла на 15%, хоча трафік і CTR реклами лишились на тих самих цифрах. Перше підозрюване — платіжний провайдер, але логи там чисті.

Подивились глибше: вивантажили events_* з GA4 у BigQuery і побудували покрокову воронку по user_pseudo_id замість агрегованих звітів в інтерфейсі. 📊 Виявилось, що тиждень тому додали обов'язкову верифікацію номера через SMS для всіх, хто оплачує картою вперше з цього девайса — захист від шахрайства. Проблема: на Android з повільним інтернетом код часто приходив після таймауту капчі, і юзер застрягав на екрані без помилки й без можливості повторити.

Рішення просте — подовжили таймаут з 30 до 90 секунд і додали кнопку «надіслати код ще раз» замість мовчазного зависання. ⚡️

Результат за тиждень: конверсія оплати повернулась з 71% до 86%, втрачені через капчу сесії впали в чотири рази. У виручці з мобільного трафіку це дало +9% без жодної копійки в рекламу — просто повернули те, що вже купувало.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
SQL у BigQuery тепер пишеться як конвеєр

Google довів до GA pipe syntax у BigQuery — спосіб писати запити, про який аналітики просили роками. Замість вкладених підзапитів і купи CTE, через які доводиться скролити вгору-вниз, щоб зрозуміти логіку, тепер можна писати послідовно: FROM table |> WHERE ... |> AGGREGATE ... |> ORDER BY. Кожен оператор — окремий крок, і результат видно після кожного з них, а не лише в кінці всього запиту. 🧩

Для когортного аналізу чи воронки конверсій це не косметика. Раніше дебаг такого запиту означав розкручувати вкладеність ізсередини: яка умова на якому рівні фільтрує дані. З pipe syntax кожен крок можна виконати окремо, подивитись проміжний результат і зрозуміти, де метрика зламалась — та ж проблема, що й з парадоксом Сімпсона на дашбордах, тільки тепер її легше знайти в самому запиті. ⚙️

Головне: це не новий діалект і не нова оплата — звичайний Standard SQL, стару нотацію можна лишити там, де вона вже працює, і міксувати з новою в одному запиті. Почніть з однієї довгої аналітичної вибірки з трьома-чотирма рівнями вкладеності — перепишіть її на pipe syntax і порівняйте, скільки часу пішло на розуміння логіки колегою, який бачить запит вперше. 📊

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Сім перевірок перед чорною п'ятницею

Трафік під час розпродажу зростає в 3-5 разів за кілька днів — і саме тоді аналітика найчастіше ламається непомітно, бо до цього все "ніби працювало" на звичайному навантаженні. 🛒 Ось що варто перевірити сьогодні, а не 28 листопада:

1. Event purchase шле transaction_id і спрацьовує рівно раз на замовлення — без дублів від повторного рендеру сторінки подяки.
2. UTM-мітки на email та push розсилках прописані вручну, а не "підхопляться автоматично" — автопідхоплення часто губить джерело.
3. GA4 real-time звіт витримує спайк без затримки понад 2-3 хвилини — якщо затримка росте, під навантаженням вона виросте ще більше.
4. Explore-звіти не йдуть у sampling при зростанні обсягу подій — перевір ліміт у властивостях акаунта.
5. Server-side tagging (якщо є) не впаде при піковому RPS — подивись, чи є автоскейлінг контейнера.
6. BigQuery має запас бюджету слотів на дні з піковими запитами дашбордів — інакше звіти зависнуть саме в момент, коли на них найбільше дивляться.
7. Алерти на аномалії продажів і конверсії налаштовані заздалегідь, а не "подивимось вручну" — руками за святковим трафіком не встежиш. 📊

Перевірка займає години, а ціна помилки — втрачена статистика найважливіших днів року.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Гугл вчить BI рахувати замість малювати

Google додав до Looker Studio Pro генерацію даних агентом прямо з промпту — "порахуй відтік по когортах" замість двадцяти кліків по фільтрах і калькульованих полях 🤖 Для когось це виглядає як кінець ручної аналітики, та різниця в деталях. Агент непогано справляється з описовими запитами: суми, частки, динаміка. Але щойно треба врахувати специфіку бізнесу — як саме визначити "активного користувача", чи рахувати повернених клієнтів в LTV, що робити з тестовими акаунтами в базі — модель бере найочевидніше припущення, а не правильне для вашого продукту.

Практичний висновок: роль аналітика зміщується з побудови запитів на формулювання бізнес-логіки заздалегідь. Якщо у вас немає чіткого глосарія метрик — документа, де "активний користувач" чи "конверсія" визначені однозначно — агент видаватиме красиві, але неузгоджені між собою цифри в різних звітах 📊 Компанії, які вже мають data dictionary в BigQuery чи dbt, отримають від таких інструментів реальне прискорення. Ті, хто визначає метрики на льоту в головах окремих аналітиків, отримають просто новий спосіб плодити розбіжності — тільки швидше й з виглядом авторитетності.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
П'ять джерел, де цифри не бояться брехати

Офіційна статистика під час війни — завжди переговори між точністю і доступністю даних 📊 Ось що реально читати, а не просто цитувати.

Дашборд НБУ з інфляційними звітами — єдине місце, де цифра 11% за жовтень і прогноз 12,5% на кінець року не розходяться з методологією розрахунку, яку можна перевірити.

Міністерство фінансів і щомісячні звіти про виконання бюджету — там видно касові розриви раніше, ніж про них напишуть новини.

Open Budget — держреєстр, де бюджетні видатки розписані по розпорядниках, а не по красивих агрегатах з пресреліза.

Державна митна служба з відкритою статистикою зовнішньої торгівлі — найшвидший спосіб перевірити, чи справді впала металургія на ті самі "90%", про які пишуть.

Trading Economics або CEIC для крос-перевірки українських цифр із тим, як їх бачать зовнішні інвестори — розбіжність у трактуванні часто важливіша за саму цифру.

Жодне з цих джерел не замінює аналітика 🧮 Вони лише дають сировину, з якої видно, де журналісти округлили, а де уряд обрав вигідну базу порівняння.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Банер без кліку коштував магазину 12% виручки

Онлайн-магазин електроніки готувався до чорної п'ятниці і бачив у GA4 стабільну картину: трафік з головного банера йшов, конверсія не падала, усе виглядало нормально 📊 Але менеджер з продажів помітив розбіжність — виручка з промо-категорії відставала від плану на старті акції минулого року, хоча цифри в дашборді казали «все за графіком».

Підняли сирі події BigQuery і порівняли click на банері з session_start у тій же сесії. Виявилось: 40% «переходів» — це користувачі, які вже були на сайті з органіки, банер просто з'являвся в полі зору і трекер рахував impression як session source override, підміняючи канал атрибуції. Банер забирав чужу заслугу, а реальний referral traffic занижувався вдвічі.

Переналаштували атрибуцію: розділили view-through і click-through події, прибрали оверрайд джерела для вже активних сесій 🔧 Запустили той самий банер повторно — і цифри в дашборді впали, зате бюджет на медіапланування перерахували тверезо.

Результат: магазин зняв $8 тис. місячного бюджету з каналу, який насправді не приводив нових людей, і перекинув їх на ретаргетинг з реальним click-through 📈 Виручка з промо за тиждень акції зросла на 12% — не тому, що зʼявився новий трафік, а тому, що гроші нарешті пішли туди, де був справжній результат.

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Сорок філій зводили звіт два дні

Мережа з сорока магазинів щотижня закривала продажі так: кожна філія надсилала свій Excel, фінвідділ зводив усе вручну у загальну таблицю. Два дні роботи двох людей, і щоразу хтось забував файл або прислав стару версію. Цифри в головному звіті й у філіях регулярно не збігались — різниця сягала 4-6%, а керівництво приймало рішення по даних, яким було вже три дні.

Команда підключила касові системи напряму до BigQuery через щоденний pipeline, прибрала ручне копіювання й поставила один дашборд у Looker Studio з автооновленням щоночі. Фінвідділ залишив собі лише перевірку аномалій, а не перенесення цифр з файлу у файл. 📊

Результат за квартал: закриття тижня — з двох днів до 20 хвилин, розбіжності між філіями й центром зникли повністю, дані доступні вже на день+1 замість день+3. Окремий бонус — звільнені 16 людино-годин щотижня команда перекинула на аналіз асортименту, і за два місяці це дало +3% до маржі на топ-категоріях. 🔥

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

🛎Приєднуйтесь до ProАналітика 📊:
🌐 Канал | 💬 Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1