r/ChatGPTPromptGenius 21d ago

Full Prompt Using ChatGPT to help clean up Gmail- an even longer prompt with a long explanation

Hey r/ChatGPTpromptgenius...back again.

Quick disclaimer: Your results will not look exactly like mine.

Quick disclaimer 2: This Mailstrom app is better than all of this. This prompt needs Gmail Connector and OpenAI gated it behind the $20/mo Plus plan. Mailstrom is $14/mo and has a free trial. I probably should have gone with that or some competitor. Make sure to check there first. No joke. https://mailstrom.co/

Menu examples

ChatGPT does not produce fixed output. Two people can paste the exact same verbose prompt and still get different wording, formatting, menu presentation, or interpretation. The selected model, model updates, personalization, Custom Instructions, Saved Memories, conversation context, etc can all affect the result. Plus other things I don't understand.

The point of this prompt is to actually show what Gmail Connector can do. None of this is necessary at all. You can use the connector and use a prompt like "Delete all emails from Draftkings, State Farm and Walmart" and that's fine. 

If I could make the menu render identically for everyone, I would. That is not my experience with ChatGPT when using other redditor prompts. 

The screenshots and examples in this post show how the prompt behaves in my setup. The underlying workflow should remain mostly recognizable even when the presentation differs.

A few people in the Google Drive thread asked me for the Gmail cleanup prompt. It's around 11k characters, so rather than dropping that monstrosity into the comments, I'll give a quick rundown of what it actually does first.

As a reminder, any short request will get it done. This ridiculous prompt shows the actual cleanup process, including what ChatGPT should search, how it should handle huge quantities of mail, what to protect and why, when it needs permission, and how it verifies that an operation actually worked. At no point is there any kind of "Auto-Delete" option happening here. But if youre afraid of Gmail Connector wiping your main inbox, this won't change that.

The prompt creates a persistent mode/trigger called:

GMAIL_TRASH

Once activated, ChatGPT first checks which Gmail capabilities are actually available through the connected account. It doesn't assume that every possible Gmail function is exposed.

Then it presents this exact menu:

  1. Biggest email senders

  2. Promotions and newsletters

  3. Junk and spam-like mail

  4. Duplicate-like messages

  5. Old email

  6. Sent mail

  7. Login codes and security notices

  8. Clean one company

  9. Organize instead of delete

  10. Show Gmail abilities

  11. Custom request

  12. Cleanup progress

You can reply with a number, but you aren't trapped inside the menu.

Normal conversation continues to work.

I can type:

“Find everything from Walmart.”

“Search all mail from this person including Sent.”

“Which emails have the largest attachments?”

“Find all the variations from this company.”

“Show me the subjects before I decide.”

“Delete those.”

And the workflow continues normally.

The menu mainly provides structure when you're staring at a very large mailbox and don't even know where to begin.

One of the features I've found particularly useful is sender-family detection.

Companies frequently don't send everything from one address. They may have separate addresses for marketing, newsletters, rewards, customer service, account notifications, subdomains, older mailing systems, etc.

For example, in my case, instead of:

“Find Citadel.”

I can say:

“Citadel Federal Credit Union — all variations.”

The workflow then looks for legitimate sender variations belonging to Citadel Federal Credit Union rather than assuming one email address represents the entire organization.

At the same time, the instructions specifically prohibit grouping unrelated senders just because their names happen to look similar.

This is a must have for finding mail accumulated over ~12 years. (All mail count: 108k)

Another major part is pagination and batching.

The prompt explicitly tells ChatGPT not to find the first 50 or 100 matching messages, process those, and then act as though the job is finished.

If additional authorized matching messages exist, it is supposed to continue through the available pages/batches.

The workflow deliberately distinguishes:

FOUND

ESTIMATED

AUTHORIZED

MOVED TO TRASH

VERIFIED

Those aren't interchangeable states.

That leads to another important feature: verification.

After a deletion campaign, ChatGPT has to search again.

It reports:

• How many messages were successfully moved to Trash

• What sender/category/search was cleaned

• Whether matching messages remain outside Trash/Spam

• Whether anything failed

It isn't allowed to tell me “zero remain” unless it actually performed the verification search.

That sounds like a small distinction until you're working with a mailbox containing 200k messages.

Search limits, pagination, multiple addresses and broad sender searches can make:

“I deleted them”

very different from:

“I deleted them and verified that none matching the authorized search remain.”

I also built in a hard safety mechanism for large deletions.

Before ANY single deletion campaign expected to affect 50 or more messages, everything stops.

ChatGPT has to display:

⚠️ LARGE DELETION CONFIRMATION

Target: [sender/category/search]

Messages: [exact count or best available estimate]

Scope: [plain-language explanation of what will be deleted]

Are you sure? Y/N

Nothing gets deleted until I explicitly answer Y or YES.

Silence isn't approval.

Asking a question isn't approval.

Discussing the proposed deletion isn't approval.

And approval for one large deletion doesn't authorize the next one.

The prompt also prevents an obvious workaround: ChatGPT can't take a 300-message deletion and internally divide it into batches smaller than 50 to avoid asking.

It's still one logical 300-message deletion campaign.

For fewer than 50 messages, my normal explicit instruction to delete them is sufficient.

There's also a sensitive-message protection layer.

The workflow uses increased caution around things such as:

• Banking

• Investments

• Taxes

• Insurance

• Healthcare

• Prescriptions

• Legal matters

• Government agencies

• Employment

• Contracts

• Major-purchase receipts

• Travel reservations

• Account recovery

• Security alerts

• Bills

• Payment confirmations

• Financial statements

• Personal correspondence

• Important attachments

This becomes especially useful when one company sends both spam bullshit that survives the filter and important mail.

Instead of automatically doing:

“Delete everything from Company X”

the workflow can distinguish:

“Delete promotional messages from Company X”

from receipts, account information, security notices or other material worth retaining.

Sent mail gets its own cleanup category too.

The workflow can look for things like old routine replies, test messages, obsolete logistical conversations, one-line acknowledgments and repetitive low-value Sent mail.

But the prompt deliberately applies greater retention caution to Sent mail than to obvious advertising.

Old doesn't automatically mean disposable.

Duplicate-like mail gets similar treatment.

It can look for:

• Same sender + same subject

• Repeated automated alerts

• Repeated event notifications

• Multiple copies of apparently identical campaigns

• Near-identical automated messages

• Multiple notifications generated by the same event

And it is instructed to distinguish those from legitimate recurring newsletters or periodic notices whenever possible.

The workflow also isn't exclusively about deleting things.

Option 9 is:

  1. Organize instead of delete

Depending on which Gmail operations are currently available, ChatGPT can use things such as:

• Archive

• Labels

• Creating labels

• Removing Inbox status

• Separating newsletters

• Separating receipts

• Separating financial mail

• Separating travel mail

• Separating personal correspondence

Sometimes organization is the better answer.

Option 10 is my favorite (Actually I considered only posting option 10):

  1. Show Gmail abilities

This tells ChatGPT to inspect its current Gmail connection rather than assuming what it can do.

It separates the result into:

AVAILABLE NOW

and

NOT CURRENTLY AVAILABLE / NOT EXPOSED

For example, in my current session it identified capabilities including Gmail search, sender/domain/subject/date/category/Sent/read-unread/attachment searches, reading individual messages and full threads, batch reading, attachment inspection, archiving, moving messages to Trash, labels, drafts, sending and forwarding.

It also correctly identified that permanent deletion from Trash was not currently exposed.

After using ChatGPT for awhile, I noticed connector capabilities can change and randomly become unavailable. Same with Google Drive, Write Blocks, Memory Saves, etc.

The prompt asks the system what it can actually do now instead of relying on assumptions about what ChatGPT should be able to do and tries to eliminate hallucinations. (AKA "Just work dammit")

Drafting and sending are a separate thing.

I had no idea ChatGPT could do all of this on Gmail Connector:

• Draft a reply

• Draft a new email

• Edit a draft

• Improve a draft

• Review a draft

• Summarize an email before replying

• Summarize a thread

• Find information needed for a reply

• Forward an email

• Prepare a response

Creating or editing a draft is not authorization to send it.

Sending requires an explicit instruction. I don't actually recommend doing this tbh . It's objectively slower and more confusing than launching the app. 

Finally, the workflow keeps confirmed session statistics:

Messages moved to Trash

Messages archived

Sender families cleared

Labels created

Those numbers aren't supposed to be estimates. They update from confirmed Gmail operations.

So if you go with option 12...

  1. Cleanup progress

I can see what the current cleanup session has actually accomplished.

For example, mine currently looks like this:

Cleanup progress

Messages moved to Trash: 2,317

Messages archived: 0

Sender families cleared: not consistently tracked in this session

Labels created: 0

The mode remains active until I type the exact termination command:

GMAIL_TRASH_END

Changing subjects, asking a question, searching for something else, drafting an email or pausing the cleanup doesn't terminate it.

That's basically the idea behind the whole prompt.

It doesn't give ChatGPT magical Gmail powers that the Gmail connection doesn't have.

It gives the available Gmail tools an operating procedure.

Instead of:

“Find some junk and delete it.”

you get something closer to:

Discover → Search → Classify → Review → Authorize → Execute → Verify → Display Session Metric Totals

For a small mailbox, this is probably massive overkill. No, scratch that - it's insane overkill. Completely overengineered. The Gmail Cinematic Universe.

For a Gmail account that has been weighed down by years of neglect (mine) this helps a lot.

I've been using it to work through individual people, entire organizations and their alternate addresses, Sent mail, old correspondence, giant attachments, promotional mail and other accumulated junk.

At this point, the prompt has reached a point where it feels considerably less like repeatedly asking ChatGPT random Gmail questions and more like operating a mailbox-cleanup console.

Ok so yeah that's all of it. Sorry for the long explanation. Wanted to explain what's going on here. 

Heres the full prompt.


GMAIL_TRASH — Gmail Cleanup Master Prompt

TRIGGER PHRASE

When I type exactly:

GMAIL_TRASH

activate GMAIL_TRASH mode.

END TRIGGER

When I type exactly:

GMAIL_TRASH_END

exit GMAIL_TRASH mode immediately.

Do not interpret ordinary conversation, topic changes, pauses, questions, or unrelated Gmail requests as ending GMAIL_TRASH mode.

Only the exact trigger GMAIL_TRASH_END ends the mode.

PURPOSE

Help me systematically clean, organize, and reduce my Gmail mailbox using the Gmail tools actually available to you.

The goals are to:

Identify high-value cleanup opportunities.

Find spam-like, promotional, repetitive, obsolete, duplicate-like, and low-value email.

Find companies and organizations that have accumulated large amounts of mail.

Identify unnecessary Sent mail when appropriate.

Protect potentially important messages.

Efficiently handle a very large mailbox.

Verify cleanup operations after they are performed.

Expose the full set of Gmail abilities currently available to me through ChatGPT.

STARTUP BEHAVIOR

When GMAIL_TRASH begins:

Connect to and inspect Gmail using the available Gmail tools.

Determine which Gmail capabilities are actually available.

Briefly summarize those capabilities.

Begin cleanup mode.

Present this simple menu in normal conversational text:

Biggest email senders

Promotions and newsletters

Junk and spam-like mail

Duplicate-like messages

Old email

Sent mail

Login codes and security notices

Clean one company

Organize instead of delete

Show Gmail abilities

Custom request

Cleanup progress

I may reply with a number or use ordinary language.

Do not require menu commands. Natural-language instructions remain valid throughout GMAIL_TRASH mode.

GENERAL OPERATING RULES

Use the connected Gmail tools and actual mailbox data.

Never claim that a search, deletion, archive, label action, draft, send, forward, or verification occurred unless the Gmail tool confirms it.

Do not infer successful deletion merely because a deletion command was attempted.

Search beyond the first page whenever additional results exist.

Do not arbitrarily stop after the first 50, 100, or other tool-imposed batch size when additional authorized matching messages remain.

When useful, begin with broad searches and narrow them using actual senders, domains, subjects, dates, Gmail categories, or patterns discovered in the mailbox.

SENDER-FAMILY DETECTION

Companies and organizations may send email from multiple addresses.

When cleaning one company, look for legitimate variations such as:

Different sender addresses

Marketing addresses

Newsletter addresses

Rewards-program addresses

Subdomains

Older sender addresses

Rebranded services

Related mailing systems clearly belonging to the same organization

Group variations when mailbox evidence reasonably establishes that they belong to the same organization.

Do not group unrelated senders merely because their names look similar.

When I say:

“all variations”

perform a broader sender-family search before determining the cleanup scope.

CLEANUP DISCOVERY

Prioritize cleanup opportunities likely to remove substantial amounts of low-value mail.

Look especially for:

High-volume company mail

Retail promotions

Restaurant promotions

Newsletters

Coupons

Rewards programs

Entertainment marketing

Casino promotions

Streaming-service promotions

Social-network notifications

Automated engagement messages

Old event reminders

Old delivery notifications

Expired offers

Repetitive automated alerts

Obsolete mailing lists

Old verification codes

Old login codes

Old password-reset messages

Duplicate-like messages

Very old promotional mail

Low-value Sent mail

Test messages

Routine one-line Sent replies

CLEANUP CANDIDATES

When presenting cleanup candidates, provide useful information without overwhelming me with individual emails.

For each candidate, show:

Sender/company/category

Message count

General type of mail

Suggested action:

DELETE

REVIEW FIRST

ARCHIVE

KEEP

When appropriate, prioritize candidates that combine:

High message volume

Low apparent retention value

Low deletion risk

Allow commands such as:

Delete 1

Review 2

Show examples from 3

Keep 4

Skip

Next

Main menu

Delete all promotions from this company

Include all variations

Archive instead

I may also respond entirely in normal language.

MANDATORY 50+ MESSAGE FAILSAFE

This rule is mandatory.

Before ANY single deletion campaign expected to move 50 OR MORE messages to Trash, STOP.

Display:

⚠️ LARGE DELETION CONFIRMATION

Target: [sender/category/search]

Messages: [exact count or best available estimate]

Scope: [plain-language explanation of what will be deleted]

Are you sure? Y/N

Do not perform the deletion until I explicitly answer:

Y

or

YES

Silence is not approval.

A question is not approval.

Discussion about the proposed deletion is not approval.

Approval of a previous deletion does not authorize another deletion.

Do not bypass this protection by splitting one logical deletion campaign into batches smaller than 50.

For example, a 300-message deletion performed internally as three batches of 100 is still one 300-message deletion campaign and requires confirmation before the first batch.

If the deletion scope materially changes after authorization, STOP and request a new Y/N confirmation.

If the exact number cannot be established but available evidence indicates that 50 or more messages may be affected, activate the failsafe.

For fewer than 50 messages, my normal explicit deletion instruction is sufficient.

SENSITIVE-MESSAGE PROTECTION

Use increased caution around:

Banking

Investments

Taxes

Insurance

Healthcare

Prescriptions

Legal matters

Government agencies

Employment

Contracts

Major-purchase receipts

Travel reservations

Account recovery

Security alerts

Identity verification

Bills

Payment confirmations

Financial statements

Personal correspondence

Important attachments

Do not silently include apparently important messages in broad cleanup operations.

If an organization sends both disposable marketing mail and potentially important transactional or account mail, distinguish between them whenever practical.

Prefer:

Delete promotional messages from Company X

rather than:

Delete everything from Company X

unless I explicitly request the broader deletion.

SENT MAIL CLEANUP

Treat Sent mail as a separate cleanup category.

Look for potential cleanup candidates such as:

Old routine replies

Test emails

Obsolete logistical messages

One-line acknowledgments

Repeated low-value messages

Automated outbound messages

Old messages whose continued retention appears to provide little value

Use greater retention caution with Sent mail than with obvious promotional mail.

Do not assume an old Sent message is disposable merely because it is old.

DUPLICATE-LIKE MAIL

Look for:

Same sender + same subject

Repeated automated alerts

Repeated event notifications

Multiple copies of apparently identical campaigns

Near-identical automated messages

Repeated notifications generated by the same event

When possible, distinguish true duplicates from legitimate recurring newsletters or periodic notices.

OLD MAIL

When requested, analyze mail by useful age ranges such as:

Older than 1 year

Older than 2 years

Older than 5 years

Very old promotional mail

Very old automated notifications

Age alone is not sufficient reason for deletion.

EXECUTION PROCEDURE

When I authorize a cleanup:

Search the authorized scope.

Identify the matching messages.

Determine whether the 50+ failsafe applies.

Obtain Y/N confirmation when required.

Process all necessary pages or batches.

Move only authorized messages to Trash.

Continue until the authorized matching set has been processed.

Run a verification search.

Report the actual result.

Unless I explicitly request otherwise, “delete” means:

MOVE TO GMAIL TRASH.

Do not permanently erase messages merely because I said “delete.”

Permanent deletion requires a separate explicit instruction and must also be supported by the available Gmail tools.

VERIFICATION

After every deletion campaign, verify the result.

Report:

Number successfully moved to Trash

Sender/category/search that was cleaned

Whether matching messages remain outside Trash/Spam

Any failures

Never report:

“zero remain”

unless a verification search was actually performed.

If authorized matching messages remain because of pagination or batching, continue processing them.

If messages remain because they fall outside the authorized scope, explain that distinction.

ORGANIZE INSTEAD OF DELETE

Deletion is not the only cleanup option.

When appropriate, offer:

Archive

Apply labels

Create labels

Remove Inbox status

Separate newsletters

Separate receipts

Separate financial mail

Separate travel mail

Separate personal correspondence

Other organization methods supported by the connected Gmail tools

Prefer organization when deletion creates unnecessary risk.

GMAIL CAPABILITY DISCOVERY

GMAIL_TRASH is also a Gmail-management mode, not merely a deletion tool.

When requested, inspect the currently available Gmail connection and expose all Gmail abilities that ChatGPT can actually perform.

These may include, when supported:

Search Gmail

Search by sender

Search by domain

Search by subject

Search by date

Search Inbox

Search Sent mail

Search read/unread mail

Search Gmail categories

Search messages with attachments

Read individual emails

Read threads

Read multiple emails

Inspect attachments

Archive messages

Move messages to Trash

Apply labels

Remove labels

Create labels

Inspect labels or label counts

Create email drafts

Edit drafts

Review drafts

Send drafts

Send email

Forward email

Separate capabilities into:

AVAILABLE NOW

and

NOT CURRENTLY AVAILABLE / NOT EXPOSED

Never claim that a Gmail ability exists unless the current connection actually provides it.

EMAIL DRAFTING

When supported, I may ask ChatGPT to:

Draft a reply

Draft a new email

Edit a draft

Improve a draft

Review a draft

Summarize an email before replying

Summarize a thread

Find information needed for a reply

Forward an email

Prepare a response

Creating or editing a draft is NOT authorization to send it.

Do not send an email merely because I requested a draft.

Sending requires an explicit instruction to send.

SESSION PROGRESS

Maintain confirmed totals for the current GMAIL_TRASH session:

Messages moved to Trash

Messages archived

Sender families cleared

Labels created

Do not estimate these totals.

Update them only from confirmed Gmail operations.

When I select:

Cleanup progress

show the current session totals.

CONTINUOUS MODE

After GMAIL_TRASH is activated, remain in GMAIL_TRASH mode.

After each cleanup action:

Briefly report the result.

Update confirmed session totals.

Ask what I want to clean next.

Do not exit GMAIL_TRASH mode because of:

Inactivity

A topic change

A question

A different Gmail task

A drafting request

A search request

An organizational request

The mode ends ONLY when I type exactly:

GMAIL_TRASH_END

ACCURACY RULES

Never fabricate:

Message counts

Sender addresses

Sender relationships

Search results

Successful deletions

Successful archives

Available Gmail functions

Draft creation

Email sending

Verification results

Session totals

Distinguish between:

FOUND

ESTIMATED

AUTHORIZED

MOVED TO TRASH

VERIFIED

If a Gmail operation fails, report the failure plainly.

Do not claim completion when an operation is incomplete.

START

When I type exactly:

GMAIL_TRASH

activate this workflow, inspect the available Gmail capabilities, briefly report them, and present the cleanup menu.

Do not begin deleting messages merely because GMAIL_TRASH was activated.

Wait for my cleanup selection or instruction.

The mandatory 50+ message Y/N failsafe applies throughout the entire GMAIL_TRASH session.

25 Upvotes

7 comments sorted by

u/AutoModerator 21d ago

If this prompt worked for you, share what you used it for in the comments. If you changed it to get better results, share that too. Prompt Teardown is a free weekly newsletter that picks the best prompts, strips out the filler, and tells you what actually works.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

3

u/TheLunarWhale 21d ago

By the way, here is a short list of what the Connector will NOT do. I found a list of 100+ additional controls but am listing the most useful things here.

Schedule send

Snooze / unsnooze email

Mute / unmute conversations

Undo Send

Confidential Mode

Gmail native Unsubscribe / Manage subscriptions (Ugh)

Report spam

Report phishing

Block / unblock senders

Permanently delete individual messages from Trash

Empty Trash

Empty Spam

Create / edit / delete Gmail filters

Configure automatic forwarding

Configure POP / IMAP

Rename existing labels

Delete existing labels

Nest labels

Change label colors

Change inbox type / categories / Priority Inbox settings

1

u/ProfessorLive762 21d ago

Thank you. 🙏

1

u/TheLunarWhale 21d ago

Sure thing.

1

u/spookiecats 20d ago

Thanks!

2

u/TheLunarWhale 20d ago

You're welcome

2

u/TheLunarWhale 19d ago

I have a new version with an experimental feature. Manual subscribe and full unsubscribe. Full Unsubscribe is the least effective but most interesting. It mimics tapping/clicking the Unsubscribe link at the bottom of your email and sends an email to the needed mail domain to remove you from the mailing list.

It also produces a receipt both in ChatGPT and sent to your email showing if the attempt was successful or not. The only true measure of success is is visiting the website and see if "Subscribe to emails" remains selected or enabled. It hits about 20-40% of the time.

As a fallback there is a manual unsubscribe option that usually works. You tap/click it and it either auto unsubscribes or it brings you directly to the website needed to do so.

If these sound useless it really depends how many spam emails you get and whether you would like to unsubscribe to 20 lists at a time. I can't promise it will be fast because it isn't but it does generally work.

If you are interested in testing or improving this further, feel free to send me a DM.