Migrate from Cal.com
Sales NewMoving to Preb from Cal.com doesn't mean rebuilding everything by hand. Connect the Cal.com account you're leaving and Preb reads your setup, then lets you pick exactly what to bring over — event types (with their buffers, limits, and booking rules), booking questions, availability, your team, and your booking history — in one guided migration.
Preb only reads your Cal.com account. Nothing there is changed or deleted, so you can migrate and keep Cal.com running side by side until you're ready to switch off. You'll find this under Integrations → Switch to Preb → Cal.com, and it's also offered during onboarding under "Migrating from another tool?".
Before you start
Prerequisites
- A Preb workspace where you're an admin — importing writes workspace-wide data (event types, contacts, invites), so it's an admin-only action.
- A Cal.com account you can log into.
What comes across
Because Cal.com exposes more of your setup than most tools, more of it comes across as real values rather than defaults. Here's what the import brings over and what you'll finish in Preb afterwards.
| From Cal.com | What happens |
|---|---|
| Event types (name, duration, description, hidden flag) | Imported |
| Buffers, minimum notice, slot interval, daily/weekly limits, booking window, requires-confirmation, and cancel/reschedule locks | Imported as real values — not defaults |
| Booking questions | Imported as booking-form fields |
| Locations | Imported — except Cal Video (see below) |
| Availability schedules | Imported as new schedules — your existing Preb default is left untouched |
| Team members and team event types | Imported when your Cal.com account is on a team plan — members are sent Preb invites |
| Booking history — past and upcoming | Imported as Preb contacts, each with their answers saved as a note |
| Cal Video locations | Set up in Preb — Cal.com generates its video links per booking, so pick Google Meet, Zoom, or Teams on the event instead |
| Workflows, routing forms, webhooks | Not imported — recreate any reminders and automations in Preb |
| Seats, recurring events, paid bookings, monthly/yearly limits | Not supported — the event imports without them |
| The meetings themselves | Never imported — no bookings, emails, or ads are ever created from your history |
Managed events
Cal.com "managed" event templates are skipped, but the actual per-person events created from them import normally, so nothing bookable is lost.
Running the import
Open Integrations → Switch to Preb → Cal.com
In Preb, go to Integrations, open the Switch to Preb tab, and click Manage on the Cal.com card.
Connect Cal.com
Click Connect Cal.com. You'll log in on Cal.com's side and click Allow to grant read-only access, then land back in Preb.
Scan your account
Click Scan Cal.com account. Preb reads your event types, availability, teams, and booking history and shows you everything it found. Nothing is imported yet.
Choose what to import
Tick the event types, availability schedules, and team members you want, and choose whether to import booking history as contacts (with a time range).
Start the import
Click Start import. Preb brings everything over and you can leave the page — progress is saved. When it finishes you'll see Migration complete with a summary of what came across.
You may see an approval notice
Preb's Cal.com app is completing Cal.com's official app approval. Until that lands you may see a "pending" or "unverified app" notice on Cal.com's consent screen — that's expected, nothing is wrong, and the import works normally.
Review your import
After the import, Preb shows a review checklist of everything it created, with a link to open each item. Open each imported event once to confirm it looks right — most settings come across automatically, and the checklist calls out anything Preb couldn't map (like a Cal Video location to replace) so you know exactly what to finish before going live.
Only what you imported shows up
Anything you left unticked stays available to import later, and skipped items are listed with the reason. The review list only shows what the run actually did.
Import again to catch new data
Need to bring over a teammate who accepted their invite late, or bookings that came in after your first import? Just run Import again. Preb matches event types by their URL slug and contacts by email, so re-running never creates duplicates — it only adds what's new.
When you're done
Once you've checked everything in the review, click Finish & disconnect Cal.com. Preb hands you a direct link to cancel your Cal.com subscription — do that only after you've confirmed everything works. Anything already imported stays in Preb; disconnecting just stops Preb from reading Cal.com.
Troubleshooting
| Problem | What to do |
|---|---|
| "Only workspace admins can connect Cal.com" | Importing is admin-only. Ask a workspace admin to run the migration, or have them connect. |
| An imported event says it has no location | Its only Cal.com location was Cal Video, which can't be carried over. Open the event and pick Google Meet, Zoom, or Teams. |
| A contact already existed | Preb adds the Cal.com booking as a note on the existing contact and never overwrites their details. |
| My team didn't import | Team event types and members import only when your Cal.com account is on a team plan. On a solo plan, only your own events and availability come across. |
| A reminder or workflow is missing | Cal.com workflows don't transfer — recreate reminders and automations in Preb's notification settings. |
Still stuck? See our contact & support guide and we'll help you sort it out.
Data & privacy
- Read-only. Preb never creates, edits, or deletes anything in your Cal.com account — it only copies data into Preb.
- Booking history becomes contacts, not bookings. Each past or upcoming attendee is imported as a contact with their answers saved as a note. No bookings, confirmation emails, or ad conversions are ever created from imported history.
- Disconnecting keeps your data. When you disconnect, Preb removes the stored Cal.com access token but keeps everything already imported and your review history.
If you push leads to a CRM
If Send unfinished leads to your connected CRM is on (Settings → Data retention), imported contacts will also be sent to your connected CRM about two hours after import. The wizard warns you when this applies — turn the setting off first if you don't want that.