> ## Documentation Index
> Fetch the complete documentation index at: https://faq.exode.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Главная аналитика

> Дашборд школы: ключевые метрики за период — пользователи, ученики, продажи и выручка

Раздел **«Главная»** (`/manage/dashboard`) — это стартовый экран управления школой с
ключевыми показателями за выбранный период. Здесь собраны сводные метрики и графики динамики:
записи на курсы, выручка и активность пользователей онлайн.

<Note>
  Доступ к дашборду есть у сотрудников с правом управления настройками школы
  (`SchoolManageSettings`). Данные считаются сервисом аналитики и подгружаются отдельно
  для каждого блока, поэтому карточки и графики могут появляться не одновременно.
</Note>

<img src="https://mintlify.s3.us-west-1.amazonaws.com/exode-faq/images/online-schools/analytics/dashboard-overview.png" alt="Дашборд школы с карточками метрик и графиками динамики" />

## Ключевые метрики (карточки)

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

| Метрика             | Что показывает                                                        |
| ------------------- | --------------------------------------------------------------------- |
| **Пользователи**    | Общее количество уникальных пользователей на конец выбранного периода |
| **Ученики**         | Пользователи с ролью «ученик» на конец периода                        |
| **Курсы в продаже** | Курсы, находящиеся в запуске за выбранный период                      |
| **Продано курсов**  | Количество проданных экземпляров курсов за период                     |
| **Выручка**         | Сумма всех успешных платежей за период (без учёта возвратов)          |

<Tip>
  Наведите курсор на значок вопроса рядом с названием метрики, чтобы увидеть подсказку с
  точным определением. Для крупных чисел значение показывается в сокращённом виде (K / M / B),
  а точное число — во всплывающей подсказке при наведении. Сумма выручки отображается в валюте
  организации.
</Tip>

### Сравнение с прошлым периодом

Под иконкой каждой метрики выводится «чип» с процентом изменения относительно предыдущего
периода. Сравнение доступно только тогда, когда выбранный период не упирается в дату старта
школы — например, для периода «За всё время» сравнивать не с чем, и чип не отображается.

## Графики динамики

Ниже карточек расположены графики временных рядов. Их набор фиксирован:

| График                   | Что показывает                                                                                     |
| ------------------------ | -------------------------------------------------------------------------------------------------- |
| **Записи на курсы**      | Сколько доступов к курсам выдано за период, в разбивке по способу: покупка, LMS, бесплатная запись |
| **Выручка по платежам**  | Общая сумма дохода от записей за период — динамика и сезонность                                    |
| **Пользователей онлайн** | Количество активных пользователей в системе за период                                              |

График «Записи на курсы» строится по трём сериям одновременно:

| Серия         | Значение                            |
| ------------- | ----------------------------------- |
| **Покупка**   | Доступы, выданные после оплаты      |
| **LMS**       | Доступы, выданные вручную через LMS |
| **Бесплатно** | Бесплатные записи на курс           |

<Tip>
  У графиков можно переключать тип отображения (линия, область, столбцы, точки) — переключатель
  находится в заголовке карточки графика.
</Tip>

## Выбор периода

Управление периодом вынесено в панель фильтров над метриками. Период задаётся одним из двух
способов: готовым пресетом или произвольным диапазоном дат.

### Пресеты периода

| Пресет            | Диапазон                                            |
| ----------------- | --------------------------------------------------- |
| Сегодня           | Текущий день                                        |
| Вчера             | Предыдущий день                                     |
| Эта неделя        | С начала текущей недели                             |
| Этот месяц        | С начала текущего месяца                            |
| Этот квартал      | С начала текущего квартала                          |
| Этот год          | С начала текущего года                              |
| Последние 30 дней | 30 дней до сегодняшнего дня (значение по умолчанию) |
| За всё время      | От даты создания школы до сегодня                   |

По умолчанию открывается период **«Последние 30 дней»**. Пресет «За всё время» отсчитывается
от даты подключения школы.

### Произвольный диапазон и группировка

Рядом с пресетами есть выбор произвольного диапазона дат. Ручной диапазон имеет приоритет над
пресетом. В зависимости от длины выбранного периода система автоматически подбирает допустимые
интервалы группировки (гранулярность) точек на графиках:

| Длина периода | Доступные интервалы | По умолчанию |
| ------------- | ------------------- | ------------ |
| До 1 дня      | Минуты, часы        | Час          |
| До 7 дней     | Часы, дни           | День         |
| До 31 дня     | Дни, недели         | День         |
| До 92 дней    | Недели, месяцы      | Месяц        |
| До 366 дней   | Месяцы, кварталы    | Квартал      |
| Более года    | Кварталы, годы      | Год          |

<Note>
  Если выбранный вручную интервал недоступен для текущей длины периода, система подставит
  ближайший допустимый. Период и интервал сохраняются в адресе страницы (URL), поэтому ссылку
  на конкретный срез аналитики можно скопировать и переслать коллеге.
</Note>

## Как устроены данные

Дашборд получает данные от отдельного сервиса аналитики (ms-analytics) через GraphQL-запросы
`analyticsOverviewQuery`, `analyticsFinanceQuery` и `analyticsUsersQuery`. Каждый блок
запрашивает свой тип данных и передаёт период (в миллисекундах) и таймзону клиента.

```graphql theme={null}
query AnalyticsOverviewQuery($input: AnalyticsQueryInput!) {
    analyticsOverviewQuery(input: $input)
}
```

<Note>
  Кнопка обновления в шапке страницы принудительно перезапрашивает все три раздела аналитики
  (overview, finance, users) — актуально, если данные за текущий день ещё догружаются.
</Note>
