Self-Hosted Alternatives to iCloud Calendar
Why Replace iCloud Calendar?
iCloud Calendar is deeply embedded in the Apple ecosystem — convenient if you only use Apple devices, limiting if you don’t. Here’s why self-hosting makes sense:
- Vendor lock-in: Leaving Apple means losing your calendar. Export options exist but are clunky.
- Cross-platform access: iCloud CalDAV works on non-Apple devices but requires Apple-specific credentials and offers a degraded experience.
- Privacy: Apple has access to all your calendar data, including event titles, locations, and attendee lists.
- Storage limits: Free iCloud only gives you 5 GB shared across all services. Calendar data counts against this.
- Cost: iCloud+ starts at $0.99/month for 50 GB. Over years, self-hosting is cheaper.
The CalDAV protocol is an open standard that works everywhere — iPhone, Android, macOS, Windows, Linux. All the alternatives below use CalDAV, so switching between them is painless.
Best Alternatives
Radicale — Best Overall Replacement
Radicale is a minimal CalDAV/CardDAV server that does one thing well: store and serve calendars and contacts. It runs in 15 MB of RAM, uses a file-based storage backend, and needs zero configuration for basic use. If you want the simplest possible calendar server, this is it.
Setup takes under 5 minutes with Docker. Works with every CalDAV client, including iOS, Android (via DAVx⁵), macOS, and Thunderbird.
[Read our full guide: How to Self-Host Radicale]
Baikal — Best UI and User Management
Baikal adds a web admin interface on top of CalDAV/CardDAV. Create and manage users through a browser, configure calendars, and monitor server health. Slightly more complex than Radicale but much easier to manage if you have multiple users.
Uses MySQL/SQLite for storage. The web UI makes it the best choice for households or small teams where you need to manage multiple accounts without touching config files.
[Read our full guide: How to Self-Host Baikal]
EteSync — Best for Privacy
EteSync provides end-to-end encrypted calendar and contact sync. Your server never sees the plaintext contents of your events. Even if someone compromises your server, calendar data remains encrypted.
The trade-off: EteSync uses its own protocol (not standard CalDAV), so you need the EteSync app on mobile or the EteSync-DAV bridge for clients that only speak CalDAV. This adds complexity but provides privacy that no CalDAV server can match.
[Read our full guide: How to Self-Host EteSync]
Migration Guide
Export from iCloud
- Open iCloud Calendar in a browser.
- Click the share icon next to each calendar you want to export.
- Check “Public Calendar” and copy the URL.
- Open the URL in a new tab — it downloads a
.icsfile. - Repeat for each calendar.
Alternatively, use macOS Calendar app: File → Export → Export to .ics.
Import to Your Self-Hosted Server
Radicale: Drop the .ics file into the user’s calendar directory, or import via a CalDAV client:
curl -T calendar.ics -u user:password \
https://cal.example.com/user/calendar-name/
Baikal: Use a CalDAV client (Thunderbird, DAVx⁵) to import the .ics file into the new calendar.
iOS Setup (after migration):
- Settings → Calendar → Accounts → Add Account → Other → Add CalDAV Account
- Server:
https://cal.example.com - User Name: your username
- Password: your password
- Tap Next — iOS auto-discovers calendars
What Transfers
| Data | Transfers? | Notes |
|---|---|---|
| Events | Yes | All events export cleanly via .ics |
| Recurring events | Yes | Standard iCalendar format |
| Reminders | Partial | Apple Reminders use a different format; basic reminders transfer |
| Shared calendars | No | Must re-share from the new server |
| Attachments | No | iCloud-specific; not included in .ics export |
| Locations | Yes | Embedded in event data |
| Invites/RSVPs | Partial | Historical RSVPs may not transfer |
Cost Comparison
| iCloud Calendar | Self-Hosted | |
|---|---|---|
| Monthly cost | Free (5 GB shared) or $0.99+ (iCloud+) | $0 (runs on existing server) |
| Annual cost | $12-36/year for iCloud+ | $0 additional |
| 3-year cost | $36-108 | $0 |
| Storage | 5 GB shared / up to 12 TB | Unlimited (your disk) |
| Cross-platform | Limited (works best on Apple) | Full (CalDAV is universal) |
| Privacy | Apple has access | Full control |
| Encryption | In transit + at rest (Apple holds keys) | EteSync: E2E (you hold keys) |
Calendar data is tiny — a few megabytes for years of events. The “storage” argument is less relevant here than with photos or files, but the privacy and cross-platform arguments are strong.
What You Give Up
- Seamless Apple integration: iCloud Calendar syncs instantly across all Apple devices with zero config. Self-hosted CalDAV works but requires manual account setup on each device.
- Siri integration: “Hey Siri, add an event” stops working with your calendar (unless you keep iCloud Calendar for Siri and sync via CalDAV for your main calendar).
- Shared calendar invites: iCloud makes sharing calendars trivial via Apple ID. CalDAV sharing works but the UX is less polished.
- Time zone intelligence: iCloud automatically adjusts events for time zones based on your travel. CalDAV handles this too, but some clients do it better than others.
For most people, the setup cost is a one-time 15-minute investment per device. After that, CalDAV calendars work identically to iCloud in the iOS Calendar app.
FAQ
Will my iPhone calendar still sync in the background after switching to CalDAV?
Yes. iOS natively supports CalDAV accounts — add your self-hosted server in Settings → Calendar → Accounts → Other → Add CalDAV Account. Once configured, calendars sync in the background on the same schedule as iCloud (every 15 minutes, or push if your server supports it). New events created on your phone appear on the server automatically. The daily experience in the iOS Calendar app is identical to using iCloud.
Can I still use Siri to create calendar events?
Not directly with a self-hosted calendar. Siri only creates events on iCloud or Exchange calendars. The workaround: keep iCloud Calendar active as your default Siri calendar, then subscribe to your self-hosted CalDAV calendars for viewing. Alternatively, accept that Siri voice commands won’t work for calendar creation — manually creating events in the Calendar app on a CalDAV account takes the same number of taps.
Does EteSync’s encryption affect compatibility with calendar apps?
Yes. EteSync doesn’t use standard CalDAV — it uses its own encrypted protocol. To use EteSync with standard calendar apps (iOS Calendar, Thunderbird, GNOME Calendar), you need the EteSync-DAV bridge, which runs as a local service and translates between EteSync’s encrypted protocol and CalDAV. On mobile, the EteSync app handles this natively for iOS and Android. The encryption is genuine end-to-end — your server never sees event details in plaintext — but the bridge adds setup complexity.
How do I share calendars with family members on a self-hosted server?
Radicale supports shared calendars through access control lists (ACL) in its configuration file — grant read or read-write access to specific users on specific calendars. Baikal handles sharing through its web admin panel — create a calendar and assign user permissions. Both require each family member to have their own account on the server. Once shared, calendar events appear on all authorized devices automatically. The experience is similar to iCloud Family Calendar sharing.
Can I import my existing Apple Reminders alongside calendar events?
Partially. Apple Reminders use a CalDAV-based protocol (CalDAV with VTODO components), and some self-hosted CalDAV servers handle them. Radicale and Baikal both support VTODO tasks, so basic reminders (title, due date, notes) transfer via .ics export. However, Apple’s advanced reminder features — location-based triggers, tagging, Smart Lists, and subtasks — are Apple-specific extensions that don’t transfer. For a full reminders replacement, consider Vikunja or Tasks.md alongside your calendar server.
How much server resources does a CalDAV server need?
Almost nothing. Radicale runs on 15-20 MB of RAM and negligible CPU. Baikal needs ~40 MB. Calendar data is tiny — years of events for a family of four typically uses under 50 MB of disk space. You can run a CalDAV server on the cheapest VPS available ($3-5/month), or add it to an existing server alongside other self-hosted services with zero noticeable resource impact. This is one of the lightest self-hosted services you can run.
Can I sync calendars with Outlook or Windows Calendar?
Yes. Windows 10/11 Calendar app supports CalDAV accounts natively — add your server URL, username, and password in Settings → Manage Accounts → Add Account → Other. Outlook (desktop) does not natively support CalDAV, but the CalDav Synchronizer plugin adds full CalDAV support to Outlook for free. Thunderbird supports CalDAV natively. All three sync bidirectionally with your self-hosted server, so events created on any platform appear everywhere.
Related
Get self-hosting tips in your inbox
Get the Docker Compose configs, hardware picks, and setup shortcuts we don't put in articles. Weekly. No spam.
Comments