Mark Archived Gmail Messages as Read Automatically

M
Published in: Gmail - Google Apps Script

You can use Google Script to mark all archived unread emails messages as read automatically. The script runs every hour and looks for email messages in your Gmail mailbox that are unread and are not in your inbox. If there no Gmail label assigned to a thread, it is marked as Read.

To install this Gmail script, go to script.google.com and copy-paste this snippet. Next choose Run -> createTrigger to set the time-driven trigger that runs every hour automatically.

function markGmailAsRead() {
  // Find Gmail Messages that are unread but not in inbox
  var threads = GmailApp.search('is:unread -in:inbox', 0, 50);
  for (var i=0; i<threads.length; i++) {
    // Does the message thread have any user-assigned labels
    var labels = threads[i].getLabels();
    if (labels.length == 0) {
      // Mark the entire thread as read
      threads[i].markRead();
    }
  }
}

// Create a trigger that execute every hour and processes 50 messages in a batch
function createTrigger() {
  ScriptApp.newTrigger("markGmailAsRead")
  .timeBased().everyHours(1).create();
}
Published in: Gmail - Google Apps Script

Looking for something? Find here!

Meet the Author

Web Geek, Tech Columnist
A
Amit Agarwal

Amit Agarwal is a Google Developer Expert in GSuite and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India. Read more on Lifehacker and YourStory

Get in touch