Дашборд для тренажёрного зала 2026: посещаемость, абонементы, заморозки, тренеры и failed payments
Дашборд для тренажёрного зала нужен не для общей картинки "как живет фитнес-клуб". У gym-владельца каждый день другие вопросы: кто реально прошел check-in, какие абонементы уходят в hold/freeze, сколько оплат зависло, какие тренеры загружены только на бумаге и какие клиенты перестали ходить до даты продления.
Эта страница отличается от общей статьи про дашборд фитнес-клуба: там фокус шире - LTV, продажи, доход по тренерам и общая управленческая аналитика клуба. Здесь фокус уже: операционный дашборд зала с attendance, access rules, freezes, booking/no-show, failed payments и trainer utilization. Такая структура снижает риск дубля и помогает владельцу проверить именно gym-операции, а не читать тот же текст под другим URL.

Главное
- Для первого экрана обычно достаточно 7-9 KPI: check-ins, attendance by hour, active memberships, expiring memberships, holds/freezes, failed/overdue payments, trainer utilization, no-show/late cancel и clients at risk.
- Официальные docs TeamUp, Wodify, Gymdesk и Mindbody показывают одну практическую вещь: membership, attendance, booking и payments живут в разных отчетах. Один график "выручка" не заменяет сверку статусов.
- Membership freeze/hold нельзя считать churn без правила. В TeamUp holds вынесены в отдельный membership report, Wodify хранит Membership Holds как отдельный dataset, а Mindbody autopay schedule показывает suspended / scheduled after suspension статусы для contract suspension.
- Failed payment - это не просто "минус выручка". Gymdesk описывает retry failed payments на 2, 4 и 7 день, overdue tab и daily payment report; Wodify в custom reporting хранит отдельную запись по каждой transaction attempt и outcome.
- Форумы владельцев и пользователей gym software полезны как сигналы: люди чаще жалуются на неточные membership reports, просроченные продления, billing migration, check-in блокировки и ручной поиск lapsing members. Эти обсуждения ниже не используются как источник точных KPI.
- SimpleDashboard подходит как быстрый слой над CSV/XLSX/API-выгрузкой. AI ускоряет сборку графиков, но формулы, статусы и правила доступа должен подтвердить человек.
В нашем локальном SEO-аудите слабым местом старой страницы были неподтвержденные проценты и повтор общей статьи про фитнес-клуб. Для Google 2026 quality rewrite я убрал спорные "80% не вернется" без первоисточника, добавил официальные docs по reporting/billing и сделал таблицу рисков, которую можно использовать как чек-лист перед пилотом.
KPI и риски тренажёрного зала
| KPI | Практическая формула для пилота | Источник данных | Зачем владельцу | Главный риск |
|---|---|---|---|---|
| Check-ins / посещения | Количество успешных check-in за период по часу, дню, зоне, membership type | Access control, attendance report, CRM | Видно реальную загрузку зала, а не только продажи абонементов | Один клиент может пройти без membership link или быть не отмечен администратором |
| Attendance heatmap | check-ins by hour / доступная вместимость или baseline периода |
Attendance summary, turnstile, booking | Помогает менять часы staff, групповые классы и промо на тихие окна | Check-in не равен тренировке: человек мог уйти через 5 минут |
| Active memberships | Активные абонементы на дату с типом, start/end, renewal status | Membership report | Понимание базы платящих клиентов | "Активный" может означать pricing option, contract, paid membership или посещение за месяц |
| Expiring soon | Абонементы с окончанием в следующие 7/14/30 дней | Memberships, renewal dates | Список для персонального продления до потери клиента | Renewal date и access end date могут отличаться |
| Holds / freezes | Активные, будущие и завершенные заморозки с причиной и датами | Membership holds/freezes report | Не считать временную паузу как churn и не терять дату возврата | Freeze без end date скрывает реальный риск ухода |
| Failed / overdue payments | Failed attempts, overdue invoices, retry status, recovered amount | Billing/payments report, transaction attempts | Быстро вернуть revenue без ручного поиска | Повторные попытки могут задваивать строки, если считать attempts как клиентов |
| Trainer utilization | фактические тренерские часы / доступные часы, отдельно PT sessions, classes, admin |
Booking, payroll, instructor reports | Кто перегружен, кто недозагружен, где менять расписание | Запланированный слот, attended session и paid session дают разные проценты |
| No-show / late cancel | no_show + late_cancel / booked sessions |
Booking report | Потерянные места в групповых/персональных тренировках | Отмена по правилам и no-show часто смешаны в одном статусе |
| Clients at risk | Клиенты без check-in N дней до renewal или с резким падением visits | Attendance history + membership end date | Ранний список для outreach | Нельзя брать один N для всех: новичок, годовой клиент и PT-клиент ведут себя по-разному |
Эта таблица намеренно не дает "норму" по рынку. У бюджетного 24/7-зала, CrossFit box, martial arts gym, boutique studio и большого клуба разные циклы посещений, правила заморозки и billing-модель. Сначала полезнее построить baseline за 30-90 дней, затем смотреть отклонения по membership type, источнику клиента, тренеру, времени посещения и payment status.
Что подтверждают официальные docs
Attendance и booking
TeamUp в reporting overview объединяет attendance, revenue, memberships и customers, а фильтры позволяют резать отчеты по instructor, venue, class type, membership, customer, booking source и status. Для тренажёрного зала это важный сигнал: дашборд должен поддерживать фильтры, а не только общий график посещений.
Wodify в attendance reporting прямо связывает посещаемость с engagement, class performance и retention trends. В списке отчетов есть All Attendance, Attendance Limit Exceedances, Attendance Summary и Attendance Trend; Attendance Summary показывает среднюю посещаемость по часу и дню недели. Это хорошая модель для heatmap зала.
Gymdesk в session access docs описывает, что memberships определяют оплату, периодичность и доступ к сервисам, а require booking может ограничивать check-in только теми, кто записался. Поэтому access dashboard должен показывать не только "кто пришел", но и почему кому-то отказали в доступе: нет активного membership, закончились sessions, не было booking или payment просрочен.
Member management, freezes и retention
TeamUp отдельно показывает membership health: active memberships, cancellations, holds и trends over time. В том же overview есть All Customer Memberships с active/cancelled/completed/upgraded/downgraded/on-hold статусами и All Membership Holds с active/ended/upcoming holds, proration и credit calculations.
Wodify custom reporting хранит Membership Retention, Membership Retention Rates, Membership Holds и Memberships как отдельные datasets. В Holds есть start/end dates, length и reason; в Memberships - type, start/end dates, attendance limits и financial value. Это подтверждает, что freeze/hold надо выводить отдельной карточкой, а не растворять в churn.
Mindbody Autopay Schedule показывает scheduled, accepted, declined и suspended статусы, а при contract suspension часть autopays получает статус scheduled after suspension или suspended. Практический вывод: если зал использует suspension/freeze, payment schedule и membership status нужно сверять вместе.
Payments и failed billing
Gymdesk payment docs делят payments на paid, scheduled, pending, overdue и refunded; overdue payments смотрятся в Billing -> Payments -> Overdue. В billing setup описаны automatic retries failed payments через 2, 4 и 7 дней после исходной даты, а daily payment report показывает, сколько оплат было due, paid on time, failed processing и manual overdue.
Wodify custom reporting по Transactions хранит record for each individual transaction attempt; если payment failed и затем reprocessed, есть отдельная запись по каждой попытке и outcome. Поэтому в дашборде важно различать failed attempts, unique affected members, recovered payments и still overdue amount.
Gymdesk billing feature page дополнительно подчеркивает automated payment issue resolution, upcoming/missed/failed member payments, reminders по expired cards и overdue payments. Для владельца зала это не бухгалтерская деталь, а ежедневный список денег, которые можно вернуть.
Trainer utilization и payroll
TeamUp в reporting overview включает Instructor Hours and Pay Rates: hours worked by each instructor, class occupancy, no-show counts и pay rate breakdowns. Wodify custom reporting в Payroll Details хранит record for each class where coach/staff generates earned payment, но только для уже произошедших classes и generated payment, без future projected payroll.
Практический вывод: trainer utilization нельзя считать одной формулой без уточнения базы. Для расписания нужна загрузка по scheduled hours, для сервиса - attended sessions, для зарплаты - paid or earned sessions, для продаж PT - revenue per trainer. Один процент "загрузка тренера" без подписи почти всегда спорный.
Сигналы из сообществ владельцев gym/software
Форумы и Reddit здесь используются только как signal, не как доказательство точных норм.
| Community-сигнал | Что это значит для дашборда | Как не использовать неправильно |
|---|---|---|
| Владельцы microgym жалуются, что membership, retail, payroll/commissions и reporting не сходятся в одном software | Нужен reconciliation-блок: membership count, payments, payroll и source file date | Не делать вывод, что конкретная система "плохая"; проверять свои выгрузки |
| Пользователи обсуждают, как не пропустить expiring memberships и renewals | Нужна отдельная таблица expires in 7/14/30 days с последним check-in и payment status |
Не переносить чужие проценты retention; считать свой список продлений |
| В темах про recurring memberships люди боятся migration, payment vault и dropped payments | Для миграции нужен dashboard контроля duplicate billing, missing payment method и next charge date | Не обещать бесшовный перенос карт без проверки платежного провайдера |
| В обсуждениях attendance/check-in всплывают проблемы "не отметили", "не пускает", "история посещений неверная" | Нужны refused sign-ins, attendance exceptions и список ручных правок | Не считать check-in абсолютной истиной без audit trail |
| В retention-темах часто ищут lapsing members вручную по нескольким отчетам | Нужен risk list: no visit N days + renewal soon + failed payment + low PT usage | Не использовать один generic N дней для всех типов клиентов |
Практический вывод простой: community-сигналы помогают составить список проверок перед запуском. Но точные KPI, нормы и финансовые решения должны опираться на ваши данные и официальную документацию используемой CRM/billing-системы.
Какие данные нужны для первого прототипа
Минимальный CSV/XLSX для SimpleDashboard:
- member:
member_id, membership type, status, start date, end date, renewal date; - attendance:
member_id, check-in datetime, location/zone, source, staff override flag; - booking: class/session/PT appointment, instructor, status
booked/attended/no_show/late_cancel/canceled, capacity; - holds/freezes: hold id, member_id, start date, end date, reason, proration/credit if available;
- payments: invoice/payment id, due date, paid date, amount, status
paid/scheduled/pending/overdue/refunded/failed, retry attempt, payment method; - trainer: trainer id, scheduled hours, attended sessions, paid sessions, payroll/commission if used;
- data quality: upload date, source system, timezone, list of excluded statuses.
Телефон, email и ФИО лучше заменить на internal member_id, если дашборд нужен для управления, а не для немедленного обзвона. Если нужен outreach list, доступ к персональным данным надо ограничить отдельно.
Как собрать дашборд тренажёрного зала
Шаг 1. Зафиксировать словарь KPI
Перед загрузкой файла запишите:
- Что значит active membership.
- Что значит freeze/hold и когда он превращается в churn risk.
- Какие статусы booking входят в no-show и late cancel.
- Как отличать failed payment attempt от уникального клиента с долгом.
- Какие часы тренера считать: scheduled, attended, paid или payroll.
- Какой период считать "клиент перестал ходить" для разных membership types.
Без этого AI построит график, но смысл метрик будет спорным.
Шаг 2. Загрузить выгрузку и попросить не только графики
В @coderboxbot можно загрузить CSV/XLSX и написать:
Собери дашборд тренажёрного зала за последние 60 дней. Нужны check-ins по часам и дням, active memberships, expiring in 14/30 days, holds/freezes, failed и overdue payments, trainer utilization по scheduled/attended/paid sessions, no-show/late cancel, список клиентов at risk. Отдельно покажи строки с неизвестным статусом, пустой датой окончания, failed attempts без member_id и freeze без end date.
Шаг 3. Сверить контрольные числа
Перед тем как обсуждать дизайн, проверьте 10-20 строк:
| Контроль | Что сверить |
|---|---|
| Active memberships | Совпадает ли число активных абонементов на дату с CRM |
| Check-ins | Совпадает ли число проходов за вчера/неделю с access или attendance report |
| Holds/freezes | Не попали ли замороженные абонементы в churn и active revenue одновременно |
| Failed payments | Не считаются ли retry attempts как несколько разных клиентов |
| Trainer utilization | Не смешаны ли групповые классы, PT sessions и административные часы |
| No-show | Late cancel, отмена по правилам и no-show разделены |
| Expiring soon | Учитываются renewal date, end date и prepaid/contract rules |
Если контрольные числа не сходятся, сначала исправляется mapping, timezone, статусы и правила исключений. Только потом дашборд можно использовать для решений.
Когда достаточно Excel, а когда нужен SimpleDashboard
| Ситуация | Excel еще подходит | Нужен SimpleDashboard |
|---|---|---|
| Один зал, до 100-150 активных клиентов, администратор ведет CRM аккуратно | Да, если отчет нужен раз в неделю | Только для удобного экрана владельцу |
| 200+ клиентов, recurring billing, freezes и expiring memberships | Риск ручного пропуска | Да, чтобы видеть holds, overdue и renewal list каждый день |
| Есть групповые классы и персональные тренировки | Временно | Да, если нужно разделить trainer utilization, no-show и paid sessions |
| Есть турникет/access control и отдельная CRM | Сложно сверять | Да, нужен слой check-in vs membership/payment status |
| Есть failed payments и retry schedule | Excel быстро устаревает | Да, нужен список попыток, recovered и still overdue |
| Нужно считать зарплату тренерам | Только после ручной проверки | Дашборд помогает, но не заменяет payroll-сверку |
SimpleDashboard не заменяет gym management system, платежного провайдера, access control или бухгалтерию. Его роль - собрать управленческий слой поверх данных: кто ходит, кто перестал ходить, где зависли оплаты, какие заморозки надо контролировать и где расписание тренеров не совпадает с фактической загрузкой.
Что подготовить перед внедрением
- выгрузку attendance/check-ins за 30-90 дней;
- membership report с active, canceled, completed, on-hold/frozen и expiring dates;
- список freezes/holds с reason, start/end и proration/credit, если есть;
- payments report с due, paid, failed, overdue, refunded и retry attempts;
- booking report с attended, no-show, late cancel и capacity;
- trainers/instructors report с scheduled hours, attended sessions, class occupancy и pay rules;
- правила доступа: когда клиент не может пройти, если payment overdue или sessions закончились;
- 10-20 реальных клиентов для ручной сверки.
Часто задаваемые вопросы
Какие данные нужны для дашборда тренажёрного зала?
Минимум - attendance/check-ins, memberships, holds/freezes, payments и trainer/booking report. Для первого прототипа достаточно CSV/XLSX за 30-90 дней, но в файлах должны быть стабильные member_id, даты, статусы и источник выгрузки.
Можно ли считать retention только по продлениям абонементов?
Можно как финансовую метрику, но для gym-операций этого мало. Клиент может оплатить годовой абонемент и перестать ходить через месяц; другой может уйти во freeze и вернуться. Поэтому рядом нужны attendance decay, expiring memberships, holds/freezes и failed payments.
Как учитывать заморозку абонемента?
Freeze/hold лучше считать отдельным статусом: active hold, upcoming hold, ended hold, open-ended hold. Не смешивайте его с churn, пока не прошла дата возврата или внутреннее правило риска. В дашборде обязательно показывайте start date, end date и reason.
Почему failed payments надо считать отдельно от overdue payments?
Failed payment - это попытка списания с outcome. Overdue payment - это долг на текущую дату. Если система делает несколько retry attempts, один клиент может дать 3 failed attempts, но остаться одним должником. Для управления нужны обе цифры: attempts и unique affected members.
Как считать загрузку тренеров?
Сначала выберите базу: scheduled hours, attended sessions, paid sessions или payroll hours. Для расписания нужна scheduled/available utilization, для качества - attendance/no-show, для зарплаты - paid или earned sessions. Один общий процент без подписи почти всегда вызывает спор.
Подходит ли SimpleDashboard для небольшого зала?
Да, если владелец уже тратит время на ручной weekly report или теряет продления и failed payments. Если клиентов мало, оплаты простые и все видно в одной CRM, Excel может быть достаточным.
Стоимость SimpleDashboard - 5 000 ₽/мес. Напишите в Telegram: @coderboxbot - соберем первый дашборд тренажёрного зала по вашей выгрузке и отдельно отметим, какие KPI нельзя считать финальными без сверки.
Подробнее о возможностях SimpleDashboard
Смотрите также
- Дашборд для фитнес-клуба: широкая управленческая аналитика клуба
- База клиентов онлайн: как вести учёт без CRM
- Учёт клиентов 2026: программа для малого бизнеса
- Финансовый дашборд: выручка, расходы и прибыль
- KPI дашборд 2026: мониторинг ключевых показателей
Источники
- TeamUp Help Centre, "An Overview of Reporting" - reports, filters, attendance, memberships, holds and instructor reports: https://support.goteamup.com/en/articles/9327463-an-overview-of-reporting
- Wodify Help, "Understanding Attendance Reporting" - attendance reports, hourly/day summaries and at-risk client use: https://help.wodify.com/hc/en-us/articles/1500002099981-Understanding-Attendance-Reporting
- Wodify Help, "Data and Tables for Custom Reporting" - Membership Retention, Membership Holds, Memberships, Payroll Details and Transactions datasets: https://help.wodify.com/hc/en-us/articles/4408354852119-Data-and-Tables-for-Custom-Reporting
- Gymdesk Docs, "How To Manage Session Access And Troubleshoot Failed Check-ins" - memberships, access rules, booking requirement and attendance edge cases: https://docs.gymdesk.com/help/docs/session-access
- Gymdesk Docs, "Payments" - paid/scheduled/pending/overdue/refunded payments, invoices, refunds and overdue handling: https://gymdesk.com/page/billing-payments
- Gymdesk Docs, "Setting up your gym billing" - payment reminders, failed payment retries and daily payment report: https://gymdesk.com/page/billing-setup
- Gymdesk, "Gym Billing Software" - recurring billing, missed/failed payments, expired card reminders and payment issue resolution: https://gymdesk.com/features/billing
- Mindbody Support, "Client Autopay Schedule screen" - scheduled, accepted, declined, suspended and scheduled after suspension statuses: https://support.mindbodyonline.com/s/article/206026137-Autopay-Schedule-screen
- Mindbody Support, "How to remove membership icons from clients" - membership status caveats around contracts, pricing options and future terminations: https://support.mindbodyonline.com/s/article/Why-Do-Some-Clients-Still-Have-a-Membership-Icon
- Reddit r/GymOwnerNetwork: PushPress reporting pain points, community signal only: https://www.reddit.com/r/GymOwnerNetwork/comments/1m4cmv9/
- Reddit r/gymowner: expiring memberships and renewal tracking, community signal only: https://www.reddit.com/r/gymowner/comments/1rtquld/honest_question_how_are_you_tracking_memberships/
- Reddit r/FitnessStudioOwner: recurring memberships and payment data migration, community signal only: https://www.reddit.com/r/FitnessStudioOwner/comments/1p11s1o/thinking_of_switching_from_mindbody_but_how_to/
- Reddit r/bjj: overdue payment and attendance blocking discussion, community signal only: https://www.reddit.com/r/bjj/comments/17z32hu/how_does_your_gym_ensure_that_all_members_pay_in/
- Reddit r/mindbody: retention reports and no-return workflow discussion, community signal only: https://www.reddit.com/r/mindbody/comments/1s9nbn1/does_anyone_actually_use_the_retention_reports_in/
AI disclosure: материал обновлен 2026-05-05 для wave simple-dashboard-wave-6 по issue #113. AI-инструмент использовался для первичного исследования официальных gym/member management/booking/payment docs, отбора community-сигналов, черновой структуры и проверки Google 2026 quality gaps. Факты о attendance reports, membership holds/freezes, autopay suspension, failed payment retries, trainer utilization и transaction attempts сверены по официальным источникам; форумы использованы только как сигналы практических проблем, не как доказательная база. Финальные формулы, caveats, отличие от страницы fitness club, источники, CTA и продуктовые ограничения проверил Александр Руин, основатель habab.ru.
О сервисе "AI-конструктор бизнес-дашбордов"
Платформа для создания аналитических дашбордов через AI-чат. Загрузите CSV/Excel или подключите API, опишите какие метрики нужны — получите готовый дашборд с графиками, KPI и фильтрами. Без программирования, за минуты.
Ключевые преимущества:
- Не нужен программист или BI-аналитик
- Дашборд готов за минуты, а не за недели
- AI сам предлагает подходящие визуализации
- Данные остаются на вашем сервере
- Интеграция с любыми источниками через API
- Автоматическое обновление и рассылка отчётов
Для кого подходит:
Сценарии использования:
📰 Промо-статьи наших решений
Изучите детальные обзоры наших технологических решений для различных отраслей:
🚀 Разработка и автоматизация
- Автоматизация холодных продаж в криптопроектах
- AI-Assisted Development
- AI CRM Constructor: Конструктор CRM под ваш бизнес
- Парсер лидов с FL.ru
- Разработка Платформы для Автоматизации Найма Переводчиков
- Разработка WhatsApp Business Автоматизации под ключ
- Корпоративная Платформа Обмена Изображениями
- AI Quality Assurance — контроль качества AI-ответов
- Интеграция AMOCRM, Excel и Google Drive
- SimpleCrypto — AI-конфигуратор крипто-кошелька
- Синхрон1С - Автоматизация 1С без программиста
- SimpleReview — Chrome-расширение для автоматического исправления ошибок сайта
- Разработка Telegram Mini App с Лутбоксами
- YouTube-Telegram Скрапер для Стартапов
📈 Бизнес и автоматизация
- Разработка Telegram Ботов под ключ
- YandexDirect MCP сервер
- Корпоративные решения голосового ввода с ИИ
- Веб-версия аналитического дашборда для телефонии
- Платформа управления Telegram рекламой
- Bitcoin Mempool Explorer
- Презентационный сайт по брендбуку
- Разработка Платформы Прогнозов на Спорт по Модели GoalBet
- Обучающий кабинет
- Корпоративная система мониторинга медиа и аналитики
- Администрирование серверов
- Криптовалютный AML-чекер бот
- Новостной радар для промышленности
- Счетчик калорий Telegram Bot
- Talk to Excel / Talk to SQL — AI-ассистент для табличных данных
- Разработка веб-приложений по дизайну
- Разработка системы анализа договоров с ИИ
- Презентационный сайт по брендбуку
- Синхронизация 1С с WordPress
💰 FinTech и медиа
Работаю до результата и бизнес-ценности, быстро корректирую подходы в процессе. Использую современный стек для качественного и быстрого решения задач.