Privacy Policy
Last updated: 25 July 2026 · Applies to Mailbell for macOS, all versions.
Mailbell is a macOS menu bar app that notifies you about new Gmail messages. This policy explains exactly what it touches, because the honest answer is: less than you might expect, and none of it reaches me.
The short version
- Mailbell runs entirely on your Mac. It is a normal Mac application, not a service you sign up for.
- There is no Mailbell server or backend. None exists. I operate no infrastructure that could receive your mail.
- Your Gmail data never passes through any server I control. Mailbell talks directly from your Mac to Google.
- Your Google tokens are stored in the macOS Keychain on your Mac, and nowhere else.
- I do not sell your data, show ads, train AI on your data, or share your Gmail data with anyone.
Who is responsible
Mailbell is an independent open-source project by Marton Paulo. There is no company behind it and no data-processing operation to speak of, because no data is ever received. Questions and privacy reports go to the issue tracker.
How Mailbell connects to Gmail
You sign in through Google's own OAuth flow, in your own browser. Mailbell never sees or asks for your Google password. Google returns tokens directly to the app on your Mac.
Mailbell then connects to Gmail over IMAP (imap.gmail.com, TLS, port 993) using those tokens and holds an idle connection so it learns about new mail as it arrives.
Two parties are involved in this: you and Google. There is no third.
What Mailbell accesses
For each message that needs a notification, Mailbell reads the minimum that a useful notification requires:
| Data | Why |
|---|---|
| The email address of the account you connected | To label the account and open the right mailbox |
| Sender name and address | To show who the message is from |
| Subject | To show what the message is about |
| Date the message was sent | To order and time-stamp the queue |
| Gmail and IMAP identifiers (UID, RFC Message-ID, Gmail message and thread IDs) | To avoid duplicate notifications, group a thread, and mark the right message read |
| A limited text preview of the message | To show a few lines so you can judge urgency without opening Gmail |
| Read or unread state | To remove items you already read elsewhere |
What Mailbell does not fetch
- It does not fetch attachments. Ever, in any form.
- It does not fetch full message bodies. The preview is a bounded request capped at roughly 8 KB of text, and it is read-only: fetching a preview does not mark anything read in Gmail.
- It does not read your contacts, calendar, Drive, or any other Google service.
- It does not send mail, reply, archive, delete, label, or move anything. The only change it ever makes to your mailbox is marking a message read, and only when you explicitly choose Mark as Read or Mark All as Read.
About the permission Google asks for
Gmail's IMAP interface requires the broad https://mail.google.com/ scope; Google has no narrower scope that permits IMAP access. So the consent screen will describe wide access even though Mailbell uses a small corner of it. Rather than claim otherwise, I will say it plainly: the permission you grant is broader than what the app does. What the app actually does is listed above, and the source code is public so you can check.
Where things are stored
Everything stays on your Mac:
- macOS Keychain — your Google refresh token and cached access token. Nothing else is stored there, and nothing sensitive is stored anywhere else.
- App preferences on your Mac — the account address, your browser routing choice, connection checkpoints, your settings, and a short pruned list of which messages you already handled so they do not reappear. No message content is retained after an item leaves your queue.
Nothing is uploaded, backed up to a service I run, or synced anywhere by Mailbell. Whatever your own Mac backups do with your disk is between you and your backup software.
Analytics, advertising, and AI
- Mailbell contains no analytics, no telemetry, no crash reporting, and no usage tracking of any kind.
- There is no advertising, and no advertising identifier.
- Your Gmail data is never used to train AI or machine-learning models, by me or anyone else through this app.
- Your Gmail data is never sold, rented, shared, or transferred to any third party. There is no mechanism by which it could be: it never leaves your Mac.
Mailbell's use of information received from Google APIs adheres to the Google API Services User Data Policy, including its Limited Use requirements.
Update checks
Mailbell checks for new versions using Sparkle. An update check requests an update feed hosted on GitHub, and downloads a release asset from GitHub when an update exists.
These requests contain no Gmail data and no account information. As with any web request, GitHub as the host can see the ordinary technical details of the connection, such as your IP address and the version of the file requested. I receive nothing from these requests and keep no logs of them.
You can turn automatic checks off in Settings → Updates. Apart from Gmail itself, this is the only network activity in the app.
How to revoke access
You are in control of the connection at both ends, and I recommend doing both:
- Disconnect in the app. Open Mailbell → Settings → Accounts and choose Remove on the account. This deletes the stored tokens from your Keychain and stops all monitoring for that account. Your Gmail mail is not changed.
- Revoke access at Google. Go to your Google Account's third-party access page, find Mailbell, and remove its access. This invalidates the tokens at the source, regardless of what any app still holds.
To remove the app entirely, quit Mailbell and drag it from Applications to the Trash.
Children
Mailbell is not directed at children and does not knowingly process any child's data. It processes whatever is in the Gmail account you choose to connect.
Changes to this policy
If this policy changes, the updated version will be published on this page with a new date, and material changes will be described in the changelog. Since the app is open source, you can also see the exact commit that changed it.
Contact
Open an issue at github.com/martonpaulo/mailbell/issues. For anything security-related, please use the private security advisory form instead of a public issue, and never include tokens or message content.
← Back to Mailbell