## Overview

**Reminders** notify the customer (and can notify the agent) **before** the appointment time. You
control two things:

- **When** the reminder goes out — the **lead times** (for example, **24 hours** and **1 hour** before
  the start). You can set as many as you want.
- **What** the reminder says — the **message (template)**, written with **variables** that Conversa Labs
  replaces with the appointment's real data at send time.

The configuration is a **cascade**: you set a default on the **account**, can override it per **event
type**, and, if needed, adjust it directly on a **single event**.

## Prerequisites

- The **Calendar** module enabled and a booking that reaches the **confirmed** state.
- For email delivery, **SMTP configured** on the account. For WhatsApp delivery, a WhatsApp inbox with a
  conversation for the contact (see the channel-aware delivery article).
- A profile allowed to configure the Calendar.

## Step by step

1. Open the **Calendar settings** and go to **Reminders**.
2. In **Lead times**, enter the minutes before the start — for example **1440** (24 h) and **60**
   (1 h). Add or remove as many as you need.
3. In **Message**, write the reminder text using the available **variables** (see the table below).
   E.g.: `Hi {{contact_name}}, your {{title}} is on {{date}} at {{time}}. Link: {{link}}`.
4. (Optional) For different rules per service, open the **event type** and set the timings and message
   there — they **override** the account default.
5. (Optional) On a **specific event**, adjust the reminders just for that appointment.
6. Save and create a test booking to check the final text and the send time.

## Settings & options

- **Lead times**: a list of minutes before the start. Reference default: **1440** and **60** (24 h and
  1 h). Each timing fires **exactly once** per booking.
- **Message (template)**: the reminder body, with variables replaced at send time.
- **Per language (optional)**: the **reminder, confirmation, reschedule and cancel** bodies — and their
  matching **approved WhatsApp templates** — can be set **per language**. The old single-text
  configuration keeps working unchanged: only fill in per language if you serve audiences in different
  languages.
- **Scope (cascade)**: **account** (default) → **event type** (overrides) → **event** (one-off
  adjustment).
- **Available variables:**

| Variable | Replaced with |
|---|---|
| `{{title}}` | Appointment title / event type |
| `{{date}}` | Appointment date (in the correct time zone) |
| `{{time}}` | Start time |
| `{{link}}` | Management/meeting link (e.g. Google Meet or reschedule/cancel) |
| `{{location}}` | Appointment location (in person or link) |
| `{{contact_name}}` | Contact/customer name |
| `{{host}}` | Host/agent name |
| `{{datetime}}` | Date and time together (e.g. `12/05/2026 10:00`) |

- **`{x}` picker**: every message field has a picker that inserts the variable at the caret — the list is
  the same one the send resolves, so there is no "hidden" variable.
- **"Default" badge and "Restore default"**: an empty field shows, above it, **the shipped text that will
  actually be sent**. Once you write your own, **Restore default** deletes your version for that language
  (not just on screen: the removal reaches the server).
- **Native "Manage booking" button**: by default the manage link goes out as a **button** on WhatsApp
  instead of a bare URL in the text — inside and outside the 24h window. Turn it off per kind under
  **Delivery → Native buttons**. On WhatsApp Cloud, Meta delivers **a single button**.
- **Auxiliary labels**: the button text and the line above it are editable too, per language.
- **Preview and test**: the preview shows the message **rendered per channel** (the same renderer the send
  uses) and the **approved template** that leaves outside the 24h window. The **test** really sends it to a
  conversation you pick, honouring the window.

## Use cases

- Send one reminder **24 hours before** and another **1 hour before** to reduce no-shows.
- Personalize the text with the **customer's name** and the ready **meeting link**.
- A "Consultation" event type with a message and timings different from "Demo".
- On an important booking, add an extra reminder without changing the default.

## Tips, limits & best practices

- Write only what's needed and always include `{{date}}`, `{{time}}` and `{{link}}` — that's what the
  customer needs most.
- Type the variables **exactly** as in the table (with the double braces). A name outside the list stays
  as literal text.
- Avoid **duplicate timings** (two 60-minute reminders) — each timing fires once.
- A timing whose time **has already passed** at booking is **not** re-sent: reminders only look forward.
- Prefer adjusting at the right level: change the **account** to apply everywhere, the **event type** for
  a service, the **event** for a one-off case.

## Troubleshooting

- **The reminder went out with `{{contact_name}}` in the text**: the variable was mistyped (extra space,
  missing brace) or doesn't exist — compare it with the table.
- **I didn't get the reminder**: the booking must be **confirmed** and the lead time can't have already
  passed at booking; also confirm the channel (SMTP for email).
- **I changed the message and it had no effect**: check the **scope** — an event type or an event may
  have its own text overriding the account default.
- **The reminder time was off**: check the **calendar's time zone** and the contact's own zone (stored
  with the booking). An event type has no time zone of its own.

## See also

- [Reminder delivery over WhatsApp and email (channel-aware)](/hc/ajuda/articles/calendar-scheduling-entrega-por-whatsapp-e-email-en)
- [Booking side-effects, reminders and notifications](/hc/ajuda/articles/calendar-scheduling-efeitos-do-agendamento-lembretes-notificacoes-en)
- [Event types, availability and buffers](/hc/ajuda/articles/calendar-scheduling-tipos-de-evento-disponibilidade-buffers-en)
- [Calendar & Scheduling overview](/hc/ajuda/articles/calendar-scheduling-overview-en)