Optimising Mail.app for low bandwidth usage

Update: Turns out the reason Mail.app was downloading everything was due to to an malfunctioning plugin (JunkMatcher). Uninstalling this fixed it all, thankfully! If, like me, you occasionally have to use a low bandwidth connection such as GPRS, you’ll realise how painful checking e-mail can be with Apple’s Mail.app. You see, Mail.app’s default setting is to download everything including headers, bodies and attachments — spam and all — which results in an exceptional amount of bandwidth, especially if you’ve got a few IMAP e-mail accounts along with friends that haven’t learnt how to resize their digital photos or who continually forward you megabyte upon megabyte of joke circulars.Luckily, however, there is hope!A good few years ago every e-mail program worth its salt had the option of downloading e-mail “headers only”, basically the subject line, to, from, date and a few other pieces of vital information. This allowed you to scan the sender & subject then choose what to receive before committing to the lengthy procedure of pulling down a few hundred KB on your fancy shiny new 2400 baud modem. Now, thankfully, those times are mostly gone, but with the advent of data over mobile phones with limited network support (no 3G UMTS or HSDPA high speed luxury, just plain old GPRS) the painful wait occasionally returns. Of course, I could go on about how you lucky you have it — try using e-mail over packet radio for a week and you’ll be grateful — but instead I’ll offer up some ways for Mac OS X’s Mail program users to make things “snappy”. Here’s what you need:

For POP accountsMail.app's POP Account advanced tab settings

  1. Go into Mail’s Preferences, then go to the Accounts tab.
  2. For each POP account you have, go to its Advanced tab and change the “Prompt me to skip messages over XX KB” value to something that’s acceptable for your connection, such as 50KB.
  3. Exit the Preferences window and save the modified account when prompted.This isn’t quite “headers only” but it’s good enough, you can adjust the value to suit depending on how much or little throughput you have, and in theory you could set it to 0KB and receive a prompt for every message. (Though I’ve not tried this.)

For IMAP accountsMail.app's IMAP Account advanced tab settings

  1. Go into Mail’s Preferences, then go to the Accounts tab.
  2. For each IMAP account you have, go to its Advanced tab and change “Keep copies of messages for offline viewing:” to either Only messages I’ve read or Don’t keep copies of any messages.
  3. It’ll give you a warning saying the following, “You will be unable to search the entire text of messages in this account, and junk mail in this account will not be detected. Are you sure you want to change to (whichever option you chose)?” Accept this, then exit the Preferences window, saving the account as you do so. Point 3 is worth paying some heed to, as you’ll only be downloading the e-mail headers with this setup Mail.app’s junk filter won’t work fully. Hopefully you’ve got some sort of server-side spam marking system set up — for example, if your mailserver has SpamAssassin running, these messages should still be correctly auto-classified as spam (SpamAssassin writes an extra header that indicates the mail’s spam status).Another handy tip is to use the Activity Window to see exactly what Mail.app gets up to: go to “Window, Activity Viewer” or use the Command+0 shortcut. For instance, should you accidentally start downloading an e-mail with a large attachment, this window should allow you to cancel it. Just click on the red stop sign next to the operation you’d like to abort.Now you should be all set for some low bandwidth action!

Posted on 31 March, 2007 by Stef in apple, mac, os x.

Leave a comment