Skip to main content

Analytics & Reports

The ticket system provides analytics dashboards, scheduled reports, and CSV exports via KoolReport Pro.


Analytics Dashboard

Accessing the Dashboard

Navigate to Staff Panel → Analytics (scp/analytics.php)

Available Metrics

MetricDescription
Tickets CreatedNew tickets per period
Tickets ClosedResolved tickets per period
Average Response TimeTime from creation to first staff response
Average Resolution TimeTime from creation to close
Tickets by DepartmentDistribution across departments
Tickets by PriorityPriority level breakdown
Tickets by StatusCurrent status distribution
Tickets by AssigneeWorkload per staff member
AI Urgency DistributionBreakdown by AI urgency level
Over-Budget CountTickets exceeding budget thresholds
Escalation CountTickets escalated per period

Date Range Filtering

All metrics support configurable date ranges:

  • Today
  • This Week
  • This Month
  • Last 30 Days
  • Last 90 Days
  • Custom Range (date picker)

PM Performance Dashboard

Accessing

Navigate to Staff Panel → PM Dashboard (scp/pm.php)

Available to staff in the PMS_LIST configuration.

Widgets

WidgetDescription
Active TicketsCount of open tickets across all staff
Budget AlertsTickets approaching or over budget
Documentation ReviewTickets pending PM documentation acknowledgment
Staff WorkloadTickets per assignee with capacity indicators
Escalation QueueRecent escalations requiring attention
AI Critical AlertsTickets with CRITICAL urgency
Stale TicketsTickets without activity in configurable days

Budget Alert Thresholds

The PM dashboard highlights tickets based on budget utilization:

LevelThresholdIndicator
Green0–75%On track
Yellow75–90%Approaching limit
Orange90–100%Near budget
Red100%+Over budget (locked)

Scheduled Reports

Configuration

Navigate to Admin → Settings → Analytics (scp/analytics-settings.php)

SettingOptions
Enable Scheduled ReportsYes / No
FrequencyDaily / Weekly / Monthly
Send TimeHour of day (default: 7:00 AM CST)
RecipientsComma-separated email addresses
Report RangePrevious day / week / month (matches frequency)
Include ChartsYes / No

Report Contents

Scheduled reports include:

  • Ticket volume summary (created vs closed)
  • Average response and resolution times
  • Department breakdown
  • Top assignees by volume
  • Escalation count
  • Over-budget ticket list
  • AI urgency distribution
  • Open ticket aging (how long open tickets have been open)

Cron Job

# Runs on configured schedule
php cron-analytics-report.php

The cron checks if it's time to send based on the configured frequency and last-sent timestamp.


CSV Export

From Analytics Dashboard

  1. Set desired date range and filters
  2. Click Export CSV button
  3. Download contains all metrics in tabular format

From Ticket List

  1. Navigate to any ticket queue/list view
  2. Apply desired filters
  3. Click ExportCSV
  4. Download contains ticket details for the filtered set

Export Fields

FieldDescription
Ticket NumberDisplay number
SubjectTicket subject
StatusCurrent status
PriorityPriority level
DepartmentAssigned department
AssigneeAssigned staff member
ClientClient name
OrganizationClient organization
CreatedCreation date/time
Last UpdatedMost recent activity
ClosedClose date (if applicable)
AI UrgencyAI-determined urgency
Estimated HoursAI estimated effort
Budget HoursAllocated budget
Hours UsedHarvest time entries total

KoolReport Integration

Architecture

Analytics are built on KoolReport Pro:

ComponentFilePurpose
Report Classesinclude/koolreports/Data sources and processing
Analytics Pagescp/analytics.phpDashboard rendering
Settings Pagescp/analytics-settings.phpScheduler configuration
Report Croncron-analytics-report.phpScheduled email delivery

Custom Reports

To create a new report:

  1. Create a report class in include/koolreports/
  2. Define data source (MySQL query)
  3. Define processing pipeline (group, filter, calculate)
  4. Add view template for rendering
  5. Register in the analytics dashboard

Legacy Reports

The original osTicket report system is still available at Staff Panel → Reports (scp/reports.php):

  • Ticket Activity (by date range)
  • Agent Activity (by staff member)
  • Department Activity (by department)
  • Help Topic Activity (by topic)

These provide basic counts and are less detailed than the custom analytics dashboard.


Troubleshooting

IssueSolution
Dashboard shows no dataVerify date range includes tickets; check MySQL query logs
Scheduled reports not sendingCheck cron is running; verify email settings
Export is emptyCheck filters aren't too restrictive; verify permissions
Charts not renderingClear browser cache; check JavaScript console for errors
PM Dashboard blankVerify staff ID is in PMS_LIST configuration
Metrics seem incorrectCheck time zone settings; verify date range boundaries