How to track class and instructor utilization with AI

Ops & Supply3 AI tools6 steps6 friction points

Tracking class and instructor utilization means knowing, at any given time, which classes are filling up, which are running half-empty, which instructors are over-scheduled, and which have room on their plate. For operators running fitness studios, yoga spaces, martial arts gyms, or any schedule-driven business, this data sits at the intersection of revenue, staffing, and member satisfaction — and it rarely surfaces clearly without someone deliberately going to look for it.

The workflow feels like an AI problem because it's fundamentally pattern recognition on structured data: attendance numbers, class slots, instructor hours, booking rates over time. If you could just hand a spreadsheet to something smart and ask 'who's underperforming and who's maxed out,' you'd have your answer in seconds. That's exactly the pitch for general-purpose AI tools, and it's why operators keep opening ChatGPT and pasting in their booking exports.

ChatGPT, Claude, and Gemini can genuinely help here — especially for one-off analysis. Paste in a week's worth of attendance data and ask for a utilization breakdown by class and instructor, and you'll get a reasonable summary, some observations, and maybe a table. These tools are good at interpreting structured data, spotting outliers, and suggesting what to look at next. The honest ceiling is that none of this persists, connects to live data, or runs automatically.

Ops & Supply3 AI tools6 steps6 friction points
AI walkthrough

How to do it with AI today

A practical walkthrough using ChatGPT, Claude, and other off-the-shelf LLMs — what they're good at, what you'll have to do by hand.

Tools that work for this
ChatGPTClaudeGemini
Step-by-step
1 Export your class attendance and booking data from your scheduling software (Mindbody, Pike13, Glofox, or even a Google Sheet you maintain manually) as a CSV. This is the manual step no AI tool skips for you.
2 Open ChatGPT or Claude and paste the CSV contents directly into the chat. Keep it under a few hundred rows — large exports will hit context limits and get truncated without warning.
3 Ask the model to calculate utilization rate per class (bookings divided by capacity) and per instructor (total hours taught vs. available hours), and to flag anyone below 60% or above 90% as needing attention.
4 Ask a follow-up prompt to identify which specific class times or formats are consistently under-booked across the trailing four weeks — this is where the pattern-recognition strength of these models actually shows up.
5 Copy the model's output into a Google Doc or Notion page. Manually format it as a weekly summary you can share with your team or use in a staffing conversation.
6 Repeat the entire process next week with a new export, re-establishing context from scratch each time — the model retains nothing between sessions.
Prompts you can copy
Here is my class attendance CSV for the past 4 weeks. Calculate utilization rate per class (bookings/capacity) and per instructor (hours taught/hours available). Flag any class below 60% utilization or any instructor above 90% hours. Format as a table.
Based on this attendance data, which three instructors have the lowest average class fill rate? Which classes are consistently under 50% full? Give me the specific class names, times, and instructors responsible.
Look at this instructor schedule. Which instructors are teaching more than 20 hours per week? Which are teaching fewer than 8? Suggest a rebalancing that brings everyone into the 10-18 hour range without canceling any class that runs above 70% full.
Here is four weeks of class booking data. Identify any time slots (e.g., Tuesday 6am, Saturday noon) that are below 55% capacity across all four weeks. Rank them by average utilization from lowest to highest.
Summarize this week's class utilization in 5 bullet points a studio manager could read in 60 seconds. Include the highest-performing class, lowest-performing class, most utilized instructor, and one staffing recommendation.
Reality check

Where this gets hard

The walkthrough above works — until your numbers change, the LLM hallucinates, or you have to re-paste everything next month.

No live connection to your scheduling software — every analysis starts with a manual CSV export and paste, which means utilization data is always at least a few days stale.
Context window limits bite on real datasets — studios with 30+ classes and multiple instructors across four weeks generate enough rows to cause silent truncation mid-analysis.
Output structure shifts between sessions — the table format and metric definitions you carefully prompted on Monday aren't guaranteed to match what you get when you run it again Friday.
Nothing persists between runs — next week you're rebuilding the same prompt, re-explaining the same capacity thresholds, and re-pasting the same data format from scratch.
Trend analysis requires you to manually stitch together outputs from previous weeks — the model can't look back at its own prior answers to tell you whether utilization is improving or declining over time.
No automated delivery — if you want a weekly utilization summary to land in Slack or email without manual effort, raw LLMs don't have a mechanism to make that happen.

Tired of the friction?

Starch runs the whole workflow on live data — no copy-paste, no hallucinated numbers, no re-prompting next month.

See the Starch version →
Starch alternative

The same workflow on Starch

Starch is an agentic operating system — you describe the utilization tracker you want in plain English, and an agent builds it as a persistent app connected to your live scheduling data, then keeps it running automatically every week without you re-prompting anything.

Connect your scheduling software from Starch's integration catalog — the agent queries your live class and booking data whenever the app runs, so utilization numbers reflect this week, not last Tuesday's export.
Describe the utilization app you want: 'Show me fill rate by class and instructor for the trailing 4 weeks, flag anyone below 60% or above 90%, and refresh every Monday morning.' Starch builds it — no form-filling, no code.
Set up an automation that delivers a weekly utilization digest to your team Slack channel every Monday — same structured summary, live data, no manual effort after the first setup.
Use the Growth Analyst starter app as a starting point for pattern-spotting: it's built to surface what changed, what's working, and where to focus — the same shape of analysis you're doing manually with class fill rates, applied to your operations data.
Adjust your analysis criteria in plain English at any time — 'change the underutilization threshold from 60% to 65% and add a column for instructor tenure' — and the agent updates the app without rebuilding anything from scratch.
Because the app persists and runs on a schedule, you get a longitudinal view automatically — utilization trends over 8 weeks, not just a one-off snapshot you have to remember to compare against last month's notes.
Get closed-beta access →
Toolkit

Starch apps for this workflow

Pick your role

See this workflow by operator

Run track class and instructor utilization on Starch

You're on the list! We'll be in touch soon.