Privacy Policy — Bulk Delete Emails for Gmail™

Last updated: 20 September 2026 Extension: Bulk Delete Emails for Gmail™ — Mass Unsubscribe & Cleanup Contact: tphuc.me@gmail.com


The short version

Bulk Delete Emails for Gmail™ runs entirely inside your browser.


What the extension accesses

1. Gmail message metadata

Every message fetch this extension makes uses Gmail's format=metadata mode with an explicit allowlist of headers:

HeaderWhy it is needed
FromGroup your mail by sender — the core of the product
SubjectShown as a one-line example so you can recognise a sender
DatePower the "oldest / newest" columns and "older than N months"
List-UnsubscribeFind the unsubscribe endpoint for a mailing list
List-Unsubscribe-PostDetect RFC 8058 one-click support

Gmail also returns sizeEstimate and internalDate with every message; those drive the "space used" figures.

format=metadata means Google does not send us the message body. No email text, no attachments, no inline images. Not "we choose not to look" — the API response does not contain it.

2. Your email address

Read once, from users.getProfile, to display which account is connected in the dashboard header. It is not stored anywhere outside your browser and is not sent to us or anyone else.

3. Labels

The extension adds and removes the TRASH and INBOX labels on messages you select. That is what "move to Trash" and "undo" mean technically.


What is stored, and where

All of it lives in chrome.storage.local — a private, per-extension area on your own computer. Nothing is written to chrome.storage.sync, so none of this travels through your Google account to your other devices.

StoredContentsWhy
Scan cachePer-sender name, address, message count, total size, newest/oldest dates, unsubscribe URLs, message idsSo reopening the dashboard is instant instead of re-scanning
Run historyThe last 10 cleanups: message ids, action, timestamp, countsThis is the Undo feature. Without the ids, nothing could be restored
Unsubscribe ledgerSender address → status and timestampSo you are not asked to unsubscribe from the same list twice
SettingsYour query, scan depth and dry-run preferenceConvenience

You can erase all of it at any time by removing the extension, or from chrome://extensions → Bulk Delete Emails for Gmail™ → Details → Site settings. Uninstalling deletes it permanently and immediately.


Network requests, in full

This is the complete list. There are no others.

  1. https://www.googleapis.com/gmail/v1/... and .../batch/gmail/v1 Your own mailbox, authorised by a token Chrome issues to you. Requests go directly from your browser to Google.
  2. https://oauth2.googleapis.com/revoke Only when you click "Reconnect Google account", to revoke the old token.
  3. A sender's unsubscribe URL, and only when you explicitly ask to unsubscribe from that sender. This is an RFC 8058 one-click POST containing the fixed body List-Unsubscribe=One-Click. It is sent with credentials: 'omit', so your cookies for that domain are not included. Permission for that domain is requested at that moment and released afterwards.

What we do NOT do


Google API Services User Data Policy

Bulk Delete Emails for Gmail™'s use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.

Specifically:

Revoking access

At any time: https://myaccount.google.com/permissions → Bulk Delete Emails for Gmail™ → Remove access. The extension also has a "Reconnect Google account" button that revokes its current token.


Retention

Because nothing is transmitted to us, we retain nothing. Data in your browser persists until you clear it or uninstall the extension. The scan cache keeps at most 8 recent scans and the history keeps the last 10 runs; older entries are evicted automatically.

Children

Bulk Delete Emails for Gmail™ is not directed at children under 13 and does not knowingly collect data from them.

Changes to this policy

Material changes will be reflected here with an updated date and noted in the Chrome Web Store listing's changelog.