DEV Community

Alex Spinov
Alex Spinov

Posted on

Cal.com Has a Free Scheduling API — Open-Source Calendly Alternative

Calendly charges $12/month for custom branding. Cal.com is free, open-source, and you own your scheduling data.

What is Cal.com?

Cal.com is an open-source scheduling platform. It handles booking pages, calendar sync, payments, workflows, and team scheduling — with a REST API for embedding scheduling into any app.

Why Cal.com Over Calendly

1. Embeddable Scheduling

<!-- Inline embed -->
<cal-inline calLink="your-username/30min"></cal-inline>
<script src="https://app.cal.com/embed/embed.js"></script>
Enter fullscreen mode Exit fullscreen mode
// React component
import Cal, { getCalApi } from "@calcom/embed-react";

function BookingPage() {
  return (
    <Cal
      calLink="your-username/30min"
      style={{ width: "100%", height: "100%" }}
      config={{ layout: "month_view" }}
    />
  );
}
Enter fullscreen mode Exit fullscreen mode

2. API for Custom Integrations

# List bookings
curl -H "Authorization: Bearer cal_xxx" \
  https://api.cal.com/v2/bookings

# Create event type
curl -X POST -H "Authorization: Bearer cal_xxx" \
  https://api.cal.com/v2/event-types \
  -d '{"title": "30 Min Meeting", "slug": "30min", "length": 30}'

# Webhooks for booking events
curl -X POST https://api.cal.com/v2/webhooks \
  -d '{"subscriberUrl": "https://myapp.com/webhook", "eventTriggers": ["BOOKING_CREATED"]}'
Enter fullscreen mode Exit fullscreen mode

3. Calendar Sync

Supported calendars:
- Google Calendar
- Microsoft Outlook / Office 365
- Apple Calendar (CalDAV)
- Zoho Calendar
- Any CalDAV server
Enter fullscreen mode Exit fullscreen mode

4. Payment Collection

// Collect payment before booking
const eventType = {
  title: "Consulting Session",
  length: 60,
  price: 150, // $150
  currency: "USD",
  // Integrates with Stripe, PayPal
};
Enter fullscreen mode Exit fullscreen mode

5. Workflows (Automated Actions)

Trigger: Before event (24h, 1h, 15min)
Action: Send reminder email/SMS
Trigger: After event
Action: Send follow-up email with feedback form
Trigger: On booking
Action: Send Slack notification to team
Enter fullscreen mode Exit fullscreen mode

6. Self-Hosted

git clone https://github.com/calcom/cal.com.git
cd cal.com
yarn install
yarn db:deploy
yarn dev
Enter fullscreen mode Exit fullscreen mode

Full control over your data, branding, and infrastructure.

Cal.com vs Calendly vs SavvyCal

Cal.com Calendly SavvyCal
Price Free (self-host) $12/mo+ $12/mo+
Open source Yes No No
Embeddable Yes Yes Yes
API Full REST API Limited Limited
Custom branding Free Paid plan Paid plan
Self-hosted Yes No No
Team scheduling Free Enterprise Paid

Getting Started

# Cloud (free tier)
# Sign up at cal.com

# Self-hosted
docker-compose up -d
Enter fullscreen mode Exit fullscreen mode

The Bottom Line

Cal.com gives you Calendly's features with full ownership. Self-host for free, embed anywhere, automate with APIs. If scheduling is core to your product, Cal.com is the right foundation.


Need data solutions? I build web scraping tools. Check my Apify actors or email spinov001@gmail.com.

Top comments (0)