What This Screen Does
This screen shows you how much money your business has earned each month over a selected time period. Think of it like a financial scoreboard — it draws a chart so you can see whether revenue is going up, going down, or staying flat. It includes all payments made in the period, both recurring subscriptions and one-time product sales. You can filter the data by product category and break it down by segment (gender or age) to spot trends.
How to Get There
Open the dashboard.
In the left-hand menu, click Insights.
Click Sales (or navigate to the sales sub-section).
You are now on the Monthly Revenue screen.
Step-by-Step Guide
1. Set the Date Range
The chart uses a From Date and To Date that are controlled by the global date filter on the Insights page.
Adjust the date range to cover the months you want to analyse.
The chart will automatically reload whenever you change the dates.
2. Filter by Product Category
In the top-right corner of the card, you will see a dropdown button that defaults to All.
Click it to open the product category menu.
Choose a category to see revenue for that category only.
Option | What It Shows |
All | Revenue from every product category combined. |
Contingents | Revenue from contingent (membership) payments only. |
Punch cards | Revenue from punch card sales only. |
Campaigns | Revenue from campaign-related sales only. |
Personal Training | Revenue from personal training sessions only. |
Drop In | Revenue from drop-in visits only. |
Fines | Revenue from fines only. |
Other | Revenue from products that do not belong to any category. |
Your custom categories | Any product categories you have created will also appear in this list, sorted alphabetically. |
The selected category name appears on the button so you always know which filter is active.
3. Choose a Segment
Next to the category dropdown, there is a second dropdown button that defaults to All.
Click it to choose how the data is broken down.
Segment | What It Does |
All | Shows total revenue as a single line, plus a dashed comparison line. The chart is not stacked. |
Gender | Splits revenue into separate stacked areas by gender (e.g. Male, Female, Unspecified). |
Age | Splits revenue into separate stacked areas by age group. |
When you pick Gender or Age, the chart switches to a stacked area view so you can see how each group contributes to the total.
4. Read the Chart
The X-axis (horizontal) shows months in the format MMM yyyy (e.g. Jan 2025).
The Y-axis (vertical) shows revenue amounts in your default currency.
Two horizontal reference lines appear when there is data:
Line Colour | Meaning |
Blue | The median monthly revenue for the period — the middle value when all months are sorted by revenue. |
Orange | The average (mean) monthly revenue for the period. |
Hover over any point on the chart to see the exact revenue figure for that month.
The legend at the top-right of the chart shows which colour represents which series.
5. Understand the Info Tooltip
Click or hover over the ⓘ icon next to the dropdowns.
It explains: “Included are all payments made in the period, both recurring and product sale.”
This means the chart counts every completed payment, not just new sales.
What Happens Behind the Scenes
You change the date range, segment, or product category
|
v
The screen checks that a gym is selected
|
v
A loading spinner appears on the chart
|
v
API call: getMonthlyRevenue({ fromDate, toDate, segment, productCategoryId })
|
v
Server returns monthly revenue data, including series, median, and average
|
v
(On first load only) API call: getProductCategories()
|
v
Chart renders the data as an area chart with reference lines
|
v
Loading spinner disappears and the chart is ready to explore
Troubleshooting
“The chart is completely empty — no lines or data at all”
Make sure the date range covers a period where payments actually occurred. If the range is too narrow or falls in a gap, there will be nothing to show.
Check that you have a gym selected in the global gym picker at the top of the dashboard. The chart only loads data when a gym is active.
Try setting the product category filter back to All and the segment to All to rule out overly narrow filters.
“I only see one line when I expected two”
When the segment is set to All, the chart shows two lines: a solid line for the current data and a dashed comparison line. If all values in one series are zero, that line will not appear.
Switch the segment to Gender or Age to see a multi-series stacked view instead.
“The median and average lines are missing”
These reference lines only appear when at least one month has revenue greater than zero.
If every month in your selected range has zero revenue, the lines are intentionally hidden to keep the chart clean.
Expand your date range or change the product category filter to include months with revenue.
“The numbers on the Y-axis look wrong or show the wrong currency”
The chart uses your default currency from your chain settings.
If the currency symbol is incorrect, ask your administrator to check the default currency setting under chain/organisation settings.
The chart does not convert between currencies — it displays raw payment amounts in the configured currency.
“The chart takes a long time to load or seems stuck”
Large date ranges (several years) require the server to process more data, which can be slower.
Try narrowing the date range to a shorter period (e.g. the last 12 months) and see if it loads faster.
Check your internet connection. If the connection drops mid-request, refresh the page and try again.
“I changed the gym but the chart did not update”
The chart should reload automatically when you switch gyms in the global gym picker. If it does not, try refreshing the page.
Make sure the new gym has payment data in the selected date range.
“I do not see my product category in the dropdown”
Product categories are loaded from the server when the page opens. If a category was just created, refresh the page to fetch the latest list.
Custom product categories are sorted alphabetically. Scroll through the list carefully — it may be further down.
Built-in categories (Contingents, Punch cards, Campaigns, Personal Training, Drop In, Fines) always appear regardless of your setup.
“The segment dropdown only shows All, Gender, and Age — can I add more?”
These are the only available segments. Custom segments are not supported at this time.
If you need a different breakdown, consider exporting the data and analysing it in a spreadsheet tool.
