Guides

How to Send Appointment Reminder Emails in WordPress

Many missed appointments are forgotten, not canceled. How to send an automatic reminder before every booking, to your client and to yourself, with the video link included — and how to choose the timing.

9 October 2026  ·  8 min read
How to Send Appointment Reminder Emails in WordPress

A lot of missed appointments are not people changing their mind. They are people who booked ten days ago, wrote nothing down, and are now in the middle of something else when the time comes round. The confirmation email did its job on the day it arrived. By the morning of the appointment it is forty messages down an inbox.

A reminder fixes that for almost no effort: one short email, a day or so before, with the time and the link to join. This guide covers how to set one up in WordPress with CalNative Booking, when to send it, what to put in it, and what happens in the cases that are easy to get wrong.

The short version

  • Two reminders, set separately — one to your client, one to you. Each has its own on/off switch, timing, subject and message, under Settings → Email.
  • A good default is 24 hours for the client and 1 hour for you. Long enough for the client to rearrange their day, short enough that you are reminded when it is useful.
  • The video link comes with it. The default reminder carries the same Join Meeting button as the confirmation, so nobody has to dig for it.

Why a confirmation email is not enough

A confirmation answers the question the client has at the moment of booking: did that work? It arrives seconds after they click, while they are still paying attention, and it attaches a calendar invite so the appointment can go straight into their calendar. If you have not set that email up properly yet, Automatic booking confirmation emails in WordPress is the place to start.

But a lot of people never add the invite, and the further ahead the booking, the more likely the confirmation is forgotten. A reminder answers a different question, closer to the time: what is today, and how do I join? It is the email that actually gets someone to the meeting.

It helps you too. If your calendar fills up with back-to-back sessions, a reminder an hour before each one, with the client’s name and anything they wrote in the booking form, is a quick way to walk in prepared.

Setting it up

Reminders were added in CalNative Booking 1.2.0. Go to CalNative Booking → Settings → Email. Each section on that tab opens with a click, and the header shows On or Off so you can see what is running without opening anything. The two you want are Guest Reminder and Host Reminder.

  1. Open Guest Reminder and switch on Send guest reminder.
  2. Set Send before to the number of hours before the appointment you want it to go out — anywhere from 1 to 168, which is one week.
  3. Leave Subject and Body empty to use the default text, which is shown grayed out in each field, or write your own.
  4. Do the same in Host Reminder if you want one for yourself. It goes to your Host Email.
  5. Click Save settings.

That is all. Both reminders are off until you switch them on, so nothing changes for your clients until you decide it should.

When to send it

There is no single right answer, but there is a useful way to think about it: the reminder should arrive early enough for the client to act on it, and late enough that it is still on their mind when the time comes.

Send beforeWorks well forWatch out for
48 hoursAppointments people need to prepare for, travel to, or bring documents toFar enough out that it can be forgotten again
24 hoursMost consultations, coaching and therapy sessions — the sensible defaultClashes with a 24-hour cancellation deadline (see below)
2–3 hoursShort calls, same-week bookings, clients who live in their calendarToo late to rearrange a working day around
1 hourYour own host reminderToo short for most clients

If you are unsure, start with 24 hours for the client and 1 hour for yourself, and adjust once you have a few weeks of bookings to look at.

What to put in it

Keep it short. A reminder is read on a phone, often in a notification preview, so the date, the time and the way to join should all be visible without scrolling. The default guest reminder does exactly that:

Subject: Reminder: {title} with {host_name} – {date}

Hi {name},
This is a reminder of your booking with {host_name}.

Date: {date}
Time: {time}

{meeting_button}

Templates are plain text. The branded card — your colors, font and button style — is added when the email is sent, so there is no HTML to write. Every token from the confirmation emails works here, including {full_name}, {phone}, {company} and {message}. A line whose token turns out empty is removed, so a reminder for a client who left the phone field blank does not show a stray “Phone:” label.

Your own host reminder is worth a little more detail. The default includes the client’s contact details and their message from the booking form, which is usually what you want to glance at just before a session starts.

For online appointments the reminder is the email clients will actually click from, so it should carry the link. If you have video meetings turned on, every booking already has its own link — Jitsi Meet, Zoom, Google Meet or your own static room — and the reminder uses that same link. How to add a video meeting link to every WordPress booking covers choosing and setting up a provider.

There are two tokens for it:

  • {meeting_button} — a styled Join Meeting button in your brand colors. This is what the default text uses, and the easiest thing to tap on a phone.
  • {meet_link} — the plain address, for when you want it written out, for example Join here: {meet_link}.

Both disappear cleanly if a booking has no link, so the same template works whether or not video is switched on. The wording on the button is set once, under Button Labels on the same tab, and is shared with the confirmation emails.

The cases that are easy to get wrong

A reminder is simple until you think about the edges. Here is how each one is handled.

Someone books at short notice. If a client books at 10am for 2pm and your reminder is set to 24 hours, the reminder time has already passed. Sending one anyway would arrive seconds after the confirmation and repeat it, so a booking made inside the reminder window gets no reminder. The confirmation does that job.

The client cancels. Canceled bookings never get a reminder, whether the client used the link in their email or you canceled from the Bookings page.

You change the settings later. Each reminder is sent once per booking and never again, even if you change the timing or switch it off and on. When you first switch a reminder on, upcoming bookings that are already inside its window get their reminder within a few minutes, so nobody booked for tomorrow misses out.

Your cancellation deadline overlaps. If clients can only cancel up to 24 hours ahead and your reminder goes out 24 hours ahead, a cancel link in the reminder would only tell them it is too late. Either leave {cancel_button} out of the reminder, which is what the default does, or send it earlier than your deadline — 48 hours, say — so the link still works.

How reminders are sent

Reminders go out through the WordPress scheduler, which checks for due reminders every five minutes. The scheduler only runs when someone visits your site, so on a busy site reminders arrive on time, and on a very quiet one a reminder can be a few minutes late. It is never sent early, and never after the appointment has started.

If exact timing matters to you and your site gets little traffic, ask your host to run WordPress cron from a real server cron job. Most hosts can switch that on in a couple of minutes, and it makes every scheduled task on the site more reliable, not just reminders.

Reminders are sent the same way as your other booking emails, from the same sender address. If your confirmations arrive, your reminders will too. If they do not, the fix is in your email setup rather than the reminder — the Sender Address section on the same tab explains the most common cause.

Test it before you rely on it

The quickest way to see a reminder is to make a booking a couple of hours ahead, set the guest reminder to 3 hours, and visit any page on your site. Within about five minutes the reminder should land in the inbox you booked with, with the Join Meeting button if video is on. Then set the timing back to what you actually want. How to test your booking setup before going live covers the rest of the flow the same way.

It is a small feature, and that is the point. One extra email, sent at the right moment, with the link in it — set it up once and it quietly works on every booking from then on.

Back to Blog