Groundbase

Status: Pending Google OAuth verification. The two-way Google Calendar sync is built into the app but disabled while we complete Google's OAuth review process. Until that's approved, the in-app calendar works as a standalone calendar (tasks, events, appointments, recurring) and you can export individual events as .ics files to add to Google Calendar manually.

When the integration goes live, you'll be able to Settings → Google Calendar → Connect Google Calendar and:

How it'll work (preview)

The OAuth flow opens your default browser to Google's sign-in. After you pick an account, review the requested scopes (calendar.events for create/read/update + calendar.readonly for the inbound sync), and click Allow, you're redirected back to the Settings page with a "Connected" banner.

We never see your Google password. The OAuth flow gives us a refresh token that's stored encrypted in Groundbase's cloud database — same encryption as your email IMAP password.

What syncs

GroundbaseGoogle Calendar
Task with due_at (no time)All-day event on the due date
Task with due_at and end_atTimed event from start to end
Event (kind=event)Timed event
Meeting (kind=meeting)Timed event with location set + optional SMS reminders to the linked contact
Task marked doneEvent title gets a ✓ prefix
Task deletedEvent deleted from Google Calendar

The contact name, deal name, and any notes you put on the task come through in the event description. Click the event title in Google Cal → Open in Groundbase link in the description (added in a future update).

Task vs Event vs Meeting — what's the difference?

When you create something on the Groundbase calendar, you pick a kind. The differences:

KindWhat it isHas time window?Has location?Recurs?
TaskSomething to do by a deadlineJust a due date (optional time)NoYes (daily / weekly / monthly / yearly)
EventA scheduled block with no locationYes — start + endNoNo
MeetingA scheduled block AT a place + optional SMS reminders to the linked contactYes — start + endYes — address, video link, roomNo

In the calendar view, each kind has its own color so you can read your day at a glance:

When you click a date with Google-only items, you'll see a small "+N from Google Cal" badge — those are events you created directly in Google Calendar (not in Groundbase). They render so your calendar reflects reality, but they're not stored as Groundbase tasks since they're not tied to a contact. To bring one into Groundbase, create a matching event manually and delete the Google-only one (proper "import + bind to contact" flow is on the roadmap).

What DOESN'T sync (yet)

Sync timing

ActionLatency
Create task on web / mobile / via AI~5 seconds
Create task on Windows desktop app1-2 minutes (background cron)
Edit event in Google CalendarWithin 5 minutes (throttled inbound sync)
Click Sync now in SettingsImmediate

The desktop-app latency is because the desktop writes directly to our database for speed (no API round-trip), so a server-side background process catches the change instead. For most calendar use this is unnoticeable.

Disconnecting

Settings → Google Calendar → Disconnect.

We immediately stop syncing and revoke our access token at Google. Events we previously created in your Google Calendar stay there — Google doesn't let us bulk-delete them via the OAuth flow. Delete them manually in Google Cal if you want a clean break.

Troubleshooting

"Last sync had an issue" banner. Click Sync now. If it persists, disconnect and reconnect — your Google session token may have expired (rare; happens if you revoked Groundbase from your Google account settings, or if Google rotated the refresh token).

Event isn't showing up in Google Cal. Possible causes:

  1. The task has no due_at or end_at — we can't anchor it to a date
  2. You're connected to one Google account but viewing another in Google Cal — check the account picker top-right of Google Cal
  3. You created the task on desktop within the last 2 minutes — wait for the next cron tick or hit Sync now

Event isn't syncing back from Google. We only sync back events that Groundbase originally created (those have an internal marker). Events you create directly in Google Cal are ignored — see "What doesn't sync" above.