Appointments

Appointment text messaging for your app.

Booking confirmations, reminders, reschedule links — the messages that keep time slots booked.

Free to author & testNo credit cardUS & Canada

9:41
Saturday, June 13

Acme: Reminder, you have an appointment tomorrow at 2:00 PM. Reschedule: yourapp.com/reschedule

Our free message templates are live.
Sending arrives Summer 2026.

The moment

A text can change the outcome.

A booking made three weeks ago has slipped someone's mind, and the slot is about to go to waste. A reminder the day before gives them the chance to confirm it or move it.

Acme: Reminder, you have an appointment tomorrow at 2:00 PM. Need to change it? yourapp.com/reschedule
See you then
The messages

Appointments messages, included.

All nine message categories are included — one registration.

Confirmation

Acme: your appointment with Dr. Sarah Chen is confirmed for Tue, March 4th, 2:00 PM. Reply STOP to opt out.

Reminder - distant

Acme: reminder - your appointment is tomorrow, Tue, March 4th, 2:00 PM. Cancel: yourapp.com/cancel Reply STOP to opt out.

Reminder - proximate

Acme: your appointment is in 1 hour, Tue, March 4th, 2:00 PM. Cancel: yourapp.com/cancel Reply STOP to opt out.

Reschedule confirmation

Acme: your appointment is rescheduled to Tue, March 4th, 2:00 PM with Dr. Sarah Chen. Reply STOP to opt out.

Cancellation confirmation

Acme: your appointment with Dr. Sarah Chen is cancelled. Rebook anytime: yourapp.com/reschedule Reply STOP to opt out.

No-show follow-up

Acme: we missed you today. Want to rebook with Dr. Sarah Chen? yourapp.com/reschedule Reply STOP to opt out.

The variables

Make the messages yours, without breaking them.

Preview every message, edit the wording, or add your own fields. The parts that keep you compliant stay locked.

Preview with your data

Enter a value once and it shows in every message.

2:00 PM
ConfirmationEdit
Acme: Reminder, you have an appointment tomorrow at 2:00 PM. Reschedule: yourapp.com/reschedule
Insert variable
CancelSave

Customize any message

Open the variable list and drop one in.

ConfirmationEdit
Acme: Reminder, you have an appointment tomorrow at 2:00 PM. Reschedule: yourapp.com/reschedule
Insert variable
workspace_nameAcme
customer_nameJordan Lee
appointment_time2:00 PM
reschedule_linkyourapp.com/reschedule
CancelSave
The details

Q&A: Appointment messages

How many reminders should I send?

Depends on your customers and how far out they book. A day-before reminder works for most appointment types. An hour-before nudge helps when no-shows are costly, but can feel like overkill for shorter-notice bookings. Start with one and see if your no-show rate warrants a second.

Can the post-appointment text include an offer to rebook?

A link to reschedule, yes. A discount to rebook, no. A promotional incentive in a transactional message changes its legal classification and requires separate consent. Keep the post-appointment text to thanks and feedback; run rebooking promotions through the marketing channel.

What do you send when someone doesn't show up?

A non-judgmental rebooking text, sent an hour after the slot. Not 'you missed your appointment' — that reads as accusatory and bumps opt-out rates. 'We missed you — want to rebook?' gives them an easy path back without making them feel bad about it.

What's the most common mistake in appointment confirmation texts?

Confirming the booking without stating the time. A text that says 'your appointment is confirmed' forces the customer to scroll back through their booking to find when it is. Always include the date and time in the confirmation — that's the information they actually need.

The paperwork

You build the feature. We handle the bureaucracy.

Every text message carries a stack of carrier rules. We've read all of it, so you don't have to.

Registration handled

Getting approved on your own can take weeks.

Most registrations clear in about three days. We handle the filing, so you can keep building your app.

Messages compliant

Send the wrong kind of message and carriers block it — silently.

Every message is checked against carrier rules before it sends, not just passed through.

Opt-ins & opt-outs covered

Miss a single STOP and the fines add up fast.

We stop instantly. Consent is tracked and enforced at delivery, not wired up by you.

The build

Give your AI tool a build spec, not a pile of docs.

RelayKit generates implementation instructions for your AI tool. Messages, variables, event triggers, testing steps, and integration guidance arrive for smooth integration.

Claude CodeCursorWindsurfGitHub CopilotClineCodex

Slots into ShipFast, Supastarter, MakerKit, and Vercel + Supabase.

import { RelayKit } from 'relaykit';

const relaykit = new RelayKit();

await relaykit.appointments.sendConfirmation(customer.phone, {
  date: 'Fri, Jun 6',
  time: '2:00 PM',
});

That's the send.

The test

Preview list

Your safe audience for sending test messages, before and after launch.

  • JoelVerified
    (555) 867-8842
  • SarahVerified
    (555) 412-5519
  • MikeInvited
    (555) 290-3301
+ Invite someone

Run test messages through real phones.

Add yourself, your team, your beta testers. Each person verifies once. After that, your app's messages work for them exactly the way they'll work for customers.

Trigger your real flows — a booking, a code, a reminder — and see the whole loop land: sent, delivered, your database updated.

The process

What it takes to go live.

No telecom expertise required. We handle the carrier side.

01 · PLAN

Choose your messages

Pick the messages your app needs from templates that already know the rules.

Browse the messages →
02 · BUILD

Build and test

Hand the spec to your AI tool, then test the full flow on real phones before launch.

03 · LAUNCH

Go live

RelayKit handles registration and delivery. A few days to approval.

The price

Simple pricing.

Stage 1

Build for free

Set up your messages. Add the code to your app. Test with real phones. No credit card.

Stage 2

Go live for $49 + $19/mo

We file your registration with carriers. Approval takes a few days. 500 messages included per month, then $8 per additional 500. Full refund if you're not approved.

What $19/mo includes.

500 messages a month
Your own sending number
Delivery, opt-outs & quiet hours
A hosted compliance site
Carrier rule-change tracking

Marketing messages add $10/mo. Volume pricing above 5,000 messages. US and Canada at launch. We don't handle HIPAA, healthcare-regulated workflows, or enterprise procurement.

The numbers

When a message can't wait, send a text.

Messages from an app only work when someone sees them. Here's how text and email compare.

Gets opened
Text message98%
Email~20%
Time to first open
Text message~90 sec
Email~90 min
Gets a reply
Text message~45%
Email~6%
Gets through
Text message~98%
Email~84%

Industry SMS-vs-email benchmarks, 2025–26 — open and response from SMS-marketing aggregates; email inbox placement from Validity's 2025 deliverability report. SMS open is inferred from delivery, not pixel-tracked; reported email open rates are distorted by tracking-pixel prefetch and blocking.

The problem

The rules show up after you start building.

US carriers require these from every business that sends texts. Getting approved can take weeks if not done right.

Registration

Before anything sends, your business gets registered in a central registry that every US carrier checks — legal name, tax ID, website, and what you plan to send. Details have to match your IRS records exactly, or the application bounces.

RelayKit collects this during setup and files the registration for you.

Carrier review

Reviewers check your registration and your messages against carrier rules before you're allowed to send. Other providers typically take two to three weeks — and every rejection restarts the clock, with no guarantee the next round clears.

RelayKit submissions are prepared to pass the first time; approval typically takes a few days.

Consent requirements

You have to collect and keep proof that every recipient agreed to get texts from you — how they opted in, when, and which kinds of messages they agreed to. Someone who signed up for appointment reminders hasn't agreed to marketing.

RelayKit provides the opt-in language and keeps the consent records automatically.

Build a compliance website

Reviewers visit your website looking for a privacy policy with specific mobile-data language, posted terms, and a visible description of your texting program. A missing or half-finished site is the single most common reason registrations get rejected.

RelayKit generates and hosts a compliance site for you — privacy policy, terms, and opt-in page included.

STOP and HELP handling

A reply of STOP has to halt messages to that person immediately, and HELP has to get a real answer — automatically, every time. Getting it wrong is a fast way to get a number shut down.

RelayKit handles both at the delivery layer; when someone replies STOP, we stop.

Message restrictions

Carriers limit what businesses can say over text: entire content categories are banned, links get scrutinized, and messages outside your registered use case can get your number flagged. The rules live across multiple carrier policies, and they change.

RelayKit's templates already follow them, and custom messages are checked before they send — not just passed through.

The start

The messages are ready now. Sending arrives Summer 2026.

You can start with the messages today. When sending launches, your AI tool wires up the integration, you test on real phones, and registration and opt-outs stay handled behind the scenes.

Keep exploring