ConfigsApr 3, 2026·2 min read

Cal.com — Open-Source Scheduling Infrastructure

The open Calendly alternative. Embed scheduling in any app with APIs and webhooks. Self-hostable. 40K+ GitHub stars.

TL;DR
Cal.com is a self-hostable scheduling platform with APIs and booking widgets.
§01

What it is

Cal.com is an open-source scheduling infrastructure platform that provides booking pages, calendar integrations, and scheduling APIs. It works as a self-hostable alternative to Calendly with features for teams, round-robin assignments, and webhook-driven workflows. The platform supports Google Calendar, Outlook, and CalDAV integrations.

It targets developers who want to embed scheduling into their applications, teams who need self-hosted scheduling for privacy, and businesses building appointment-based products.

§02

How it saves time or tokens

Cal.com provides a complete scheduling backend via API. Instead of building calendar logic, time zone handling, conflict detection, and email notifications from scratch, you embed Cal.com and configure it. For AI applications, you can automate scheduling -- an AI agent can create booking links, check availability, and schedule meetings through the API without manual intervention.

§03

How to use

  1. Self-host with Docker:
git clone https://github.com/calcom/cal.com.git
cd cal.com
npm install
npx turbo dev
  1. Or use Docker:
docker pull calcom/cal.com
docker run -p 3000:3000 calcom/cal.com
  1. Embed in your application:
<!-- Embed a booking page -->
<iframe src="https://cal.com/your-username/30min" width="100%" height="700"></iframe>

<!-- Or use the JavaScript embed -->
<script>(function (C, A, L) { /* cal.com embed script */ })(window, 'https://cal.com', 'init');</script>
§04

Example

// Use Cal.com API to create a booking programmatically
const response = await fetch('https://api.cal.com/v1/bookings', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'Authorization': 'Bearer cal_your_api_key'
    },
    body: JSON.stringify({
        eventTypeId: 1,
        start: '2026-04-20T10:00:00Z',
        end: '2026-04-20T10:30:00Z',
        responses: {
            name: 'AI Agent Booking',
            email: 'user@example.com'
        }
    })
});

const booking = await response.json();
console.log('Booking created:', booking.uid);
§05

Related on TokRepo

§06

Common pitfalls

  • Self-hosting requires PostgreSQL and proper email configuration for booking notifications. Without email, users will not receive confirmation emails.
  • Time zone handling is complex. Ensure your integration sends UTC timestamps and lets Cal.com handle time zone conversion for the user.
  • The API has rate limits. For high-volume booking scenarios, cache availability data and batch requests rather than querying per-user.

Frequently Asked Questions

How does Cal.com compare to Calendly?+

Cal.com is open-source and self-hostable, while Calendly is a closed-source SaaS product. Cal.com offers more flexibility through APIs and webhooks, and your data stays on your infrastructure. Calendly has a more polished consumer experience. Choose Cal.com for developer-facing integrations and self-hosting requirements.

Can I embed Cal.com in my app?+

Yes. Cal.com provides embeddable booking widgets as iframes, JavaScript snippets, and React components. You can customize the appearance to match your brand. The embed handles the full booking flow including calendar selection, time zone detection, and confirmation.

Does Cal.com support team scheduling?+

Yes. Cal.com supports round-robin scheduling, collective scheduling (find a time when all team members are free), and managed event types for teams. Administrators can configure routing rules and assign team members to event types.

Can AI agents use Cal.com?+

Yes. Cal.com provides REST APIs for checking availability, creating bookings, and managing event types. An AI agent can programmatically find available time slots and schedule meetings without human intervention. Webhooks notify your system when bookings are created or cancelled.

Is Cal.com free?+

The open-source version is free for self-hosting with no feature limitations. Cal.com also offers a hosted cloud version with free and paid tiers. The free tier includes basic scheduling features, while paid tiers add team features, custom domains, and priority support.

Citations (3)
🙏

Source & Thanks

Created by Cal.com. Licensed under AGPL-3.0.

cal.com — ⭐ 40,900+

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets