Open Source & Self-Hosted

Keep Notion and Google Calendar in Perfect Sync

Bidirectional, real-time synchronization between your Notion calendar database and Google Calendar. No more double-entry. No more missed events.

Free forever. Deploy in under 5 minutes.

Everything you need for seamless sync

Built for reliability, security, and ease of use. No compromises.

Bidirectional Sync
Changes flow both ways. Edit in Notion or Google Calendar - both stay perfectly in sync.
Real-time Updates
Webhook-driven synchronization means your changes propagate instantly, not on a schedule.
Web Setup Wizard
No CLI commands or manual token copying. A friendly web interface guides you through setup.
Custom Field Mapping
Map any Notion property to Google Calendar fields. Full control over how your data syncs.
Encrypted Storage
Your credentials are encrypted with AES-256-GCM. Self-hosted means you control your data.
Dashboard Monitoring
Track sync health, view logs, and monitor operations from a clean dashboard interface.

Up and running in 5 minutes

No complex setup. No maintenance headaches. Just click, connect, and sync.

Step 01

Set Up Credentials

Create a Google OAuth app and Notion integration. Takes about 5 minutes.

Step 02

Deploy to Vercel

One-click deployment to Vercel. Your own instance, running on the free tier.

Step 03

Events Sync Automatically

That's it! Your events now sync bidirectionally in real-time.

Frequently asked questions

Everything you need to know about the sync. View full FAQ

How does the sync work?

Both Google Calendar and Notion changes are captured via webhooks for instant updates. A daily fallback sync ensures no changes are ever missed. Both directions use intelligent conflict resolution to ensure your data stays consistent.

Is my data secure?

Absolutely. This is a self-hosted solution - you deploy it to your own Vercel account. Your OAuth credentials are encrypted with AES-256-GCM and stored in your own Redis instance. No data ever passes through third-party servers.

How much does it cost?

It's completely free. The app runs on Vercel's free tier with Redis storage included via Vercel Marketplace. You own and control everything.

Why do my tokens expire after 7 days?

This happens when your Google OAuth app is in 'Testing' mode. To fix it, go to Google Cloud Console and publish your OAuth app. This removes the 7-day token expiration limit.

Can I sync multiple calendars?

Each deployment syncs one Google Calendar with one Notion database. To sync multiple calendars, deploy multiple instances. Each instance is independent and can have different configurations.

What if sync stops working?

Check the dashboard for error messages and logs. Common issues include expired tokens (re-authenticate), changed field mappings (update in settings), or rate limits (wait and retry). The troubleshooting guide covers all common scenarios.