Open MilSim.io
C2 Overview

Analytics

Read community, attendance, and vote reports without changing live records.

Analytics is read-only: changing a date or bucket changes the report, not a member, event, or application.

Access

AreaPrerequisitePermissionResult
AnalyticsNone identifiedcommunity-analytics:readApplication, rank, unit, qualification, award, retention, and activity reports.
AttendanceExisting event/campaign/profile attendance datacommunity-analytics:readAttendance status, non-response, unit coverage, timeline, trend, and profile summaries.
Votesvote_analytics featurecommunity-vote-analytics:readVote/token summary, trend, platform, audience, and expiry forecast.

The vote route checks both its permission and feature. A missing feature is not fixed by assigning a broader staff role.

Community analytics

  1. Open Analytics.
  2. Choose Bucket: day, week, month, half-year, or year.
  3. Set Start date and End date. Reset returns to C2’s recent default range (the previous six months through today).
  4. Read the cards and charts together: application funnel/trend/SLA, rank distribution, unit slots, qualification coverage, award velocity, retention, and activity heatmap.
ControlResultRisk / check
BucketGroups time-based reports at the chosen granularity.A coarse bucket can hide short-lived changes; use day or week before investigating a recent incident.
Start date / End dateLimits reports that accept a date range.An empty chart can mean no records match the range, rather than missing data.
ResetRestores the default range.It discards the currently selected dates in the page.

Some cards do not receive the date controls from the C2 page. Do not compare their totals to a filtered chart as if both used the same range.

Attendance analytics

Open Analytics > Attendance to review attendance already recorded against events, campaigns, units, and profiles. The page presents status distribution, campaign status distribution, no-response members, unit coverage, campaign timeline, status trend, and a profile summary.

There are no edit or attendance-status controls on this page. Use the event and attendance workflows to correct data, then return here to verify the result. A no-response row is a reporting result; it does not prove a member deliberately declined or saw an invitation.

Vote analytics

Open Analytics > Vote analytics, select hour, day, or week, set the date range, then review:

  • summary KPIs;
  • vote/token trend;
  • web versus Discord platform split;
  • anonymous versus authenticated audience split; and
  • expiry forecast.

Use Reset to restore the default recent 30-day range. The forecast is an estimate of upcoming expiry totals; it is not a promise of future voting activity.

Verification notes

The API guards its analytics controller with community-analytics:read; the vote endpoints additionally use community-vote-analytics:read and vote_analytics. C2 does not call usePermissionCheck in the general or attendance page source, so confirm route/sidebar behaviour with a role that lacks community-analytics:read before treating the client as the sole access control.

Copyright © 2026