> ## Documentation Index
> Fetch the complete documentation index at: https://docs.os.default.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Switch from Calendly to Default

> Migration guide from Calendly to Default: how routing forms, round robin and collective event types, Workflows, and the Salesforce and HubSpot integrations map to Default, the setup steps in order, and what has no direct equivalent.

Switching from Calendly to Default means rebuilding your Calendly event types as Default events and
your routing forms as Default workflows that start from the forms on your website. Default connects
to Salesforce or HubSpot, looks up the lead's record, picks the right rep from a queue, and shows
the booking calendar in 1 workflow.

This guide is for admins moving a sales team's scheduling. Default does not import Calendly event
types, routing forms, or meeting history, so plan to rebuild them.

## Calendly and Default at a glance

| Calendly | What it does in Calendly | Where it lives in Default |
| - | - | - |
| **Routing forms** | Ask questions, then route visitors to an event type, a custom message, or an external URL. Can also route from HubSpot, Marketo, and Pardot forms. | [Forms](/forms) picks up the forms on your website. A [workflow](/workflows) with the **Form Submission** trigger branches on the answers and shows a **Display Scheduler** node or a **Redirect**. |
| Salesforce lookup and HubSpot lookup in routing | Route known visitors to the owner of their record. | The **Match Record** node, then **Display Scheduler** with the record's owner as host. |
| **One-on-one** event type | 1 host and 1 invitee. | A **Quick event**. |
| **Round Robin** event type | One-on-one meetings that rotate across teammates. | A **Team event** with a [queue](/queues) as host. The queue's [routing policy](/policies) picks the rep. |
| **Collective** event type | Several hosts meet 1 invitee when all are free. | A **Team event** with several hosts, each marked required. |
| **Workflows** | Automated emails and texts before and after meetings. | Message templates in [Messages](/scheduling-messages), sent by email or SMS, plus workflows that start from the **Meeting Status** trigger. |
| Salesforce and HubSpot integrations | Create or update records and log meetings in the CRM. | Workflows that write to the CRM with **Create Record**, **Update Record**, **Create Activity**, and **Create Engagement**. |

## Calendly routing forms in Default

A Calendly routing form asks questions and sends each visitor to the right booking page. In Default,
the questions stay on the form you already run on your website, and a workflow does the routing.

| Calendly routing | Default |
| - | - |
| Routing form questions | The fields of your existing website form. **Catalog forms** adds the form, and you map each field to a **Person** or **Company** field. See [Your forms](/forms/your-forms). For questions that only exist in Calendly, create the form in Default and put it on your site. See [Create a form in Default](/forms/your-forms#create-a-form-in-default). |
| Routing from HubSpot, Marketo, or Pardot forms, with Calendly's routing code pasted after the form code | The Pixel, installed once for each site. Default recognizes plain HTML forms and embedded HubSpot, Marketo, and Pardot forms. The Pixel captures HTML, HubSpot, and Marketo submissions itself. For a Pardot form, send its submissions with the Forms SDK. See [Pardot forms](/forms/pardot). |
| Routing logic on answers | A **Multi-Branch** node, or a [Rules of Engagement](/rules-of-engagement) ruleset that picks a queue from form, CRM, and enrichment data. |
| Route to an event type | **Display Scheduler** with that event. See [Routing and scheduling nodes](/workflows/steps-routing-scheduling#display-scheduler). |
| Route to a custom message or an external URL | A [**Redirect**](/workflows/steps-actions#redirect) node to a page on your site. |
| Salesforce lookup: route by account, contact, lead, or opportunity owner | **Match Record** on the Salesforce object. On **Match**, **Display Scheduler** uses the record's owner as host. |
| HubSpot lookup: match known HubSpot contacts and book them with their assigned owner | **Match Record** on the HubSpot Contact or Company, with the same **Display Scheduler** pattern. |
| Email domain routing | Conditions on the email domain in **Multi-Branch**, or **Match Record** on the Account with the **domain matches** operator. See [Match an account by company domain](/workflows/steps-crm#match-an-account-by-company-domain). |

Default can also enrich the lead before it routes. An **Enrich Data** node right after the trigger
fills in company and person data from a waterfall, and later nodes can branch on it. See
[Enrichment nodes](/workflows/steps-enrichment).

## Calendly event types and round robin in Default

| Calendly | Default |
| - | - |
| **One-on-one** event type | **Quick event**, hosted by 1 member. Any member can create a **Quick event**. |
| **Round Robin** event type | **Team event** with a queue as host. |
| Round robin **Maximize for Availability** | The policy's **Slots Rule** set to **All Active Members**, so the booking page shows times when any active member is free. |
| Round robin **Optimize for Equal Distribution** | The policy's distribution rule **Take turns equally**, which scores effective assignments divided by weight. |
| Priority stars, then the teammate without a recent meeting | Default has no priorities. With **Enable weighted distribution** on, each member's **Weight** sets their share. The **Least recent assignment** rule or the **Recency** tiebreaker favors the member assigned least recently. |
| **Collective** event type | **Team event** with several hosts marked required, so a time appears only when all of them are free. |
| Booking page and custom questions | The event's booking page and its **Booking Form Questions**. See [Events](/events). |
| Links to your booking pages | **Permanent** and **Expiring** booking links from the event's **Booking links** drawer. |
| Invitee marked as a no-show | **Mark as no-show** in [Meetings](/meetings). |

## Calendly Workflows and CRM integrations in Default

| Calendly | Default |
| - | - |
| **Workflows**: email and text reminders | Reminder templates in [Messages](/scheduling-messages), assigned to each event's **Reminders**. Default sends email and SMS to guests itself. |
| **Workflows**: follow-up and thank-you emails | Reminder templates that send after the meeting, and notification templates for **On booking**, **On cancel**, **On reschedule**, and **On no-show**. |
| Salesforce: create events or tasks on records when a meeting is scheduled | A workflow with the **Meeting Status** trigger set to **Booked**, **Match Record**, then **Create Activity**. |
| Salesforce: create or update records from booking answers | **Create Record** or **Update Record** in the same workflow. Salesforce **Create Record** can update an existing record instead with **Update on conflict**. |
| HubSpot: create contacts and log meeting activity | **Match Record** on the Contact, **Create Record** on **No Match**, then **Create Engagement** with **Engagement type** set to **Meeting**. |

## Rebuild a Calendly routing form as a Default workflow

This example replaces a Calendly routing form on a `Request a demo` form. Known people book with
their record owner. New people with more than 500 employees book the `Enterprise demo` event, and
everyone else books the `Demo` event. Both events are **Team events** hosted by queues.

<Steps>
  <Step title="Start from the form">
    In **Workflows**, create a workflow and add the **Form Submission** trigger. Set
    **Connected Form** to `Request a demo`.
  </Step>

  <Step title="Look up the record">
    Add **Match Record**. Set **CRM** to Salesforce or HubSpot, set **Record** to the object your team
    owns people on, and match on the submitted email.
  </Step>

  <Step title="Book known people with their owner">
    On the **Match** branch, add **Display Scheduler** with the `Demo` event. Turn off
    **Use event hosts** and set the host to the matched record's owner.
  </Step>

  <Step title="Branch new people on company size">
    On the **No Match** branch, add **Multi-Branch**. Add a branch named `Enterprise` where the
    company size field is greater than `500`. Leave everyone else on **Else**.
  </Step>

  <Step title="Show the right event">
    On `Enterprise`, add **Display Scheduler** with the `Enterprise demo` event. On **Else**, add
    **Display Scheduler** with the `Demo` event. Keep **Use event hosts** on, so each event's queue
    picks the rep.
  </Step>

  <Step title="Test and publish">
    Select **Test**, then **Run Test** once for each case: a known person, a large new company, and a
    small new company. Then select **Publish**, and turn on the
    [deployment switch](/workflows#the-enabled-switch) so the status reads **Live**.
  </Step>
</Steps>

<Warning>
  A workflow test performs real actions. It can book meetings, count routing assignments, and write
  to your CRM. Use test people.
</Warning>

To create a CRM record for each new person, add **Create Record** on the **No Match** path. Existing
records keep their owner, because the **Match** path does not change them.

## Move from Calendly to Default step by step

<Steps>
  <Step title="Connect your CRM and conferencing tool">
    Select **Settings** in the sidebar, then **Integrations** under **Workspace Settings**. Connect
    Salesforce or HubSpot. If your team meets on Zoom, connect Zoom once for the workspace. Google
    Meet and Microsoft Teams links come from each member's own calendar connection. See
    [Integrations](/settings/integrations).
  </Step>

  <Step title="Invite your team and connect calendars">
    In **Settings** → **Users**, select **Invite People**. Each member connects Google Calendar or
    Outlook Calendar, sets working hours, and creates their own **Quick event** for a personal link.
    See [Member onboarding](/member-onboarding).
  </Step>

  <Step title="Map each rep to their CRM user">
    In **Settings** → **Users**, add each rep's Salesforce User ID or HubSpot Owner ID. Default needs
    this mapping to use a record owner as a meeting host. See [Users](/settings/users).
  </Step>

  <Step title="Rebuild Round Robin event types as queues and Team events">
    In **Routing** → **Policies**, create a policy with **Meetings** in **Assignment Units**. In
    **Routing** → **Queues**, create a queue with the event's hosts. Then in **Scheduling** →
    **Event Types**, select **Create new event**, choose **Team event**, and add the queue as host.
    See [Policies](/policies), [Queues](/queues), and [Events](/events).
  </Step>

  <Step title="Rebuild Workflows as messages">
    In the sidebar, under **Scheduling**, select **Communications** to open the Messages library.
    Create reminder and notification templates, then assign them in each event's **Messages**
    section. See [Messages](/scheduling-messages).
  </Step>

  <Step title="Install the Pixel and add your forms">
    Open **Signals**, select **Add Domain**, and install the Pixel snippet. Then open the domain's menu,
    select **Catalog forms**, add each form you routed with Calendly, and map its fields. See
    [Set up the Pixel and Forms SDK](/pixel-sdk-setup).
  </Step>

  <Step title="Rebuild each routing form as a workflow">
    Build 1 workflow for each routing form, as in
    [Rebuild a Calendly routing form](#rebuild-a-calendly-routing-form-as-a-default-workflow). Add a
    **Meeting Status** workflow if Calendly logged meetings in your CRM.
  </Step>

  <Step title="Switch over 1 form at a time">
    When a workflow passes its tests, publish it and set it live. Then remove Calendly's routing code
    from that form's pages, so visitors see 1 scheduler. Share the new booking links in place of your
    Calendly links.
  </Step>
</Steps>

## What does not carry over from Calendly

* **Configuration.** Default has no importer for Calendly event types, routing forms, or
  **Workflows**. You rebuild them in Default.
* **Meetings already booked.** Meetings booked in Calendly stay in Calendly. Default's
  [Meetings](/meetings) list starts with the first meeting booked through Default.
* **Calendly-hosted routing forms.** Default doesn't design or host forms, so questions that only
  exist in a Calendly routing form move to a form on your website. You can create that form in
  Default: in **Forms**, select **Create new**, then **New form**, and put it on your site with the
  code from the **Install** tab. See
  [Create a form in Default](/forms/your-forms#create-a-form-in-default).
* **Group event types.** Default has no event type that lets several invitees book the same meeting
  separately. The person who books can add up to 10 guests to their meeting. Webinar events are
  coming soon.
* **Meeting Polls and One-off Meetings.** These have no Default equivalent.
* **Priority stars.** Default uses member weights and the policy's rules instead of priorities.
* **Other calendars.** Default connects Google Calendar and Outlook Calendar.
* **Existing Calendly links.** Links you shared keep pointing at Calendly. Replace them with Default
  booking links.

Related: [Default vs Calendly](https://www.default.com/comparison/calendly)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.