[blog] Гайди
Як зробити власний дашборд аналітики Instagram: API, дані, графіки
11 червня 2026 р. · MaxICo Labs
Запит «зроблю собі дашборд статистики Instagram» виглядає як проєкт на вихідні: взяти API, намалювати пару графіків — готово. На практиці між «отримав перший JSON з API» і «дашборд, яким реально користуєшся щодня» лежить 3–6 тижнів роботи. Розберімо весь шлях чесно: що треба зробити, де сховані граблі, скільки це коштує в годинах — і коли розумніше взяти готовий open-source на кшталт Instagram Dashboard.
Архітектура: три блоки будь-якого дашборда
Незалежно від стека, дашборд аналітики складається з трьох частин:
- Збір даних — авторизація в Instagram Graph API і регулярне витягування метрик.
- Зберігання — накопичення історії, бо API віддає обмежене вікно, а вам потрібні тренди за місяці.
- Візуалізація — вебінтерфейс із графіками, таблицями і порівнянням періодів.
Кожен блок виглядає простим окремо. Складність — у стиках і в довгостроковій надійності.
Крок 1: доступ до Graph API
Instagram віддає статистику тільки через офіційний Graph API і тільки для Business/Creator акаунтів. Шлях такий: створюєте застосунок у Meta for Developers, додаєте use case для роботи з Instagram, запитуєте permission instagram_business_manage_insights, генеруєте access token.
Перші граблі тут: короткоживучий токен живе годину, його треба обміняти на довгоживучий (близько 60 днів) і налаштувати автоматичне оновлення, інакше дашборд «помре» через два місяці тихо і без помилок у логах. Це той код, який усі забувають написати.
Крок 2: які метрики збирати
Мінімальний набір ендпоінтів для повноцінної аналітики:
| Дані | Звідки | Нюанс |
|---|---|---|
| KPI акаунта (охоплення, перегляди) | /{ig-user-id}/insights |
Метрики мають різні дозволені періоди |
| Список публікацій | /{ig-user-id}/media |
Пагінація, обмеження полів |
| Метрики поста (saves, shares, reach) | /{ig-media-id}/insights |
Набір метрик різний для Reels, фото і каруселей |
| Підписники по днях | /{ig-user-id}/insights?metric=follower_count |
Тільки останні 30 днів — історію треба накопичувати самому |
| Демографія | /{ig-user-id}/insights (audience) |
Доступна лише від ~100 підписників |
Два системні обмеження, які формують архітектуру. Перше: API не віддає глибоку історію — наприклад, приріст підписників по днях доступний лише за останні 30 днів. Хочете графік за пів року — мусите збирати дані щодня з першого дня роботи дашборда. Друге: rate limits — при агресивному опитуванні API почне повертати помилки, тож збір треба робити фоновим кроном із backoff, а не «на льоту» при відкритті сторінки.
Крок 3: зберігання — простіше, ніж здається
Інстинктивне рішення — підняти PostgreSQL. Для дашборда на один-десять акаунтів це overkill: у вас десятки записів на день, не мільйони. Файлове сховище (JSON на диску) повністю закриває задачу і знімає цілий клас проблем — міграції, бекапи БД, ще один контейнер, який може впасти. Саме так зроблено в Instagram Dashboard: жодної зовнішньої БД, дані на Docker volume, бекап = копія папки.
База даних стане потрібною, коли акаунтів сотні або коли по дашборду працюють складні ad-hoc запити. До того моменту — YAGNI.
Крок 4: візуалізація
Стандартний стек 2026 року: Next.js + Tailwind + бібліотека графіків (Recharts, Chart.js або ECharts). Сам по собі графік малюється за годину. Час з'їдають продуктові дрібниці, без яких дашбордом незручно користуватись: перемикач періодів 7/30/90 днів, порівняння з попереднім періодом («+18% до минулого місяця»), сортування таблиці публікацій за ER%, маркери подій на графіку росту, адекватний вигляд на мобільному. Кожна дрібниця — пів дня; разом — тижні.
І не забудьте авторизацію: дашборд із вашим токеном Instagram не може висіти у відкритому доступі. Логін, захист усіх /api-роутів, секрети поза репозиторієм — ще пара днів.
Чесна оцінка трудовитрат
Оцінка для розробника середнього рівня, який раніше не працював із Graph API:
| Етап | Час |
|---|---|
| Meta-застосунок, токени, оновлення токенів | 1–2 дні |
| Збирач метрик з обробкою лімітів і ретраями | 3–5 днів |
| Сховище + накопичення історії | 1–2 дні |
| UI: KPI, таблиця постів, графіки, періоди | 5–10 днів |
| Авторизація, деплой, HTTPS | 2–3 дні |
| Налагодження на реальних даних | 3–5 днів |
| Разом | 15–27 робочих днів |
За ставкою $25–50/год це $3 000–10 000 еквіваленту робочого часу. І це без AI-функцій: транскрипція Reels через Whisper, аналіз патернів мовлення, генерація сценаріїв — ще плюс 2–3 тижні.
Альтернатива: взяти готовий open-source
Усе перелічене вже реалізовано в Instagram Dashboard від MaxICo Labs — безкоштовному open-source продукті: KPI за 7/30/90 днів із порівнянням періодів, таблиця публікацій з ER%, ріст підписників із маркерами Reels і кореляцією переглядів та приросту, інсайти по днях тижня і saves vs shares, Whisper-транскрипти, AI-генератор сценаріїв у вашому стилі та реальна демографія аудиторії. Стек — Next.js 16 + Tailwind v4 + Recharts, без зовнішньої БД. Деплой: git clone → заповнити .env → docker compose up; токен Instagram вставляється прямо з UI. Подивитися, як це виглядає на живих даних, можна в демо.
Коли власна розробка все ж виправдана: якщо дашборд — частина більшої внутрішньої системи (своя CRM, дані з реклами, продажі), якщо потрібні нестандартні метрики або моніторинг великого пулу акаунтів. Але і тоді раціональніше форкнути готову кодову базу, ніж писати збирач Graph API з нуля — найболючіша частина (токени, ліміти, накопичення історії) уже вирішена.
Граблі, про які не пишуть у документації
Кілька речей, які з'ясовуються лише на реальних даних — і з'їдають дні налагодження:
- Метрики змінюються без попередження. Meta регулярно перейменовує і деприкейтить метрики insights (історія з video_views → views це класика). Збирач має логувати помилки по кожній метриці окремо, а не падати цілком через одну зниклу.
- Reels, фото і каруселі — три різні набори метрик. Запит «дай saves для відео» може повернути помилку для каруселі. Потрібна мапа «тип медіа → дозволені метрики», інакше половина запитів повертатиме помилки.
- Дані «допливають» із запізненням. Статистика за сьогодні неповна: охоплення і перегляди донараховуються до 48 годин. Якщо збирати метрики поста одразу після публікації і більше не оновлювати — у базі назавжди лишаться занижені цифри. Правильно — перезбирати свіжі публікації кілька днів поспіль.
- Тестове середовище ≠ бойове. У режимі розробки Meta-застосунок працює лише з акаунтами, які мають у ньому роль. Дашборд, що ідеально працює на вашому акаунті, мовчки не побачить акаунт клієнта, поки той не доданий до застосунку.
Кожен пункт окремо — дрібниця. Разом вони пояснюють, чому «простий дашборд на вихідні» розтягується на місяць: основний час іде не на графіки, а на з'ясування недокументованої поведінки API.
Висновок: рахуйте економіку, а не романтику
Свій дашборд з нуля — гарний side-проєкт для прокачки, але погана бізнес-інвестиція: 3–6 тижнів роботи заради функціональності, яка вже лежить на GitHub безкоштовно. Розумний маршрут: розгорнути готовий Instagram Dashboard за 10 хвилин, пожити з ним місяць і тільки потім вирішувати, чого вам бракує — і доробляти саме це, а не все підряд.
Продукт безкоштовний і відкритий: github.com/MaxICo-Agency/instagram-dashboard. А якщо потрібна кастомна версія під ваш бізнес — свої метрики, інтеграції з парсерами чи наскрізною аналітикою, білий лейбл для агенції — MaxICo Labs зробить доробку під ключ. Перший крок безкоштовний: 30-хвилинний AI-аудит на maxicolabs.com/contact.
Часті питання
Скільки часу займає розробка дашборда Instagram з нуля?
Реалістично 15–27 робочих днів для розробника середнього рівня: токени і Meta-застосунок, збирач метрик із лімітами, сховище, UI з графіками і періодами, авторизація, деплой. AI-функції (транскрипти, генератор сценаріїв) — ще 2–3 тижні зверху.
Чи можна отримати статистику Instagram без офіційного API?
Парсинг без API порушує умови Meta, нестабільний і не дає головного — внутрішніх метрик (охоплення, saves, демографія), які видно лише власнику акаунта через Graph API з permission instagram_business_manage_insights.
Чи потрібна база даних для дашборда аналітики?
Для 1–10 акаунтів — ні. Обсяг даних мізерний (десятки записів на день), файлове сховище на Docker volume повністю закриває задачу і спрощує бекапи. БД має сенс від сотень акаунтів або складних ad-hoc запитів.
Чому не можна просто запитувати API в момент відкриття дашборда?
Дві причини: rate limits Meta при частих запитах і відсутність глибокої історії в API — наприклад, приріст підписників доступний лише за останні 30 днів. Тому дані треба збирати фоновим завданням щодня і накопичувати локально.
Читайте також
Гайди
З чого почати AI-автоматизацію в бізнесі
Простий фреймворк «почни тут»: оцініть процеси за обсягом × повторюваністю × правилами й виберіть 1-2 quick wins замість абстрактної «AI-стратегії».
Гайди
Голосовий AI-бот для українського бізнесу: приймає дзвінки 24/7
Пропущений дзвінок — це втрачений клієнт. Голосовий AI-агент відповідає на кожен дзвінок українською, відповідає на питання, записує на послугу і передає складні випадки людині. Розбираємо, як це працює, де застосовується і скільки коштує в Україні.
Гайди
Чат-бот для доставки їжі і ресторанів
У пік замовлень оператори не встигають, дзвінки зриваються, а клієнти йдуть до конкурентів. Чат-бот приймає замовлення, відповідає про меню і статус доставки 24/7. Розбираємо сценарії для ресторанів і кафе, інтеграції і ціни в Україні.
Автор
MaxICo Labs — ваш партнер по штучному інтелекту
Applied-AI студія Максим Шаповал (засновник MaxICo Labs). Будуємо AI-агентів, чат-боти, голосові агенти, CRM і автоматизацію у проді — і пишемо тут про те, що реально працює. Виросли з MaxICo Agency.
