One catalog for every number in ClinyPal

The Report Library, at /reports, is the front door to every report ClinyPal produces. Rather than scattering reports across the settings menu or burying them inside the module they relate to, ClinyPal keeps them in a single searchable catalog, grouped by category, so the question "is there a report for that?" almost always has a fast answer.

Most clinics build a habit around a small handful of reports — a manager checking Daily Takings every evening, an owner glancing at Practice Revenue once a week, a front-desk lead running Outstanding Balances before a billing run. The library is designed around that reality: the reports you use constantly should be one click away, and the ones you use rarely should still be easy to find without knowing exactly what they're called.

At a glance
  • How the report catalog is organized, and how to search or filter it
  • What the Pinned KPI strip is, and why its seven tiles aren't reports of their own
  • How "Explain this number" works on every KPI card, in full detail
  • How the Refine row's AI-suggested filter chips and observations work, and why they can never show a hallucinated figure
  • What every report looks like when the AI layer is unavailable
ClinyPal Report Library overview
The Report Library page: the Pinned KPI strip across the top, the search and category filter bar beneath it, and the catalog grid of report cards grouped by category.

Finding the report you need

Below the Pinned strip, the catalog grid organizes every report into one of six categories:

CategoryWhat lives there
FinancialCash-up, collections, outstanding debt, tax, discounts, and everything else touching money — see <a href="/reports-financial/daily-takings/">the financial reports</a>
AppointmentsSchedule volume, cancellations and no-shows, note compliance, and location comparisons
PatientsRecalls, birthdays, lapsed patients, retention cohorts, and new-patient sources
PractitionersPer-practitioner revenue, utilisation, rebook rate, and cancellations
CommunicationsBroadcast performance and SMS usage/balance
ComplianceThe <a href="/reports-compliance/audit-log/">audit log</a> and consent/forms status

Use the search box to filter the grid by report name when you already know roughly what you're looking for, or use the category filter to narrow the view to a single group and browse what's available. Clicking any report card opens that report's own page — see Reading a Report for how the viewer itself works once you're inside one.

New reports are marked Recently added reports carry a small "new" badge on their card in the catalog grid, so returning users notice them without having to compare the list against what they remember from before.

The Pinned KPI strip

Across the top of the Report Library, a row of seven tiles gives you the numbers most clinics check daily without opening a single report:

  • <strong>Revenue collected</strong> — recent payments taken
  • <strong>Uninvoiced appointments</strong> — completed visits still waiting to be billed
  • <strong>Rebook rate</strong> — how often patients book a follow-up visit
  • <strong>SMS balance</strong> — remaining message credit
  • <strong>Lapsed patients</strong> — patients overdue for a visit
  • <strong>Outstanding balances</strong> — total unpaid across your patient base
  • <strong>New patients</strong> — recently added to your patient list
The Pinned strip isn't a report of its own These seven tiles are shortcuts, not a separate data source. Each one pulls from the report that already covers that number elsewhere in the library, and clicking a tile takes you straight into that report, pre-loaded with the same data you'd see browsing to it manually. There's nothing pinned here that you can't also reach by category.

Because the strip is a fixed set of seven, it's meant as a morning-glance dashboard rather than a customizable widget board — if the number you check daily isn't one of the seven, the fastest path is still the category grid or the search box below it.

"Explain this number": AI on every KPI card

AI-assisted, never AI-sourced Every AI feature described in this section is generated content layered on top of data ClinyPal has already computed and verified. If the AI layer is unavailable for any reason, the feature fails soft — the report itself, and every number in it, keeps working exactly as normal.

Every KPI card, on every report in ClinyPal, carries a small ? button. Clicking it opens a popover with a short, plain-language explanation of why that number reads the way it does — for example, why revenue is down 12% compared to last period, or why the outstanding balance jumped this month. It's meant to save you the mental math of cross-referencing other reports just to explain a single figure to yourself or your team.

The important design detail is what happens behind that button: clicking ? doesn't summarize the number already on your screen from memory. It re-runs the report server-side, on the same filters you currently have applied, and generates the explanation from that fresh, verified result. ClinyPal never asks the AI layer to explain a number it hasn't independently recomputed — so the explanation is always grounded in the same data engine that produced the KPI in the first place, not a guess about what the number probably means.

The result is cached per click, so reopening the same popover a moment later doesn't trigger a second recalculation — you'll see the same explanation instantly. Changing a filter and clicking ? again produces a fresh explanation, since the underlying numbers have changed too.

If the explanation can't load When the AI layer is unavailable, the popover fails silently: it shows "Couldn't load an explanation" in place of the usual text, with no error dialog or retry prompt. The KPI number itself is entirely unaffected either way — this is purely a missing explanation, never a missing or incorrect figure.
Explain this number popover on a report KPI card
A KPI card's "Explain this number" popover open, showing a one-sentence plain-language explanation beneath the card.

For a closer look at this feature specifically, see "Explain This Number" on Reports.

Refine: suggested filters and observations

After any report finishes loading, a Refine row appears beneath the KPI cards with two things: a set of suggested filter chips, and one or more short, italic "observation" notes about the data currently on screen — things like a chip suggesting you narrow to a specific location, alongside an observation noting that one location accounts for a disproportionate share of the total.

Clicking a chip isn't cosmetic. It re-runs the actual report with that filter applied, the same as if you'd set the filter yourself in the filter bar — it's a shortcut into a genuinely filtered view, not a suggestion that just looks like one.

Why a hallucinated number can never appear here Chip labels and observation text are never the AI's own invented wording. Both are rebuilt server-side from the same real, validated dataset the report itself uses — the AI layer proposes which angle is worth surfacing (a location, a service, a trend), and the actual label or sentence is assembled from verified numbers, not generated freeform. On top of that, observation text is scrubbed before display to reject any number, percentage, or currency amount outright. Even in the worst case, where the AI layer internally produced an incorrect figure, that figure is structurally prevented from ever reaching the screen — the display path simply won't allow a number through an observation note.

This is the same reasoning ClinyPal applies everywhere AI touches a number: the AI can suggest, phrase, and highlight, but it never gets to be the source of truth for a figure a clinic might act on. For the complete rundown of this mechanism, see AI Suggested Filters & Observations on Reports, and for the broader design philosophy behind every AI feature in the product, see AI in ClinyPal: Overview.

Refine row with suggested filters and an observation note
The Refine row beneath a report's KPI cards, showing suggested filter chips alongside an italic observation note.

FAQ

Was this article helpful?
Your feedback helps us improve our documentation.
Rate this article:

Related articles

Still have questions?
Our support team typically replies in under 4 minutes on live chat.
Start chat