The Internet. Simple.

Send Google Mail to Evernote

Evernote is a great system to organize your notes, and to remember everything. You often want to add email message to Evernote, for example to add it to a To-do list. Evernote makes this possible by providing an email address, to which you can forward other messages–they will then be added to your other notes. But you still have to tag them, and you may want to put them in a different notebook. This can also be done by appending notebook and tags to the subject line, but this takes time and you can easily make a typing mistaken.

The method described here makes it much faster and easier: simply drag tags and notebook to the message, that’s it. It is shown in this video, and you can click through to read how to make it work for you. The video is short, less than 40 seconds, but it should not take more time to forward the message and see the result.

How does it work?

Each Evernote account comes with a unique email address (like ‘myname.12345@m.evernote.com’) which can be used to add content via email. You can forward a message to this address to add it as a note to Evernote.

Here, the messages are forwarded by a Google Apps script. This script will run at regular intervals, and read the Gmail labels Evernote and its sublabels. It will forward the last message of each thread that has one of these labels to the Evernote email address.

If a sublabel of the Evernote label was attached, it is appended to the subject line with an ‘@’ prefix. Similarly, other labels are appended to the subject line with a ‘#’ prefix. Evernote will read this subject line and place the note in the indicated notebook and attach the given tags.

In a Google Docs spreadsheet, a log is kept to record all forwarded email messages.

After forwarding, the Evernote label or sublabel is removed, so the messages will not be forwarded again.

Set up the script

To make this work, you start by creating the same labels/sublabels in GMail that you also use as tags in Evernote. You don’t have to create all tags, only the tags that you plan to use from Gmail. Also create a label ‘Evernote’, and create sublabels for all notebooks that you plan use.

Now configure the script and have it run regularly:

Go to gm2en.com, You may have to authenticate and grant access to the script to run.

Check or fill in your Evernote mail address

Select the Evernote label–any message with this label, or a sublabel, will be forwarded to Evernote.

Optionally, change the interval with which your mail is checked. Keep in mind that there are quotas for accessing email and use of computer time, so don’t set it too often. If you receive error messages, you may need to check less frequently, and increase the time interval.

Press Submit

That’s it. Now, if you assign the Evernote label to any message, within 15 minutes (depending on the time you set in step 4), the message is added to Evernote, and the label removed from the message. You may have to refresh Evernote to see the new note.

Advanced options

Click on Show advanced options, to view and change these options.

Adding a default tag

If you have several Google accounts, you may want to distinguish mail forwarded from each account. This can be accomplished using a default tag, e.g. home for your private account, and work for work account. This way, you can keep them separate in Evernote.

The log sheet

When an email message is forwarded to Evernote, the script will write a line in this spreadsheet, containing the date, source (including the email address) and message (the adapted subject line). This will be helpful to track errors. The first time, this sheet is created automatically and the ID filled in here.

If you have several Google accounts, you can use the same log sheet for all accounts:

Share the log sheet of one account with all other accounts,

Copy the Log sheet ID from this account to all other accounts.

Multiple sign-in, number of accounts

If you use multiple sign-in, the link in the note back to the email may not work; select the number of multiple sign-in accounts that you use, so it will give alternative links that will work. See this post for a more extensive explanation.

If you set this value to 0, the link to the message in Gmail will not be shown.

Header fields

Email header fields are added to Evernote. In the note, you can see who send the email, to whom, and when. Other fields are also possible, by changing this line. This is a comma-separated list of the fields that will be shown.

By default the value is ’From, To, Cc, Date’. Fields are only shown if they have content, so if there are no Cc-addresses, this header field will not be shown. Other fields that you can include are: Bcc, ReplyTo, and Subject.

If you don’t want any header fields, set the value to an empty string, ”.

Header CSS

You can configure the CSS style for the header DIV, containing the header fields and the link(s). By default, it is set to ‘border-bottom:1px solid #ccc;padding-bottom:1em;margin-bottom:1em;‘ showing a light-grey line between the header and the message. You can change this value here.

Tag label

By default, when no label is specified here, all labels except the notebook (sub)labels will be sent as tags to Evernote. If you specify a label here, only this label and its sublabels will be sent as tags

Sent label

If a label is specified here, it will be assigned after a message is sent to Evernote. It must be different than the notebook label, but may be a sublabel of it.

Manual configuration

Go to Resources – Current script’s triggers, and edit the trigger, or remove it to stop the script from forwarding messages to Evernote

All other settings are stored as so-called User properties. To access the User properties, open the script at gm2en.com/script. then go to File – Project properties, and click on the User properties tab.

Notes

Labels in Gmail are assigned to threads, not to individual messages. This script will take the last message of a thread and forward only that message.

The Evernote label, or any of the notebook sublabels actually triggers the forwarding. After forwarding, these labels are removed from the thread, to avoid forwarding multiple times. If you assign multiple notebook labels, the message will be forwarded multilple times and placed in each notebook once.

If you want to add a remark to an email message before forwarding, you can forward the message to yourself, and add the text, before adding the labels.

It is safest to assign the tag labels first, and the notebook label last; Otherwise, it might happen that the script runs just after you added a notebook label, and does not copy the tag labels that you might insert later.

Using Gmail filters, you can automatically assign labels to incoming mail. In combination with this script, you can forward message from certain senders or with a given subject line directly to a selected notebook in Evernote, with the appropriate tags.

If you encounter any problems in getting the script to work, or have suggestions on how it can be used or improved, please add a comment!

It is possible to add a reminder by adding a !(date) (e.g., !1week or !2014/11/01) to the subject line, so in principle the script could be adapted to do this. But is it useful in practice? You would have to create a label for every date that you want to set a reminder for. Or use only relative times, such as 1week, 1month, etc.
How would you use it?

I would love to be able to add in relative reminder times such as 6weeks. I love to file my refund emails from Amazon, but I like to check in on them 5-6 later to ensure I receive the refund that I deserve.

Hi Harry, This is EXACTLY what I have been looking for. I have tried IFTTT, other scripts, etc. And none have the potential like this, at least for my workflow. Although I can not get it to work with consistency. I assume it has to do with my Evernote notebook and GMail label structure. Can we chat over email so I can better describe how I have things set up and see if I can get it working? I would like the ability for Emails to go to multiple evernote notebooks and then tagging. Also incorporate gmail filters to help automate some of it. Please let me know your email and if you would be open to this. Thank you

As i read above I have triedd ifttt but I would like the attachments to follow as well. My challenge is that I have all my projects that I would like to use this script on as a sublabel under my main work label. I can see that I can apply the script to the main label but not any sub labels.

AM i correct in this? Is there a way to make it work with the label/sublable scenario?

That depends on how you have organized your Evernote tags and notebooks. I assume that labels in GMail have corresponding tags and notebooks already.

You have projects as label under the main work label. If the projects have their own notebook in Evernote, make sure the main work label is set as the Evernote label. If the projects have their own tag in Evernote, it does not matter whether they are labels or sublabels, as long as they are not under the Evernote label, and another label is assigned to set the notebook in Evernote.