---
title: "Creating Scheduling Links"
description: "Scheduling links (also called booking links) allow you to share a personalized URL so guests can easily book time directly on your connected calendars. When you create a scheduling link, you define..."
last_updated: "2026-10-18T12:52:19.97023+00:00"
canonical_url: "https://docs.calendar0.app/guide/core-features/creating-scheduling-links"
---

## Overview

Scheduling links (also called booking links) allow you to share a personalized URL so guests can easily book time directly on your connected calendars. When you create a scheduling link, you define its duration, weekly availability, video conference or physical location, and custom questions guests must answer. 

You can manage all your scheduling links from your dashboard, share them via direct links, propose specific times to individuals, or embed booking widgets directly into your own website.

---

## Creating and Managing Scheduling Links

### Link Creation and Editing
To create a new scheduling link from scratch or edit an existing one, use the link editor interface.

1. Go to your **Booking links** page in the dashboard.
2. Click the **New link** button at the top of the page.
3. Enter a title and a unique web address suffix (called a **slug**) for your link.
4. Select the target calendar where meetings booked through this link will be added.
5. Set your weekly availability, break times, minimum notice requirements, and booking window limits.
6. Choose a meeting location type (such as Google Meet, Microsoft Teams, a custom URL, an in-person address, or a phone call).
7. Click **Save** to publish your link.

> [!NOTE]
> You can create a maximum of 20 scheduling links per user account.

---

## Configuring Availability and Meeting Rules

### Availability Rules and Limits
When setting up or editing a scheduling link, you can fine-tune exactly when and how people can book time with you using the following rules:

* **Weekly hours:** Turn specific days of the week on or off using toggles, and set custom start and end times for each active day.
* **Timezone:** Define the timezone your working hours apply to. Guests will automatically see available time slots converted into their local timezone.
* **Break after each meeting:** Adds a required buffer duration after every booking to prevent back-to-back meetings.
* **Minimum notice:** Prevents guests from booking slots that start too soon (for example, requiring at least 2 hours or 1 day of notice).
* **Booking window:** Control how far in advance guests can book, ranging from today up to a specified number of days ahead.

---

## Specifying Meeting Locations

Every scheduling link can be configured with a specific location type so guests know how to join or meet you.

| Location Type | Description | Supported Providers / Notes |
| :--- | :--- | :--- |
| `Google Meet` | Automatically mints a Google Meet video link on the calendar event. | Supported only when using a Google calendar. |
| `Microsoft Teams` | Automatically mints a Microsoft Teams video link on the calendar event. | Supported only when using a work or school Microsoft account. Personal accounts cannot create Teams links. |
| `Custom link` | A static meeting URL (such as Zoom or a webinar link). | Requires a valid `https://` web address. |
| `In person` | A physical address or meeting room location. | Displayed to the guest pre-booking and in confirmation details. |
| `Phone call` | A telephone number that the guest should expect. | Displayed to the guest pre-booking and in confirmation details. |
| `None` | No location or video link is attached. | Useful for unstructured or flexible meetings. |

> [!WARNING]
> If you select a video conference provider that does not match your destination calendar's provider (such as choosing Google Meet on a Microsoft calendar), the video link option will automatically degrade to no conference at booking time.

---

## Customizing the Booking Form

You can gather additional information from your guests before they confirm a booking.

* **Default fields:** Guests are always required to provide their name and email address.
* **Custom questions:** You can add up to 10 custom questions to the booking form. Questions can be configured as **Short answer** or **Long answer**, and can be marked as required or optional.
* **Email reminders:** Set automatic email reminders to be sent to guests a specified duration before the meeting starts (e.g., 15 minutes, 60 minutes, or 24 hours prior).

---

## Embedding Booking Widgets

### Widget Embed Options
You can embed your scheduling links directly into your website so visitors can book meetings without leaving your pages. Three embedding styles are available:

* **Inline:** Displays the full booking page directly inside your website's content flow.
* **Popup:** Adds a button that opens an interactive booking overlay modal on top of your page.
* **Floating button:** Places a persistent floating button in the corner of your screen that opens the booking modal when clicked.

### Embed Code Examples

To embed a link, copy the script tag and the initialization snippet for your preferred format:

```html
<!-- Inline Embed Example -->
<div id="cal0-booking"></div>
<script src="https://your-domain.com/embed.js"></script>
<script>
  Cal0.inline({ username: "your-username", slug: "30min", target: "#cal0-booking" });
</script>
```

```html
<!-- Floating Button Embed Example -->
<script src="https://your-domain.com/embed.js"></script>
<script>
  Cal0.floatingButton({ username: "your-username", slug: "30min", text: "Book a call", color: "#171717" });
</script>
```

> [!TIP]
> When embedding widgets on your site, you can pass a theme parameter (such as `theme: "light"` or `theme: "dark"`) inside the options object to control the appearance of the embedded booking interface.

## Related

- [Handling Bookings Reschedules](https://docs.calendar0.app/guide/how-to-guides/handling-bookings-reschedules)
- [Blocking Focus Away](https://docs.calendar0.app/guide/how-to-guides/blocking-focus-away)


## Sitemap

See the full [sitemap](https://docs.calendar0.app/llms.txt) for all pages in this wiki.
