A date-by-date operational dashboard giving a visual overview of events, jobs, patients, and crew workload across your team.
The Ops Dashboard gives you a visual, date-by-date picture of your team's operational activity — from headline stats to hourly job trends and per-crew workload.
The Ops Dashboard is available at /web. It's designed for operators and coordinators who need a quick but thorough picture of how a particular day's operations played out — or how today's shift is progressing in real time.
Unlike the home page, which focuses on live, right-now activity, the Ops Dashboard lets you look at any date and work through the charts at your own pace.
When you open the Ops Dashboard, it defaults to today. The currently selected date is displayed as a large heading in the centre of the page — for example, Wednesday 18 Mar 2026. If you're viewing today, a Today badge appears alongside the date.
To move one day at a time, use the navigation buttons either side of the date heading:
On larger screens, the buttons also show the neighbouring date (e.g. Tue 17 Mar) as a label. On mobile, only the chevron is shown.
While the page is loading data for the new date, the dashboard dims and pulses briefly to indicate it's updating.

Rather than stepping through days one at a time, you can jump straight to any date using the date picker.
The dashboard reloads immediately with data for the selected date.
If you've navigated away from today and want to get back quickly, click the Today button on the left side of the modal footer — it jumps straight back to the current date without you having to pick it manually.
To dismiss the modal without changing the date, click Cancel.

Just below the date navigation, four stat cards give you the headline numbers for the selected date at a glance:
| Card | What it shows |
|---|---|
| Events | The number of events active on this date (excludes the Daily Operations system entry) |
| Crews | The total number of crews across all active events |
| Jobs | The total number of jobs across all active events |
| Patients | The number of jobs that have a patient record attached |
These numbers update when you navigate to a different date.

Below the stat cards, each event active on the selected date appears as a clickable card. Cards are arranged in a two-column grid on larger screens.
Each card shows:
Click any event card to go to the full event management page for that event.

All charts on the Ops Dashboard load lazily - they render individually after the page loads, each showing a brief shimmer placeholder while the data is fetched. If a chart has no data for the selected date, it is hidden entirely rather than shown empty.
The Hourly Trend chart shows you how job activity was distributed across the 24 hours of the selected date. It plots three lines:
Hover over any point on the chart to see a tooltip with exact counts for that hour. A legend below the chart identifies the three lines by colour.
This chart is useful for spotting peak demand periods, identifying quiet stretches, and confirming that staffing levels matched activity across the day.
If no jobs have a call time recorded for the selected date, the Hourly Trend chart is hidden. Call times need to be entered on job records for this chart to populate.

The Job Status chart shows the total number of jobs in each status category across all events on the selected date. Statuses with zero jobs are omitted automatically. Possible categories are:
| Status | What it means |
|---|---|
| Completed | Jobs that have been marked as done |
| Active | Jobs that have been dispatched but are not yet done |
| Pending | Jobs that have not yet been dispatched to a crew |
| Hospital | Jobs where the patient has a hospital arrival time recorded |
Hover over any bar to see the exact count for that status.

The Job Types and Priority Categories charts sit side by side (or stacked on narrower screens). Both use the same stacked bar format.
Each bar represents a job type (or priority level). Within each bar, the segments are colour-coded by event — so you can immediately see which events contributed which types of job. Up to eight events are displayed, each assigned a distinct colour. The colour-to-event mapping is shown in the legend below each chart.
For example, if you ran two events on the same day — a music festival and a sporting event — each event gets its own colour. A bar for "Trauma" jobs would show one coloured segment for each event that had trauma jobs, stacked on top of each other to give the total.
The colour assigned to each event is consistent across both the Job Types and Priority Categories charts, so you can cross-reference between them easily.
Hover over any segment to see a tooltip showing the event name and the count for that type or priority.


The Jobs per Crew chart shows how many jobs each crew handled on the selected date, ranked from busiest to lightest. Up to 15 crews are shown.
Each bar represents one crew, identified by callsign. Crews without a named callsign appear as Crew # followed by a short identifier.
This chart is a quick way to spot workload imbalances — whether one crew was consistently over-committed, or whether resources were spread evenly across the day.
Hover over any bar to see the exact job count for that crew.

If there are no events active on the selected date, the charts and event cards section is replaced with a calendar icon and the message No events for this date.
This is normal for dates in the future or dates when your team had no scheduled events. Use the date navigation to move to a date with activity.
Some charts are not appearing. Charts are hidden when there is no data for them on the selected date. For example, the Hourly Trend only appears when at least one job has a call time recorded. Check that job records for the date have the relevant fields completed.
The stat cards show zeros but I know events ran on this date. The Ops Dashboard shows events that were active on the selected date according to their start and end dates. If an event's end date was set incorrectly (e.g. the day before the event actually finished), it may not appear. Check the event's date range in the event settings.
The event cards are not clickable. All event cards are links to the event management page. If clicking a card seems to do nothing, check that you have access to that event. If the issue persists, try refreshing the page.
The Jobs per Crew chart shows "Crew #..." instead of a callsign. Crews that were created without a callsign are identified by a short excerpt of their internal ID instead. Update the crew's callsign from the event management page or team settings to have it display correctly.
The page is stuck in a loading state (blurred and pulsing). The blur and pulse effect appears while the dashboard is fetching data for a new date. If it persists for more than a few seconds, check your internet connection and try refreshing the page.