Security at Tilly

Your calendar says where you will be and who you will be with. This page describes how Tilly protects it, in terms you can check.

How Tilly connects to your calendars

Google Calendar and Microsoft Outlook connect through OAuth 2.0. You sign in on Google’s or Microsoft’s own page, and Tilly never sees that password. Tilly asks Google for two calendar permissions, reading calendars and managing events, and asks Microsoft for calendar read and write access. Sign-in shares your name and email address. Tilly does not ask either provider for access to your mail, files, or contacts.

iCloud and other CalDAV servers do not offer OAuth. For those accounts you create an app-specific password, which works only for calendar access and which you can revoke at any time from your Apple ID or server settings. Tilly stores that password encrypted, as described below, and uses it only to sync the calendars you connected.

On iPhone you can instead use the calendars already on the device. iOS shares them with Tilly only after you grant calendar permission, and you can withdraw it in iPhone Settings at any time.

Subscribed ICS feeds are read-only. Tilly fetches the address you give it and never writes back.

How credentials are stored

OAuth access tokens, refresh tokens, and app-specific passwords are encrypted with AES-256-GCM before they are saved. Each value gets its own random initialization vector, and the encryption key is derived with PBKDF2 from a secret held outside the database. The production service refuses to start without that key, so a credential cannot be saved unencrypted by mistake.

A copy of the database alone is not enough to read a stored credential.

Encryption in transit

The website and the web app are served only over HTTPS. Both send a Strict-Transport-Security header with a two year lifetime, so a browser that has visited once will not connect over plain HTTP.

You approve changes to your calendar

Tilly can suggest or prepare a calendar or task change. A change that matters waits for your approval, with the destination calendar and the details visible before you save. Events owned by Google, Microsoft, or Apple stay with those providers.

Booking links show guests your open times. They never show the event titles, attendees, or notes behind a busy slot.

Addresses you give Tilly are checked

A CalDAV server or ICS feed is an address Tilly fetches on your behalf. Tilly validates each address before fetching it and again on every redirect, and refuses addresses that point at private or internal networks. Credentials embedded in an address are removed before anything is written to a log.

What Tilly does not do with your data

  • Tilly does not sell calendar data.
  • Tilly does not use calendar data to build advertising profiles.
  • Assistant analytics record metadata only, unless you turn on content sharing yourself.

Who processes your data

Tilly relies on a small set of providers: Convex for application hosting and data storage, Anthropic for the assistant, OpenAI for voice transcription, PostHog for product analytics, Sentry for crash reports, Expo for aggregate app diagnostics, and Resend for email. Raw voice recordings are processed for transcription and are not kept by Tilly.

Deleting your account

You can delete your account from settings at any time. Before removing your data, Tilly asks Google to revoke the access it was granted, so the connection ends at the provider as well. Your events stay in Google, Outlook, or iCloud, because those providers own them. Tilly may keep a minimal email suppression record so that an unsubscribe request is not reversed.

Reporting a vulnerability

If you find a security problem, write to security@trytilly.com. We commit to:

  • Acknowledging your report within 48 hours
  • Keeping you informed of our progress
  • Not pursuing legal action against good-faith researchers

Questions

Write to security@trytilly.com with any question about how Tilly handles your data.

Try Tilly Pro for 7 days.

Connect your calendars. Plan with AI.

Continue on web

We’ll email your setup link. Your trial starts after setup and confirmation at checkout. Eligibility, price, and billing terms are shown at checkout. Terms · Privacy