Your booking system

Cliniko: find patients without upcoming appointments

Cliniko can list your lapsed patients, export them, and even send them a group SMS with a no-upcoming-appointments filter. Here's the click path from Cliniko's help centre, the date-range trap in the export, and the opt-out gap you have to cover yourself.

Cliniko does more of this job natively than most systems. It has a report for patients with no upcoming appointment, a full patient export with a last-appointment column, and a group SMS tool that can filter on both. What it doesn't have is an automatic reply-STOP, and its export date range does something that catches nearly everyone.

Every step is quoted from Cliniko's help centre with the article linked. Dates are the "updated" stamps on those pages in September 2026.

The report: Patients without upcoming appointments

  1. Reports → Patients without upcoming appointments (Cliniko help).
  2. Set the filter to "specify when their last appointment date was", optionally narrow by practitioner or business, and click Create report.
  3. There's a tick box, "Hide patients with scheduled recalls": "If you tick this box, the report will not include anyone who has a recall linked to their name."
  4. The output is an on-screen list with a Print button (print or save as PDF). There's no CSV from the report. Cliniko's page sends you to Data exports for a spreadsheet, which is the next section.

The report page doesn't list its column headers, so whether the on-screen table shows the mobile number isn't quoted here. The export definitely does include contact details.

The export: Settings → Data exports → Patients

This is where the trap is.

  1. Settings → Data exports. Administrator-only: "This function is only available to administrators" (Exporting patients).
  2. Select patients as the data type and choose a date range. The date range is by patient creation date, not last appointment. Set it to "Any time" to "Any time" or you'll export the patients you added in that window, which is the opposite of a lapsed list.
  3. Click Export data, wait (it can take several minutes), then download Patients-Cliniko-[date].csv. Exports expire after two weeks (Export your data).
  4. In your spreadsheet, filter column AB "Last appointment" to 3 to 24 months ago, and keep only rows where column AF "Next Appointment" is blank (column references from Cliniko's practitioner-list article). Column AD is "Last practitioner seen", which is the name you'll send from.

One more line from Cliniko's page that's easy to skip: "If you plan to filter your results in a spreadsheet tool... make sure to delete the filtered rows if you're providing the file to someone else. Filtering... simply hides it from the current view." If that file is going to anyone outside the clinic, delete, don't hide.

The docs say the export includes "your patients' contact details" and "when their last appointment was"; they don't name a Mobile column or a marketing-consent column, so check your own file for both.

Sending from inside Cliniko

Cliniko can send the message without any export.

Group SMS. Communications tab → Send message patients → SMS → compose → filters → Send SMS Message (Send group SMS messages). The filters, in Cliniko's words: "The last or next business they visited", "Who their last or next practitioner was", "When their last or next appointment was", and "Patients who don't have any upcoming appointments". That's a lapsed-patient list built in the send screen. It's administrator-only, needs pre-purchased credits, and shows the recipient count and credits before you confirm.

There's a checkbox, "This is a marketing message", which "excludes patients unsubscribed from SMS marketing" when ticked. If your text is promotional, tick it. If it's a plain recall about their own treatment, the recall-or-marketing test decides.

Follow-up messages are the forward-looking version: Settings → Follow-up messages, send SMS or email "anywhere from 1 day to up to 2 years after the appointment", with the option "No following appointments" to "send only to patients who don't have another appointment scheduled after the one the message is for" (Follow-up messages overview). Set one at 90 days and it becomes a rolling recall for everyone from now on. Whether it fires for appointments that predate the rule isn't stated in the docs; test on a trial before assuming.

Cost. "SMS credits are 10¢ per message" and "Prices are in United States dollars (USD)" (Cliniko pricing). "A 'credit' equals one message, up to 160 characters", bought in lots of 200 or more at Settings → SMS settings → Top up credits (Purchase SMS credits). Over 160 characters costs a second credit, so the templates are written short.

The opt-out gap

Cliniko's help centre doesn't mention the Australian Spam Act. Its unsubscribe handling is built around marketing email, where a link is auto-added. For SMS, the group message article says "If a patient has expressly requested not to receive marketing-related SMS messages, you can unsubscribe them", which means a staff member does it by hand in the patient's marketing preference (Customise marketing settings). No automatic reply-STOP is documented.

Under the Spam Act, every commercial message needs an unsubscribe that "honours a request to unsubscribe within 5 working days" and "does not require the payment of a fee" (ACMA). So on Cliniko the process is: put "Reply STOP to opt out" in the text, make sure the sending number can receive replies, and have someone check for STOPs and update the preference within a day. It's not hard. It's just not automatic, and the rules guide explains why it matters.

Recalls, the older way

Cliniko also has recall types (Settings, 1 to 100 days, weeks or months) that you assign to patients, then run Reports → Recalls for a date window and tick "Recalled" as you contact each one (Recalling patients). It's a manual list, not a sender, which Cliniko was upfront about when it launched the feature. For a clinic that wants one message when a patient is due, the follow-up messages above do it with less admin.

The short version

Export with "Any time", filter AB and AF, send from the practitioner they last saw with a STOP line, check the replies and the STOPs the same day. Cliniko has given you the list and the sender. The part that decides whether it works is still whoever answers "yes, Thursday works" within the hour. If nobody at the desk can, the done-for-you page is the honest alternative.

Questions owners ask

Can I export the Patients without upcoming appointments report as a CSV?

Not from the report itself; it prints or saves as PDF. Cliniko's help page points you to Settings → Data exports → Patients for a spreadsheet, then you filter the Last appointment and Next Appointment columns.

Can Cliniko send the reactivation text?

Yes. Communications → Send message patients → SMS has filters for when their last or next appointment was and for patients who don't have any upcoming appointments. Credits are 10 cents a message, in US dollars. Tick 'This is a marketing message' if it's promotional so opted-out patients are excluded.

Rather see what your own database is worth first? Get a free opportunity report. It's a look at the bookings sitting in your list, no call required.

Sources

  1. Cliniko, Find patients without upcoming appointments (28 May 2026)
  2. Cliniko, Exporting patients (updated 5 Dec 2025)
  3. Cliniko, Export your data (updated 12 Feb 2026)
  4. Cliniko, Getting a list of patients for a specific practitioner
  5. Cliniko, Send group SMS messages to your patients (updated 19 May 2026)
  6. Cliniko, A quick overview of follow-up messages (updated 10 Aug 2026)
  7. Cliniko, Recalling patients
  8. Cliniko, Purchase SMS credits
  9. Cliniko, Customise marketing settings (22 Sep 2025)
  10. Cliniko pricing
  11. ACMA, Avoid sending spam
T
Tariq Daher, Founder, KymoraTariq runs Kymora from Picton, NSW. Kymora texts a clinic's lapsed patients and books them back in, done for the clinic and backed by a money-back booking guarantee. Before Kymora he spent three years learning product, manufacturing and brand the hard way with his own label. More about Kymora.