MailSide

    v4.3.0 · Google Workspace Add-on
    🚧 Coming soon — MailSide is currently awaiting Google approval and will soon be available on the Google Workspace Marketplace.

    What Gmail can't solve, MailSide does. Two execution modes, priority filter execution, automatic attachment saving to Drive, sender blocking, full audit trail – and much more, right from the Gmail side panel.

    🆓 Completely free ☁️ Google Workspace 🔒 Your data stays with Google ⚡ Sub-minute trigger 👥 Multi-account

    Execution Modes

    MailSide uniquely offers two filter execution modes. One leaves everything to Gmail's own engine; the other takes control and processes filters in the order and priority you define.

    Native mode

    Gmail's own engine runs

    • All filters run in parallel simultaneously
    • Instant processing – zero latency
    • Gmail CRUD managed visually from MailSide
    • Audit trail and sender history available in native mode with trigger
    • Runs even when the browser tab is closed
    ✦ Recommended App Control

    MailSide's own engine runs

    • Priority execution – order matters
    • Stop-on-match: if a rule hits, others can be skipped
    • Sub-minute trigger: 1/5/10/30-second runs
    • Filter groups with drag-and-drop organization
    • Retroactive execution on existing emails
    • Automatic detection of inactive filters

    When switching modes, MailSide ensures a seamless transition: going Native → App Control automatically copies all your existing native Gmail filters to its virtual store and removes the originals to prevent parallel execution. Switching back writes all filters back to Gmail in native format. Nothing is lost.

    App Control mode uses the Gmail History API: the engine queries only emails received since the last run at each trigger, then matches filters in priority order. Typical latency with a per-minute trigger is 30–60 seconds; with sub-minute emulation as low as 1 second is achievable.

    Query Builder

    Gmail's built-in filters allow a single condition. MailSide's Query Builder lets you define multiple conditions per field, combined with AND/OR logic – and includes fields Gmail doesn't know by default.

    In the Query Builder, you can add any number of conditions to each filter. You can specify that the sender domain matches a pattern AND the subject contains a keyword AND the email has an attachment – and you can arrange these in AND (all must match) or OR (any is sufficient) relationships. The OR-chips system lets you assign multiple values to a field as separate badges: e.g. "sender: @gmail.com OR @yahoo.com".

    Two special filter fields are also available that Gmail's built-in filters don't handle: Delivered-To (Delivered-To header) and Mailing List (List-Id header). If you have multiple Gmail aliases or are on mailing lists, these let you precisely route each email. Useful for example with corporate mailing lists: every email to `dev-team@company.com` automatically gets the "Development" label.

    You can test your filter immediately with the "Dry Run" button before making it live. The dry-run preview shows: how many emails match the condition in the current inbox, and lists the first 5 examples with their subjects. This way you see exactly what the filter will do before anything actually runs.

    🔗
    AND / OR Condition Logic

    Sender, subject, content, date, size, attachment, label – in any combination, with multiple conditions per field

    📬
    Alias & Mailing List Filtering

    Based on Delivered-To and List-Id headers – if you have multiple Gmail aliases or mailing lists, you can precisely route each email. Gmail's built-in filters can't do this.

    Gmail can't do this
    🔬
    Dry-run Preview

    Before saving: how many emails match now in your inbox, and what are the first 5 examples? Never activate a filter without knowing what it will do.

    Unique feature
    📋
    Built-in Filter Templates

    Ready-made templates in one click: newsletters, invoices, social media notifications, GitHub, Google Calendar – instantly editable

    Actions

    Gmail filters let you attach one action to a rule. In MailSide you can assign unlimited actions to one filter – simultaneously archive, label, mark as read, save to Drive, and block the sender.

    When saving a filter, the "Apply to existing emails" option can be enabled: the engine immediately runs the new rule on the current inbox contents, processing up to 500 emails in one run. No need to manually sort inboxes that have accumulated for years – write the rules once and MailSide does the work in minutes.

    The sender blocking feature is particularly powerful: the `blockSender` action assigned to a filter adds the sender to the blocked list and automatically moves the email to Spam. The Sender History service tracks how many emails you've received from each sender – and can be used as special conditions in filters: `senderIsNew` (no previous email from this sender), `senderMinCount` and `senderMaxCount` (based on email count boundaries).

    With the automatic attachment saving feature, when a filter matches, MailSide automatically saves attachments to Google Drive. A "MailSide Attachments" folder is created in the Drive root (if it doesn't exist), and files are saved with a date-prefixed name. Ideal for automatically archiving invoices, contracts, important documents – without human intervention.

    Unlimited Parallel Actions

    Archive, label, read, star, important, spam, delete – assign any number of actions to one filter simultaneously, without Gmail's limitations

    🔥
    Retroactive Application on Existing Emails

    When saving a filter, immediately run it on the current inbox – up to 500 emails in one pass. Categorize years of unorganized inbox in minutes.

    Gmail can't do this
    🚫
    Sender Blocking + History Filters

    blockSender action sends to spam and adds to blocklist. History filters: senderIsNew (never written before), senderMinCount / senderMaxCount (email count thresholds) – usable as filter conditions.

    Unique feature
    💾
    Auto-save Attachments to Google Drive

    When a filter matches, attachments are automatically saved to Drive. Dedicated "MailSide Attachments" folder, date-prefixed filename. Invoices, contracts, documents – no human intervention.

    Unique feature

    Filter Management

    When working with many filters, overview is lost. MailSide guarantees you always know exactly when and how each filter runs through grouping, drag-and-drop ordering, and priority fields.

    In App Control mode, you can organize filters into any groups (GroupManager). Groups themselves are reorderable with drag-and-drop, collapsible and expandable. You can move filters within a group and between groups by dragging – all order changes are saved to the server atomically, free from race conditions.

    Each filter can have a priority number (low number = higher priority) and an Enabled flag. The Enabled toggle lets you temporarily disable a filter without deleting it. The stop-on-match option ensures that if an important filter matches, lower-priority ones don't run unnecessarily – for example, a corporate filter always precedes a general rule.

    Filter duplicate detection and invalid filter detection happen automatically: MailSide detects when two filters are logically identical (based on OR-normalized hash) and warns you. Automatic name generation creates a readable name from filter conditions – no need to manually name every single filter.

    🗂️
    Filter Groups with Drag-and-Drop Ordering

    Organized groups (GroupManager): drag-and-drop within and between groups, collapsible view, atomic saving – no race conditions

    🎯
    Priority + Stop-on-match

    Number-defined priority order (low number = runs first). With stop-on-match: if the filter hits, lower-priority ones are skipped – conflicting rules elegantly resolved

    🔘
    Enabled / Disabled Toggle

    Temporarily disable filters without deleting them. Useful for testing or seasonal rules – one click and the filter pauses, but the config is preserved

    🔍
    Duplicate + Invalid Filter Detector

    Flags logically identical filters based on OR-normalized hash. Automatic name generation from conditions – no need to manually name every filter

    Protection

    MailSide v4 includes serious protection systems: it automatically detects forgotten, never-matching filters, defends your intentions against Gmail's artificial intelligence, and provides a three-layer SPAM safety net ensuring important emails never accidentally disappear.

    Stale Filter Detection shows a status badge on every filter card: 🟢 if there was a match within the last N days, 🔴 if no email has matched for N days, ⛔ if the filter has never matched. This immediately shows which filters have become "dead weight" – you can delete or rewrite them. The inactivity threshold is configurable in settings, defaulting to 30 days.

    Gmail "Important" AI override protection solves a particularly annoying Gmail behavior: Gmail's own AI sometimes removes the "Important" flag from emails that your filter would have explicitly marked as important. If the engine applied an `addLabel: IMPORTANT` action but the Gmail AI then removes it – MailSide re-reads the message and puts the flag back. Completely automatically.

    The three-layer SPAM protection ensures no filter can accidentally remove emails from the Spam folder: (1) Per-filter spam-guard: only allows spam operations if the filter explicitly has `removeLabelIds: SPAM`. (2) Sender-block override: emails from blocked senders are never unspammed. (3) Global SPAM protection toggle: when enabled, no filter can remove the SPAM label – this is the default state.

    🟢
    Stale Filter Detection – Live Status Badge

    Shown on every filter card: 🟢 active (matched within N days), 🔴 inactive (no match for X days), ⛔ never matched. Instantly see what became obsolete.

    Unique feature
    🤖
    Gmail AI "Important" Override Protection

    Gmail AI sometimes removes the "Important" flag from emails your filter marked as important. MailSide notices and puts it back – automatically, every single time.

    Protects against Gmail
    🛡️
    3-Layer SPAM Safety Net

    Per-filter spam-guard + blocked sender override + global SPAM protection toggle. All three layers protect independently – no email can accidentally leave Spam.

    👁️
    External Modification Detection

    If another app (Gmail client, script) modifies a message's labels against the engine's expectations, an `external-change` entry is recorded in the Audit Log – you'll know what happened

    Cleanup

    MailSide isn't just about filters. The Cleanup tab lets you overview and bulk-archive your inbox by sender. The follow-up tracker alerts you when outgoing emails haven't received replies. The periodic digest email sends a summary of app activity.

    The Cleanup tab scans your inbox and groups emails by sender – showing who sent the most and what the last subject was. With one click you can bulk-archive all emails from a given sender, using Gmail's efficient batchModify API (not one by one). Before that, a test run lets you check how many emails the operation affects.

    The follow-up tracker monitors the Sent folder: it queries sent emails and checks per thread whether the last message is still your sent email. If yes – no reply received. You can configure how many days before the system alerts (1–30 days, default 3 days). Especially useful when sending many business emails and you don't want to follow up with someone you already know hasn't replied.

    The daily/weekly email digest sends a summary email to your own Gmail account about app activity: total processed emails, top 10 matching filters with email counts, top senders. This helps you understand what automation is doing in the background – without having to open the add-on every day.

    🧹
    Bulk Inbox Cleanup (Cleanup Tab)

    Scans the inbox and groups emails by sender with count and last subject. Test run, then one-click batch archiving – using Gmail's batchModify API, not one by one.

    Follow-up Tracker – Unanswered Emails

    Monitors outgoing emails and alerts when no reply arrives within N days (1–30 days, default 3 days). You'll never forget to follow up – the app reminds.

    Unique feature
    📊
    Daily / Weekly Email Digest

    Automatic summary to your own Gmail: total processed emails, top 10 matching filters with counts, top senders – see exactly what the automation has been doing

    🛡️
    2-Generation Automatic Backup

    Automatic backup before every drag-and-drop reorder and bulk import. Restore UI shows saved filter count and timestamp – one button press restores everything.

    Audit

    You never have to guess where an email went. The Audit Trail keeps a detailed log of every run – with per-filter results, applied actions, and special flags. XML export/import ensures complete portability between accounts.

    In the Audit Trail view, you see in a stats grid the time of the last run, number of processed emails, number of matches, and any errors. In the log list, every entry shows the sender, subject, run mode (priority/native/external-change) and a summary (how many of how many filters matched). The expandable detail row shows per filter what matched, what didn't, and what actions the engine performed.

    The log also displays special flags: snoozeReturn (snoozed email returning), scheduledSend (scheduled send), noreply (no-reply sender), replyToMismatch (Reply-To and From mismatch). These are details Gmail's interface doesn't show at all, but can be useful for fine-tuning rules.

    XML export/import works in Gmail-compatible format: the exported file can be imported directly into Gmail settings too, and is portable to another Google account. This ensures the rules you write in MailSide are never locked into a single platform. Keyboard shortcuts (Ctrl+N new filter, Ctrl+F search focus, Ctrl+A select visible, Delete delete selected, Esc close modal) enable fast work.

    📋
    Complete Audit Trail – Expandable Detail Rows

    For every run: sender, subject, run mode, how many filters matched. Expandable detail row per filter: what matched, what didn't, applied actions. Special flags: no-reply detector, snooze return, Reply-To mismatch, external change.

    Unique feature
    📤
    XML Export / Import – Gmail-compatible

    Filters exportable to Gmail-compatible XML format – directly importable into Gmail settings and portable to another account. No platform lock-in.

    ⌨️
    Keyboard Shortcuts Across the Entire UI

    Ctrl+N (new filter), Ctrl+F (search), Ctrl+A (select visible), Delete (delete), Esc (close modal) – power users work fast without the mouse

    WCAG 2.1 AA · HU/EN · Dark / Light Mode

    Full accessibility: focus trap, aria-live, keyboard navigation. HU/EN runtime switch. Dark and light theme – automatically adapts to system settings.

    Get Started

    From installation to the first automatically handled email is three steps.

    1

    Install from Marketplace

    Find MailSide on the Google Workspace Marketplace and click "Install". No registration, no password, no credit card – Google OAuth handles authentication.

    2

    Rules in the Gmail Panel

    Open Gmail, click the MailSide icon in the right side panel. Create your first rule with the Query Builder – conditions, actions, priority. Check with dry-run what will execute.

    3

    Automatic Processing

    Enable App Control mode and the trigger runs automatically on every new email. Or click "Run Now" for manual execution – a detailed log shows the results.

    🔒 Privacy

    MailSide runs exclusively on Google's own infrastructure. BMSoft1024 does not receive, store or process any email content or personal data. There are no external servers on our side – all processing happens within the Google Apps Script platform.

    ☁️

    Google Apps Script Platform

    All add-on code and all email data runs exclusively on Google's infrastructure. No data leaves the Google ecosystem.

    🚫

    No Data Collection

    We collect no analytics, log no email content, store no personal data. We don't even have such servers.

    🔑

    Google OAuth Authentication

    The add-on authenticates via Google OAuth. Your password and credentials never reach us – this is technically impossible.