# Booking meetings from cold email replies

> Turn a cold email reply asking for a call into a booked meeting: offer open times in the prospect's timezone, read their pick, book it in Cal.com or Calendly.

Source: https://docs.ayinbox.com/learn/book-meetings-from-cold-email-replies/

When a prospect replies "can we talk next week?", the fastest way to a meeting is to offer three specific open times in their timezone, not a link they have to click through. AY Inbox reads open times from your own Cal.com or Calendly, writes them into the reply, recognises the time the prospect picks, and books it through your provider, which sends the invite. This page explains the approach and how [calendar booking](/guides/booking/) implements it.

Times in the reply or a scheduling link [#times-in-the-reply-or-a-scheduling-link]

Both work, and they suit different moments:

| Approach                 | What the prospect does                  | Works best when                                                                         |
| ------------------------ | --------------------------------------- | --------------------------------------------------------------------------------------- |
| Named times in the reply | Answers "option 2" in the same thread   | They asked for a call and you want the fewest steps between yes and a booked meeting    |
| A scheduling link        | Clicks, picks a slot, fills in the form | They prefer to choose from your whole calendar, or the reply did not ask for a call yet |

Named times remove a step: the prospect never leaves their inbox. A link is still useful, and a [campaign brain](/guides/campaign-brain/) can hold one that drafts offer when someone shows interest in a call. Meetings booked through a Calendly or Cal.com link arrive on the [Meetings](/guides/meetings/) page through the provider's webhook, and any meeting appearing for the contact stops booking follow-ups.

If the prospect answers with a scheduling link of their own, AY Inbox offers nothing. The mailbox owner gets a task to book through their link instead.

What you need [#what-you-need]

Calendar booking is off by default, on the instance and in each workspace. To turn it on in a workspace you need:

1. **A connection with booking access.** Connect Cal.com or Calendly under [integrations](/guides/integrations/) and paste a Cal.com API key or a Calendly personal access token under **Booking access**. AY Inbox checks it with the provider, stores it sealed and never shows it again. Calendly needs a paid plan with the Scheduling API.
2. **An event type the agent can fill in.** It must not require the host to confirm each booking, require the invitee to verify their email, have a required question, need a phone number, use seats or ask the invitee for a location. Make a dedicated event type for this.
3. **A booking type** in **Settings, Booking**, which names the event type and how times are offered.
4. **Draft mode on.** Turning it on needs the **Manage settings** and **Use AI** permissions.

AY Inbox never touches your calendar. The provider reads Google or Outlook on its side, applies your availability rules, refuses conflicts, attaches the video link and sends the invite.

A booking type sets the offer rules:

| Setting               | Default       | Range                            |
| --------------------- | ------------- | -------------------------------- |
| Times per offer       | 3             | 1 to 5                           |
| Minimum notice        | 4 hours       | 0 to 14 days                     |
| How far ahead         | 10 days       | 1 to 31 days                     |
| Prospect hours        | 9:00 to 18:00 | 0 to 24, in the prospect's zone  |
| Language of the times | English       | English, French, German, Spanish |

From the open times, AY Inbox offers the earliest, then one on another day in the other half of the day, then the earliest left, so the prospect gets a real choice rather than three adjacent slots. Minimum notice never relaxes; prospect hours relax only when nothing fits inside them.

Getting the timezone right [#getting-the-timezone-right]

A time in the wrong zone is worse than no time. AY Inbox writes the offer in the prospect's zone, taken from the first of these that is available:

1. A zone the prospect named in the reply.
2. A zone a teammate picked.
3. The contact's `timezone` field.
4. The UTC offset in the Date header of their email. An Outlook mailbox connected through Microsoft's API reports the time received in UTC, so this source is skipped for it, and a zero offset counts as no signal.
5. The country of their email domain. For countries that span several zones, such as the US, Canada or Australia, this counts as a weak hint.
6. The campaign's or workspace's zone.

Every offer names the zone and its offset in words. When the zone is a guess, the offer says so and asks the prospect to correct it, and a correction rewrites the same times in their zone. A zone the prospect states is saved to their `timezone` field only when the field is empty.

Reading the answer [#reading-the-answer]

A reply can only select among the offered times or a time verified open on the calendar. Nothing in an email can change the attendee, the event type, the mailbox or the mode, and a pick counts only from the contact's own address.

* **Clear picks**: "option 2", "#2", "the second one", or a full day and time naming one offered slot with a positive word ("Tuesday 15:30 works").
* **Partial picks**: a day alone, a time alone, or "any of those". The thread shows the slot it points at.
* **Conditions and negations** go to a person: "Tuesday I'm out", "10:00 is too early", "option 2 if that's still open", "maybe the first one".
* **A time they propose** ("Would 2pm on the 22nd work?") is checked on the calendar, and if it is open it waits for a click like any pick.

Picks are read in English, French, German and Spanish. With [inbox tagging](/guides/inbox-tagging/) configured, a typed reading settles replies these rules do not. Anything unclear goes to **Needs you** with the reason, and every decision is recorded with the words it rests on.

When the time is gone [#when-the-time-is-gone]

Between the offer and the pick, someone else may take the slot. When that happens, nothing is booked: the nearest open times are written as a new draft for you to send. Only one booking runs per offer at a time, so a second **Book it** while the first is being confirmed is refused. If the provider's answer is unclear, AY Inbox looks the booking up rather than posting it again: a booking is never re-sent automatically.

Who confirms [#who-confirms]

Booking runs in draft mode. Offers and follow-ups wait in the inbox as drafts, and a detected pick waits for a person to click **Book it**. That click books the meeting on the provider and sends a short confirmation in the thread. Automatic booking without a click is not available on this release.

No message carries an address the prospect could change: the invite always goes to the contact's stored address.

Example thread [#example-thread]

1. Lea replies: "Interesting, can we talk next week?"
2. A draft appears offering Tue 10 Nov 10:00, Tue 10 Nov 15:30 and Wed 11 Nov 09:30, "Berlin time (GMT+1)". A teammate sends it.
3. Lea answers: "Option 2 works."
4. The thread shows **They picked Tue 10 Nov, 15:30** with **Book it**. The click books it, the provider sends Lea the invite, and a short confirmation goes out in the same thread.

You can do the same by hand: **Offer times** in the reply composer lists open times in the recipient's zone, and **Insert** drops them into your reply. The offer starts when that reply is sent. The [book a meeting from a reply](/api/recipes/book-meeting-from-reply/) recipe does it through the API.

If they go quiet [#if-they-go-quiet]

An offer nobody answers gets up to 3 follow-ups by default, each with fresh times, and then stops. See [following up until a meeting is booked](/learn/follow-up-until-booked/).

A model-written offer costs the same as an inbox agent draft and a model-written follow-up 2 [AI credits](/guides/ai-credits/); templates, confirmations and provider calls are free. Out of credits, messages fall back to templates and booking still works.

## Frequently asked questions

### Should I send a scheduling link or suggest times in a cold email reply?

Suggesting three specific open times usually takes one step out: the prospect answers with the one that suits them instead of clicking through a link and a form. A link still works for people who prefer to choose themselves, and a meeting booked through a connected Calendly or Cal.com link shows up in AY Inbox too.

### How many times should you offer in a reply?

Three is a good number: enough to fit most diaries and few enough to read at a glance. AY Inbox offers 3 open times by default, configurable from 1 to 5, read from your calendar at the moment the reply is written.

### How do you know which timezone a prospect is in?

Use a zone they named first, then what you already hold: a zone a teammate picked, the contact's timezone field, the offset in their email's Date header, then their email domain's country. When it is still a guess, say so in the offer and ask them to correct it, as AY Inbox does.

### What happens if the prospect picks a time that is no longer free?

Nothing is booked. The provider refuses a time that is no longer open, and AY Inbox writes the nearest open times into a new draft so you can offer them instead.

### How do you tell which time a prospect picked?

Count only clear picks, such as option 2 or a day and time that names one offered slot with a yes, and send conditions, negations and maybes to a person. AY Inbox reads picks in English, French, German and Spanish, and only from the contact's own address.
