Revealed: The Morning Routines of Highly Successful CEOs, Entrepreneurs and Celebrities!

Get it Now

How to Automatically Transfer Evernote Notes to Omnifocus

By | 112 comments

Evernote to Omnifocus

Let’s talk about two popular programs: Evernote and Omnifocus. Omnifocus excels at managing tasks but it is weak in storing lots of information. Evernote is weak as a task manager but excels at storing lots of information. If you use them together, they should solve all your productivity problems… right? Unfortunately, it isn’t that easy. You have two separate systems that do not automatically work together. It is up to you to figure out how to do that and this is usually causes problems for some.

For example, if you store something in Evernote, how do you make sure you will revisit that information at some point in time? The obvious answer would be during your weekly Omnifocus review. However, that means you need to create a task in Omnifocus to remind yourself to review that note in Evernote. This is where the hiccup is – that extra step that people tend to forget. Fortunately, we have a script that will automatically transfer notes to your Omnifocus inbox. You will never ever forget information in Evernote again.

Quick Summary

  • Script that transfers Evernote notes to your Omnifocus inbox.
  • Use Lingon to run the script on regular intervals.
  • Tag any note with “review” and it will be transferred to Omnifocus.

NOTE: The fastest way to learn Evernote is by checking Evernote Essentials. Written by our friend Brett Kelly (who works at Evernote) he will show you step-by-step how to use Evernote the right way with plenty of examples.

NOTE: The script seems to work sometimes due to Mavericks/Yosemite update. It’s best to use this script now that’s updated here.

We have written before how to use Omnifocus and Evernote together. You can use Evernote’s Note Links to link from back Omnifocus tasks to a specific note in Evernote. This is already a great step forward and if you want to use the two programs together you need to know this feature. However, like I said before, that extra step of manually creating a task and copying the note link to Omnifocus is what a lot of people forget to do.

I’ve created a script that will create a new task in your Omnifocus inbox each time you want to review something you just stored in Evernote. I have to give credit to Nick Wild of 360 Degrees Media for making the script. He left a comment behind on the Omnifocus and Evernote post that does this. All I’ve done was I tweaked it a little bit but all credit goes to Nick.

Evernote To Omnifocus Script

Here is what this script does:

  • It checks your Evernote and it will look for a tag called “review”.
  • Each time it finds a note with that tag, it will automatically create a task in your Omnifocus inbox.
  • Name of the task is “Review: NAME_OF_NOTE” (NAME_OF_NOTE is the name of the note in Evernote) and adds a link back to the note in Evernote in the notes field of the task.
  • Removes the “review” tag from your note in Evernote.

That’s it. This means that each time you want to review a note from Evernote, just tag it with “review” and the script will automatically create a task in your Omnifocus inbox for review that contains a link to that specific note.


Here are the requirements and steps:

  1. Download the Evernote2Omnifocus script.
  2. Convert the script into an application.
  3. Install Lingon v3 (Lion and up) or Lingon v2 (Snow Leopard and older).
  4. Use Lingon to launch the script for scheduled intervals.

I’ll cover each step in detail. Please read the instructions carefully to make it work. It’s not difficult but you do need to pay attention to details.

1. Download the script

Download the Evernote2Omnifocus script.

NOTE: The script seems to work sometimes due to Mavericks/Yosemite update. It’s best to use this script now that’s updated here.

Once you have downloaded the script, extract it and put the script in a folder. You should see a file called Evernote2Omnifocus.scpt (SCPT indicates it’s an Applescript).

I suggest you create a new folder “Applescripts” in your home/username folder. For example, in my case it is /Users/thanh/Applescripts/.

2. Convert the script into an application.

Double click on the script and by default you should have Applescript Editor open the file. You should see something like this.

applescript editor

This is what you will see when you open the script and Applescript Editor launches.

Now you have to turn this script into an application. It’s very simple.

  1. File > Export.
  2. Go to your Applescript folder you created earlier (in my case /users/thanh/Applescripts).
  3. File format: Application.
  4. Save.

Here’s a screenshot that shows how to save the file as an application.

Applescript save as application

Save the script as an application that can be launched within Applescript Editor. Verify you have the same settings.

You should now have a file called (the extension .app might be hidden in your Finder but that’s okay).

3. Install Lingon

If you open the app you just created, it will run and close right away. It does work. Try it out: tag a note in Evernote with “review”, run the app and you should see a new task in your Omnifocus inbox.

The problem is, you want to have this script run on a regular basis – not just once. For this, you need Lingon v3 ($2.99) by Peter Borg – this is the program that will call the script every 30 minutes (or whatever you set the interval to). If you use Snow Leopard or older, you need Lingon v2. Unless you know how to work with Apple’s launchd program that involves editing XML files and editing files for launching programs on scheduled intervals, I highly suggest you get Lingon. It’s much easier to use and well worth the price.

4. Use Lingon to launch the script for scheduled intervals

Launch Lingon and you should see something like this.

lingon startup screen

Lingon startup screen.

Click on the plus icon for a new job on the top left corner.

You will get a screen where it will ask you to save a file in LaunchAgents folder. Type in “Evernote2Omnifocus” and the program will automatically create a file called Evernote2Omnifocus.plist.

What happens here is that the Evernote2Omnifocus.plist will store all the instructions for launchd (the program that comes with OS X) to run the app on startup and on fixed intervals.

Now you will be asked to fill in some info and instructions.

  • Name: Evernote2Omnifocus
  • What: Click on the Choose button and select the Evernote2Omnifocus app you created in step two.
  • Tick the box Every and set the interval to 1 hour (or change it to your liking).
  • Click on Save & Load.

Here’s how that looks like:

lingon settings

The settings for your application. Choose your own interval but I have mine set for every hour.

That’s it. Now the script will run on a set interval and transfer any notes from Evernote to your Omnifocus inbox for review. Just remember to tag your note with “review” if you want to have it stored in your Omnifocus inbox.

Empty your Omnifocus inbox on a regular basis and you will never forget any Evernote note again!

For any questions, bugs, comments and more – leave a comment below.

Update: As Bryant in the comments has noted, if the script’s launch interval is shorter than Evernote’s sync interval, you run the risk of the task not getting linked to the Evernote entry. Evernote doesn’t create a link until it is synced.

OmniFocus Premium Posts

Discover the 1 Lifehack of Highly Successful People

This one lifehack led to the biggest breakthrough of my career. People like Steve Jobs and Oprah have used it to catapult their success, and now you can too.


Posted by ikomrad  | June 12, 2016 at 4:15PM | Reply

Is there a platform agnostic method? I work from OS X and IOS, so I cannot always run scripts.

Posted by Trent  | January 19, 2015 at 5:30AM | Reply

Is there a way modify the script to set a specific project and context to be attached to the Omnifocus task automatically?

Posted by Simon Spalinger  | January 5, 2015 at 4:47PM | Reply

Hey Frank
I tested your version of the skript and it works beautiful. The only thing is, it creates a lot of other “review” tags like “review 1,review 2, review 3,” and so on in evernote. any sugestions?

Posted by Todd  | January 4, 2015 at 8:15PM | Reply

In response to my earlier post – I made a test run of the script after making that change, but this time I tried using an actual mail item from Outlook, and the script seems to be working now for some reason..

Posted by Todd  | January 4, 2015 at 1:34PM | Reply

Hi, Thanh
Yosemite seems to have broken this script?
Error: Evernote (300201) got an error: AppleEvent timed out.
Oops. Couldn’t find Evernote! Try changing paths.

Using finder to find the path and changing to :
did not help…

Any suggestions are appreciated!

Posted by Ian  | October 28, 2014 at 3:24AM | Reply

Hey! I see my comment above from months ago when I first contemplated using this script. I have been using it for some time now and it works great!

I use it in connection with another script that sends all my email from Gmail into OmniFocus, and then I go through ALL of my stuff including email from a single Evernote inbox each night, and tag the do-list items with this handy EN to OF script.

I am about to update from EN 5.5.2 on Mac to 5.6.2, which is numbered like a small incremental update, but EN is saying it is “entirely rebuilt” under the hood. Can anybody confirm whether the script still works with it?


Posted by Alex  | August 28, 2014 at 12:30PM | Reply

To fix the issue where un-sync’d notes won’t have a note link in Omnifocus, just add the following code under “set enLink to note link of aNote”:

if enLink is missing value then
repeat while enLink is missing value
set enLink to (note link of aNote)
end repeat
end if

This seems to be working perfectly. Basically, if a note it finds with the tag (“review”) has no link, it calls Evernote to sync and then just loops until a link is finally given to that note. Should only one once, since any sync would give all notes a link in one go. Doens’t bother syncing if all notes have a link already.

Posted by Lenny  | August 5, 2014 at 4:35PM | Reply

My current workflow (using Zendone) is to put everything into my Evernote inbox. (I clip from the web, gmail, etc.) With Zendone, it automatically puts it from my inbox into the app to process.
With this function I would have to do a second step of going into Evernote and tagging the note “review”. Is there a way to bypass this extra step?

Posted by Robert  | July 2, 2014 at 3:38PM | Reply

Brilliance — absolute brilliance — getting the best from the best two tools in the industry. If the two companies partnered in a formal way, they would make the perfect baby.

Thank you for sharing. Keep it coming.

Posted by Frank Meeuwsen  | June 1, 2014 at 5:19PM | Reply

So…I’ve made some small adjustments to the script. It will now check if there is a reminder with the note and transfer that as well to Omnifocus. I’ve added some toggles to transfer the reminder to Onifocus and to delete the original reminder in Evernote. Have fun:

Posted by Frank Meeuwsen  | May 29, 2014 at 11:23AM | Reply

I tried this script without Lingon to test it, but it doesn’t add the link to the Omnifocus task. I use Evernote 5.5.1 and Omnifocus 1.10.6. Any thoughts?

Posted by Frank Meeuwsen  | May 30, 2014 at 3:41AM

OK, this is kinda strange…after some syncing it suddenly worked. I wasn’t testing with a new note, but Evernote needed to sync to get the notetitle. Come to think of it, perhaps it has something to do with adding the tag “review” for testing. Because of a change in the note it first needs to sync? Anyway, it works! Yeey!

Posted by Jovan M Payne  | May 28, 2014 at 4:32PM | Reply

I’m receiving the following message: “OmniFocus got an error: Can’t make class «class FCit».”. Please assist?

Posted by Ian  | May 25, 2014 at 6:58PM | Reply

Will this script work with the new OF version 2? If not any thoughts on how we can adapt it to work? I am a heavy Of user, and I currently use it with DevonThink (which has a similar script built in). I would like to try switching to Evernote, but the ability to send items out to OF while reviewing my Evernote inbox is vital to my system. Thank you!

Also, I enjoyed your OF Premium Posts and have implemented a version of your use of perspectives into the process I use.

Posted by Alexandra  | June 26, 2014 at 6:47AM

Hi Ian,

Yes – it works just fine. I thought it did not at first, but had to delete the old lingon command and make a new one, using the same old script. No worries, my workflow with EN and OF is sooo smooth thanks to this!

Posted by Alexandra  | March 26, 2014 at 4:45AM | Reply


I just installed this on my new MacbookPro with OS X 10.9.2, and it works perfectly – except for the fact that it interrupts my work and jumps my screen to Evernote every time the script launches.
Have I done something wrong? Is there a way to fix this?

Thank you for this absolutely awesome page, I’ve been practically living here since my new mac arrived <3

Posted by Gerard Ilott  | December 12, 2013 at 6:21PM | Reply

I set up the script to work last night using the latest Lingon 3 from MAS. It works exactly as advertised (except that I changed the Evernote tag to “OF”).

Creates the entry in OF just fine, but then it crashes Evernote if it has to edit an entry (delete tag). It does the edit fine, but crashes nevertheless.

Any ideas?

Posted by Gerard Ilott  | December 12, 2013 at 8:07PM

I have narrowed the offender down to the final stages, where the Evernote tag is deleted. If I comment out the following, the crash doesn’t happen, but of course the tag is left on the note.

tell application “Evernote”
delete tag todoTag
end tell
on error errmsg
–do nothing when it can’t find the tag
end try

Posted by Craig  | October 24, 2013 at 8:31AM | Reply

Love this script and been using for months. But with upgrade to Mavericks it no longer works.

Posted by Mike  | November 11, 2013 at 5:14PM


Are you getting an error message such as:

Syntax Error:
Expected end of line, etc. but found identifier.

I am getting this when I am trying to save as an app. Not sure if this is something to do with new “security” features in Mavericks????

I would love this to work as this is my achilles heel in getting actions from the notes I am dropping into Evernote.

Posted by Mike  | September 12, 2013 at 6:19PM | Reply

I cant get this to work at all and I really would like it to.

OS X – 10.8.4
OmniFocus – 1.10.4
Evernote – 5.2.1 (401587)

I have my home or inbox normally set to @Inbox. However, I setup another Inbox in Evernote thinking that the path was throwing off the script. No Workie.

I have tried a capital “R” and a lower case “r” in each of the inbox folders in Evernote. I am just trying to get the script to work.

I am not even to the point of getting it automated with Lingon! I am clicking on the “Run” button in the AppleScript window and I briefly see “Running” in the log window and nothing at all happens.

Can anyone help a AppleScript neophyte to try and get this thing working???? I use these 2 applications extensively and would love to even expand the script further if I could get this version running properly allowing me to tweak some of the tags!!!!!!

Thanks in advance!


Posted by Wynxz  | May 14, 2013 at 12:44AM | Reply

Thanks for this useful tip. Really appreciated. It saves a lot of time.

This maybe irrelevant to Omnifocus, But I wonder this:

Is there any script that moves notes with certain tags to certain notebooks?

For example
I have a notebook called “Bills and Receipts”.
I have a set of tags that every note tagged with one of the set, such as “Water Bill”, “Electricity Bill” and so on, will go to the notebook

I have searched some but found none.
Only this is useful:
But I have no knowledge in writing scripts.
Any ideas?

Thanks! :)

Posted by Stephen  | May 9, 2013 at 5:06PM | Reply

The latest version of Evernote for iOS has a Share note feature which generates a URL and copies it to the clipboard. This URL can then be pasted into the notes field of OF on iOS and will then open it on iOS (I expect you need to be online to do this though)

Posted by ownbit  | May 5, 2013 at 8:53PM | Reply

Hi Thanh, Thank you so much for your post. Could you please give a plain explanation about ‘ if the script’s launch interval is shorter than Evernote’s sync interval, you run the risk of the task not getting linked to the Evernote entry.’?

Posted by Maccurrito  | January 19, 2013 at 8:09PM | Reply

Many Thanks, at the 14th attempt worked fine, so I implemented using Keyboard Maestro according to a review of Jay Levy. Always worked but I closed the app Evernote, reporting error. Can be for not capitalize label Evernote?

Posted by Howe  | January 16, 2013 at 6:35AM | Reply

I’ve tweaked a little:

After set AppleScript’s text item delimiters to savedDelimiters I’ve added these two lines…

— Alter title of note
set the title of aNote to ((the title of aNote) & ” # Sent to Omnifocus”)
unassign tag todoTag from aNote

And removed the section at the end that deletes the tag

Two advantages to me. Tweaking the note title means I know it’s gone to Omnifocus (if I’m reviewing Evernote)
Un assigning the tag individually means it doesn’t get deleted.. Useful if you’re also email into Evernote etc notes (where the lack of tag means it won’t get added)

Evernote now becomes a pass through inbox. Essentially an ‘Action Support’


Posted by Brad McCormick (  | February 27, 2013 at 6:39PM

Perfect! I just had to remember to delete the last part of the original script, which deletes the todoTag.

Posted by Mobes  | January 11, 2013 at 8:21PM | Reply


Why not have both the checkbox for 1 hour ticked and also when note.index is changed ?
ie there’s no harm running this script frequently.
I’ve also used the lingon choices to have this run on startup.

PS The latest version of Evernote is sandboxed so the location you pointed to for note.index has changed to “Containers” inside the user library

Posted by Dellu  | January 6, 2013 at 12:42AM | Reply

I want to suggest small fix (trick) on the use of Lingon here:
Instead of making it launch every hour, you can make it to launch every time a new clip is added into Evernote. The advantage is, you don’t have to wait for 1 hour for your task to appear in OF. You can immediately get your task into your OF inbox, as soon as you clipped the page. Here is how:

Instead of marking Every 1 hour in Lingon, click on the Path, and point to your note.index folder of your evernote app. The note.index folder is available in:
user/library/application support/Evernote/user/note.index
Everytime you clip a webpage (update evernote app), the app launches and sends the ling to OF inbox. if you don’t clip, it doesn’t launch.
I think this is better.

Posted by Sumudu Gunaratne  | December 29, 2012 at 4:33AM | Reply

Thank you Thanh for the easy to understand guidelines. I’ve just started to using OmniFocus with Evernote and looking forward to using this brilliant feature more often. Thank you again.

Posted by Eric  | December 28, 2012 at 5:29PM | Reply

This. is. awesome.

One question, is there a way to get the evernote note to delete after it syncs to omnifocus.

Posted by Nathan Henrie  | December 18, 2012 at 11:50AM | Reply

Working great for me with launchd, did not convert to application (just saved in ~/Library/Scripts/Applications/OmniFocus and run using osascript command in the LaunchAgents .plist). Thanks for a great post!

Posted by Jay Levy  | December 13, 2012 at 9:58PM | Reply

looks like EN 5.04 fixes our problems! script is working again

Posted by Thanh Pham  | December 14, 2012 at 1:42AM

Yes, I can confirm this. 5.0.4 is working for me too.

For everyone who has Evernote via the Mac App store installed, you might have to wait a while before this version is in the Mac App store. But at least it’s working as it should be.

Posted by Leon  | December 12, 2012 at 5:32PM | Reply

Confirming the new bug. I don’t know AppleScript but am familiar with basic scripting and programming concepts. Tried the following work-around, w/o success (hopefully it will help others more knowledgable with AppleScript to debug):

I replaced “delete tag” with “unassign tag”, and moved the statement right after the end of the main repeat loop.

. . .
end repeat
unassign tag todoTag from foundNotes
on error errmsg
–do nothing when it can’t find the tag
end try
end tell
. . .

still got the same error (‘error number -1728 from tag “review”‘)

Posted by Thanh Pham  | December 10, 2012 at 11:10PM | Reply

Hi everyone,

It was working fine on 5.0.0 and 5.0.1 but it seems like since 5.0.2 this stopped working. It seems to be a bug on Evernote’s end as I looked through their bug reports, a lot of other people are experiencing similar problems with tags.

An interim solution is to revert back to 5.0.1 ( or you’ll have to wait till Evernote fixes their bug.

Posted by Thanh Pham  | December 14, 2012 at 1:43AM

Update: 5.0.4 has resolved this issue. Script is working again as normal.

Posted by Jos  | December 10, 2012 at 11:32AM | Reply

Looks like the review tag is not removed from the EN note. Result = that multiple occurrences are created in OF. I had to stop the script.

EN 5.03 installed.

Posted by Jay Levy  | December 6, 2012 at 10:30AM | Reply

Updated to 5.03 this a.m. Not sure if this changed anything, but in poking around a bit more this morning I’ve noticed a couple of things:

OF tasks are being created now, but Tag is not removed from EN note

AppleScript has following error:

tell application “Evernote”
delete tag “review”
–> error number -1728 from tag “review”
end tell

Posted by Sascha  | December 6, 2012 at 8:57AM | Reply

Hi i have change something in the script:

I have the line “set enTags to (the tags of aNote)” commented out and removed from the list. The tags of a note seems to get under Evernote 5.0.2 no longer be possible.

–set enTags to (the tags of aNote)
set end of theTodoList to {theTitle:enTitle, thelink:enLink} –, theTags:enTags

Posted by Jay Levy  | December 5, 2012 at 5:14PM | Reply

Correction… it doesn’t work via manual run in AppleScript either. The tag is removed from the EN note, but a task is NOT created in OF.

Posted by Jay Levy  | December 5, 2012 at 5:09PM | Reply

Yes, stopped working with 5.0x. For me, it works if I manually run it via AppleScript. Interestingly (at least too me!), when I run in AppleScript, it is firing the “Oops can’t find Evernote” error, but the script still works and a task is created in OF.

I noticed the following error in my console each time my automated process tries to run the script. Hopefully someone smarter than me can interpret this error to figure out why the script stopped working.

I also noticed the Evernote path referenced in the script is no longer valid. I updated to the following, but it seems to have made no difference.

— old property notepath : “/Library/Caches/Metadata/com.evernote.Evernote/”
property notepath : “/Library/CoreData/com.evernote.Evernote/”

12/5/12 4:03:08.157 PM Evernote[3643]: Error while returning the result of a script command: the result object…
” (entity: ENTag; id: 0x11b938b0 ; data: {\n active = 1;\n attributes = (\n \”0xda72e20 \”\n );\n children = (\n );\n dirty = 0;\n expungeOnSync = 0;\n guid = \”e395eebc-7d71-4515-81c4-54f747535d83\”;\n name = review;\n noteCount = 1;\n notebook = nil;\n notes = (\n \”0xacde4d0 \”\n );\n parent = nil;\n updateSequenceNumber = 9566;\n})”
…could not be converted to an Apple event descriptor of type ‘list of tag’. Element 0 could not be converted to an Apple event descriptor of type ‘tag’. This instance of the class ‘ENTagMO’ returned nil when sent -objectSpecifier (is it not overridden?) and there is no coercible type declared for the scripting class ‘tag’.

Posted by Rup  | November 26, 2012 at 2:18AM | Reply

Can someone confirm this works for Evernote 5 and OF 1.10.4?
Script runs without any issues but nothing happens. Both applications are open. I feel the notepath might not be correct perhaps as that directory doesnt exists on my machine.

Posted by berriac  | December 5, 2012 at 6:19AM

works fine for me. I am on Evernote 5.0.2 and OF 1.10.4

Posted by berriac  | December 5, 2012 at 6:42AM

sorry, does’t work on 5.0.2. I updated evernote to 5.0.2 today and it does’t work anymore.

Posted by Essentiae  | November 19, 2012 at 10:51AM | Reply

Mountain Lion, Evernote 5, and OmniFocus 1.10.4

I’m using the above updated software and am able to run the script. BUT, I’m running it directly from within AppleScript Editor. I will say, though, that if you’re having trouble with the script, check first whether you have compiled again after editing your variables (if you edited them) and check also that you aren’t using spaces (e.g. “To Do” is no good, “ToDo” is fine).

This probably isn’t the issue for most, but I’m hoping it’ll help a person or two.

Posted by Essentiae  | November 19, 2012 at 10:45AM | Reply


Directly under “delete tag todoTag” (& above “end tell”), add the following:

if (not (tag named todoTag exists)) then
make tag with properties {name: todoTag}
end if

Hope that helps,

Posted by Essentiae  | November 19, 2012 at 10:47AM

(PS – Don’t forget to compile again, afterwards.)

Posted by berriac  | December 4, 2012 at 12:20AM

Thanks, Essentiae
exactly what I was looking for. and it works :)

Posted by Narelle  | November 8, 2012 at 5:11PM | Reply

I am currently working on becoming more efficient by using Evernote & Omnifocus. During my searching I am continually coming across articles on using Applescripts, however, have never understood what they are and/or do. This article is fabulous. Thank you so much for the step by step instructions and for the screen shots, this is amazing. I will definitely be reading more of your articles to assist me in getting an organised workflow happening.

Posted by Roger  | November 7, 2012 at 2:19PM | Reply

Excellent post! Got it to work no problem and it pulled a few evernotes from years ago that i had tagged with review but forgot about! Excellent!

Posted by Nick  | November 6, 2012 at 5:44PM | Reply

These are screen shots AFTER everything worked and the APP stripped the #review tag. I hope this helps. Maybe it is a setting in Evernote I am simply missing.

Posted by Nick  | November 6, 2012 at 5:18PM | Reply

Wonderful App. Small challenge however. I might be the only one but looking for “help” from anyone that has an answer.

1. I am an OF and Evernote user of many years.
2. I often forward emails to Evernote and tag the “Subject” line. (works great) @ (is for notebook) and (# is for tag).
3. IF you forward an email to EVERNOTE with a #tag that does not exist it does NOT tag it and it does not create the TAG.
4. Problem I’m having: If I TAG the email #Review and send it in….it will NOT tag it. Why? Because Evernote doesn’t have the TAG available.
5. If I CREATE the TAG in evernote. THEN send in the email with the #Review, it works perfectly. (Ready for issue)
6. The SCRIPT strips the TAG from EVERNOTE. 100% clear as to WHY, no issue. If it didn’t, then the notes would be repeatedly entered in OmniFocus. However, in the process it does STRIP the TAG entirely from EVERNOTE.

Big Question:

Am I just limited to tagging each EVERNOTE as “Review” independently? If yes, ok. OR is there a solution to the Script that doesn’t strip the TAG as a resource only strips the TAG from the actual item. ??

Thanks in advance. (Amazing stuff you guys have here)

Posted by Nick  | November 7, 2012 at 2:18PM

1. I confirmed with Evernote that there is no way to “create a new tag” via email. If the tag doesn’t exist it will not be applied.

2. Random idea: Fix to the issue. Along the same lines as the current App benefit. If it is created to go in and look for anything with a Tag of “Review” and then applies to OF and then cleans out “Review” from the tags. There is probably a SECOND script/app that can use this same line of thinking in reverse (to a degree). A process that runs following to go into Evernote and create a Tag “Review”. It will not be applied to any note but it could be added to the Tag Library. This way, when the email sends in the information to Evernote, the tag will always be available.

Just a thought.

Posted by berriac  | November 16, 2012 at 3:27AM

The script does the job flawlessly.
have you found any solution to the TAG issue? (“review” tag being removed from the tag library)

Posted by Thanh Pham  | November 5, 2012 at 10:43PM | Reply

Hi Anish,

Are you using the Evernote 5 beta? If so, that might be the root cause. The stable version works just fine.

Posted by Nick  | November 6, 2012 at 5:21PM

V. 3.3.1

Posted by Anish  | November 7, 2012 at 7:19PM

Hi Thanh,

Just looked at my version, and it says 2.2.3. It appears that since I’m running Leopard, I can’t download later versions of Evernote. I’m hoping to be able to get Snow Leopard within the next few days. Would we still be able to make it work with Leopard?

Posted by Anish  | November 4, 2012 at 6:18PM | Reply

Hey Thanh,

Thanks for the wonderful tip. Do need some help though, as I have very little knowledge of programming/coding. When I run the application version of the script, I get a “change path-cannot find evernote” error. When I looked at the path destination, I didn’t see a difference. I tried changing the code of property notepath from “/Library/Caches/Metadata/com.evernote.Evernote/” to “/Users/adhamija/Library/Caches/Metadata/com.evernote.Evernote/” and as expected didn’t see any difference.

Any tips/advice?


Posted by Tom  | November 3, 2012 at 6:03PM | Reply


Great work, and thanks for the tip. I installed this last week, and I love using it. I went ahead an excitedly installed the new Evernote (5) and this script/program broke. I’ve tried figuring a new workaround, but haven’t had any luck.

Anyone else?


Posted by Thanh Pham  | November 5, 2012 at 10:41PM

Hi Tom,

I haven’t used the new Evernote 5 beta yet, so I don’t know if that broke it. It probably did. When the stable version is out I’ll make sure to update this post.

Posted by Jay Levy  | October 31, 2012 at 9:01AM | Reply

thanks for this much needed tip! Great way to close the “last mile” between Evernote and Omnifocus.

Just as others have suggested alternate methods to launch the script, I might suggest use of Keyboard Maestro for those of us who use that tool (if you aren’t, you should be!! lot’s of great things you can do to simplify so many things on your mac)

It is a simple 2 step Macro in Keyboard Maestro:
1. Create a new a Macro that is triggered by “Application Trigger”
Choose OmniFocus and change it to “Is Running” and set your desired repeating frequency
2. Add an action to “Execute an AppleScript”
Change the action to “Execute script file” and enter the path of the script you saved.

that’s it! works like a charm

Posted by Thanh Pham  | November 2, 2012 at 2:16PM

Thanks Jay. That’s a nifty trick and alternative. I’ve been trying to learn KM lately and it’s indeed a very powerful app.

Posted by Graham  | October 30, 2012 at 9:38PM | Reply

This looks really useful. Would it work if both Evernote and Omnifocus are running in one User Account while another User Account is active?

Background: I use Omnifocus on iOS, Windows at work and have an iMac as the home PC. I would like to use the magic of cloud syncing to enable the following workflow:

1. Write note in Evernote and tag with the “Review” tag. Note is synced from my device to Evernote cloud and from Evernote cloud to Evernote on iMac at home .
2. Omnifocus on iMac syncs this note in the background as long as my User Account is running on the iMac. Task is synced to the Omni cloud.
3. Omnifocus on iOS syncs with the Omni cloud to bring the task to my devices.

I realize this would not be an instantaneous sync but I’ve been considering getting Omnifocus for the iMac and this would probably tip the balance for me because it would be a much easier way to link Evernote and Omnifocus.

Posted by Graham  | November 7, 2012 at 7:13AM

To answer my own question, it looks like this works. I was writing a note in Evernote on Windows and it automagically appeared in my Omnifocus inbox on my iPhone. I am not 100% sure if it was my user account that was active on the iMac at home but in principle, it looks like it is working how I wanted.

One point to note – I tagged the note with the “review” tag when I started writing it and when the tag was stripped out by the script, it caused a “Conflicting Changes” note in Evernote because the note had been changed on 2 devices at the same time (I was still actively editing it in Windows). Not a big issue as I was able to recover all my notes from the Conflicting Changes folder but it looks like it is better to tag when the note is finished rather than at the start.

Posted by Gina Batali-Brooks  | October 3, 2012 at 12:09PM | Reply


This is my second try and using Omnifocus and Evernote to create a productivity system I will use. Thanks to all of the great tips you have on your site, like this, I’m actually finding the systems very useful this time. Thanks!

Posted by Thanh Pham  | October 4, 2012 at 10:19PM

You’re welcome Gina!

Posted by Anthony  | September 17, 2012 at 7:23PM | Reply

Great trick to get this working with OmniFocus; I have tried and am stumped in getting this script rewritten to work with Things ( and I sofar can’t. Has anyone had success in doing this with Things instead of OmniFocus.

Any suggestions would be great. I am stuck and can’t get the classes to work and the new Things tasks created.

Posted by Hugo  | September 10, 2012 at 1:29PM | Reply

For information I have created a free OmniFocus Report Tool
If you are interested about this tool you can suggest more report type. Go to the page tool for more information.

Posted by Colin Prout  | August 28, 2012 at 3:50PM | Reply

Thanh, as per Debbie, I’ve found the script no longer works since upgrading one component or another. I’m now running Mountain Lion 10.8.1, Evernote Version 3.3.0 (300201), and Omnifocus 1.10.3/GM-v77.90.17 and the script has recently stopped running correctly. It now strips Review from the individual Evernote notes when it runs and deletes Review from the list of Tags in Evernote. Any assistance or info gratefuly recieved.

Posted by Debbie  | August 5, 2012 at 10:15PM | Reply

Thanh – thank you so much for the script. It worked perfectly until I installed an Omnifocus update today. Now nothing happens when I run the script.

Is there something I need to do to get it working again?

Posted by Debbie  | August 5, 2012 at 10:18PM

FYI, I am using Lion

Posted by Caleb  | August 3, 2012 at 7:05PM | Reply

How about creating an OmniFocus Task in my inbox for every “to do” item in evernote and checking the evernote to-do checkbox once copied to OF.

The above script works great and gets me 80% of the way there. Now I go through and review my notes, and create tasks where appropriate. It would be awesome if the script did that for me.

Posted by Jim  | July 19, 2012 at 6:35PM | Reply

Thanh and Nick: this automation between EN and OF is wonderful, thank you!! I chanced upon your site only a few days ago and have discovered several very helpful tips, but this one wins the prize!

I’d like to mention one small glitch in the system as I use it, and it might also affect others: It appears that the script deletes the “review” tag entirely, as opposed to stripping the tag from individual notes. No big deal, you can easily recreate the tag. However, I make extensive use of emailing into EN, and to automatically add a tag to notes the tag must already exist. I am not familiar enough with Applescript to attempt changes, but I wonder you guys have any suggestions on a workaround.

Many thanks and keep up the great work!

Posted by Thanh Pham  | July 20, 2012 at 5:24AM

Hi Jim,

I’m not a savvy Applescript coder either. If you really want to make changes, I suggest you hire someone of Elance or Odesk who could help you. Shouldn’t be too expensive.

Posted by Raj Rao  | August 29, 2012 at 1:07PM

I figured this out, I changed the remove tag, and edited the script to use “unassign” tag from “anote” after it sent the note to omnifocus. I have never edited a script below, i will try to post it when I get back to the office computer. I just discovered this site, and have lost countless hours trying to improve my productivity by playing with these programs. ;)

Posted by Matt Stiles  | October 12, 2012 at 8:21AM

Any updates on this? I tried editing the script myself to simply remove the tag, not delete it entirely, but with no luck.

Posted by Robb Enger  | December 7, 2012 at 10:24AM

*disclaimer* I am not a developer, so YMMV

I went to where there’s a bunch of code specific to Evernote. There was a section in there specific to creating tags, so I copied and pasted to apple script and am running it every few minutes with Lingon. Not sure if it’s the most efficient way to do this, or if there’s a way to just tack it on to the original script, but I don’t know how you’d do that or if it’s possible.

Love the tips on this site, btw.

It seems to work for me.
tell application “Evernote”

— create, rename, and delete tags
if (not (tag named “review” exists)) then
make tag with properties {name:”review”}
— create a sub-tag

end if

— WARNING there is no confirmation, and all subtags are deleted as well!

end tell

Posted by Mark B  | April 18, 2013 at 7:12AM

similar disclaimer – I am not a developer, only a meddler!

Robb’s approach deletes and then recreates the tag, and also does not allow changing the tags name from “review” in its present form.

I would suggest the following which seems to work for me:

Open the script in Applescript editor and after the line:
set end of theTodoList to {theTitle:enTitle, thelink:enLink, theTags:enTags}

add the following two lines:
set enTag to tag todoTag
unassign enTag from aNote

Then go to the end identify the last try section (from try to end try) – this is the one that contains the ‘delete tag todoTag’ section. Before try add a new line:
and then after end try add a further line
This will comment out the last section and stop it deleting the tag.

This seems to work for me as I needed it to have the tag in existence for me to be able to use the email facility in evernote to create an evernote note from an email with a linked ‘Review: ‘ action in Omnifocus.

Posted by Laura  | July 16, 2012 at 9:17AM | Reply

This is fantastic. I especially appreciate the clear, step-by-step instructions for folks (like me) who are not familiar with more technical aspects of how to use things like Applescript.

Yet again, this blog increases my productivity! You guys are amazing.

Posted by Thanh Pham  | July 17, 2012 at 9:12PM

Thanks Laura!

Posted by Laura  | July 30, 2012 at 6:48PM

Just thought I’d mention as a minor update and a request for help from anyone else who might be experiencing this: When I upgraded to Mountain Lion, this script ceased to work, giving me the error message that it “can’t find Evernote” every time it tries to run? Anyone else reading this have a similar issue crop up? How did you fix it?

Posted by LLBean  | July 12, 2012 at 7:37PM | Reply

Any idea if Hazel 3.0 can be used in lieu of Lingon for this?

Posted by Thanh Pham  | July 17, 2012 at 9:11PM

What would you like to accomplish exactly?

Posted by Ellen  | July 5, 2012 at 10:37AM | Reply

Thanks so much for this great tip! I’m very new to the Mac World and your directions couldn’t have been better.

Posted by Thanh Pham  | July 8, 2012 at 12:09AM

Thanks Ellen!

Posted by Bryan  | July 3, 2012 at 4:14PM | Reply

After playing with this today, there’s one minor issue to be aware of. If the script’s launch interval is shorter than Evernote’s sync interval, you run the risk of the task not getting linked to the Evernote entry. This is because Evernote doesn’t create a link until it syncs.

Posted by Thanh Pham  | July 8, 2012 at 12:11AM

Nice catch Bryan! I didn’t think of this but that makes sense (the reason the Evernote URL works universally regardless of platform). I’ve edited the post to reflect this.

Posted by Mike  | July 1, 2012 at 11:00PM | Reply

Is there a simple way to tweak the script so that a tag of “reviewed” (or any other tag, really) is applied to the note after the “review” tag is deleted? Doing so would make it easy to identify notes that have already been processed. All of my notes are saved by default to an “Inbox” notebook and then subsequently moved after processing.

Posted by Thanh Pham  | July 2, 2012 at 5:49AM

Hi Mike I don’t think that would be too difficult. If you can find an Applescript coder (or just hire one for this – must be cheap) he/she should be able to do that easily.

Posted by Nick Wild  | July 2, 2012 at 1:35PM

Hi Mike,

As the ‘instigator’ of the original script maybe I can help – how do you see this working? Do you see that the Note should not be marked as Reviewed until you have completed the Task in Omnifocus?

Posted by Bryan  | July 1, 2012 at 8:00PM | Reply

I just bought OmniFocus because of this post. I’ve been trying out Evernote for a couple months now, and this will really help me out with my blogging. Now I can easily associate my TODOs with my online research. Thanks a bunch Thanh!

Posted by Thanh Pham  | July 2, 2012 at 5:42AM

No problem Bryan and good luck with your blogging journey!

Posted by Carlo  | July 1, 2012 at 12:36PM | Reply

The script was recently updated and is not working on my machine. I tried the process twice with Lingon 3 and when it runs, nothing happens. I seem to be the only one with this problem, but thought someone may have an idea?

Posted by Thanh Pham  | July 2, 2012 at 5:41AM

Hey Carlo, I just tried the script and it’s still working. Do you have Omnifocus and Evernote open (in the background)? The “review” tag is case sensitive.

If these are all in place, then I’m not sure what the problem could be. Maybe change the path of the script? Perhaps your Evernote is installed elsewhere?

Posted by Carlo  | July 4, 2012 at 8:50AM

Thanks! I’ll mess with it today.

Posted by Chris Boehner  | June 19, 2012 at 7:02AM | Reply


Really excellent work here! I always had the problem of taking notes in Evernote and then never reviewing them…especially journal entries from the night before to review in the morning.

Thanks for a great tutorial and awesome script!


Posted by Haim  | June 13, 2012 at 8:36AM | Reply

Hi Thanh,

Have you heard about Evernote and IQTELL’s integration?

Posted by Thanh Pham  | June 21, 2012 at 12:45PM

Hey Haim, I haven’t. Could you share some stuff about that?

Posted by Vaughn  | June 12, 2012 at 2:23PM | Reply

Any reason you couldn’t use cron to run this script on a regular basis?

Posted by Vaughn  | June 12, 2012 at 2:41PM

I tested it out and this does work from cron. Here’s my crontab entry:

0,15,30,45 * * * * /Users/sulvand/Documents/scripts/

That will run the script every 15 minutes.

Posted by Thanh Pham  | June 12, 2012 at 3:04PM

Awesome Vaughn! I forgot cron existed – it might be easier for non-techies to use Lingon but with your crontab entry this should work. Thanks for sharing.

Posted by Bryan  | July 3, 2012 at 5:15PM

Sorry I couldn’t get the code to look right. I posted the code here:

Thanh, feel free to delete the other posts, and copy the code from my blog to here if you like.

Posted by Bryan  | July 3, 2012 at 4:41PM

Because cron has technically been deprecated by Apple, I figured out how to do it using launchd.

Open a text editor and past this code:



Save it to your /Users/your_username/Library/LaunchAgents folder with the name local.en2omni.plist

In the string field for the Label key, replace “your_name” with your username.

In the string field for the Program key, replace “insert_your_path_here” with your path. Following Thanh’s example, it would be: “Users/thanh/Applescripts”.

Right now, the update interval is set to 15 minutes. To change it, change the “900” in the integer field of the StartInterval key to the number of seconds you want OmniFocus to wait between updates.

A reboot should start the demon for you. If you don’t want to reboot, you can launch it from the command line by entering the following command:

launchctl load /Users/your_username/Library/LaunchAgents/local.en2omni.plist

Posted by Bryan  | July 3, 2012 at 4:46PM

Aaack! Need the code tags. Let’s see if the code works here:



Posted by Jamie Allen  | June 12, 2012 at 11:15AM | Reply

This is brilliant! I love it.

You can achieve the same functionality as the lingon part of the process with ‘Cron’ which is already built in, of course. Cron automatically runs scripts as often as you choose.

Open a terminal, and type “crontab -e”, press enter, then type a capital A
then enter this line :
*/10 * * * * /insert_your_path_here/
then press escape, then type :x [enter]

That will run the script every ten minutes. To change the frequency, change the 10 to a different number of minutes.

Posted by Thanh Pham  | June 12, 2012 at 3:03PM

Hi Jamie thank you for sharing this! I totally forgot about cron. Yes, this is a great solution as well.

Posted by Nick  | June 12, 2012 at 10:34AM | Reply

Thanks for the mention Thanh; very happy to share based on pulling together lots of resources from many more talented people who I have based this on

Posted by johnwin  | June 12, 2012 at 4:40AM | Reply

This is a great tip, thanks so much.

And Lingon is new to me too – so many uses I have for this. Thanks again AE

Posted by Thanh Pham  | June 12, 2012 at 5:10AM

Glad you like it. Try it out and be amazed how efficient this will make you :)

Posted by johnwin  | June 13, 2012 at 1:59PM


Just a note to say that I set up the script and it, of course, works perfectly.

I just wanted to let anyone who has not tried this just how fantastic it is:

When the script is triggered it creates a new task in the inbox of Omnifocus and in the note filed it inserts a link to the note back in evernote. But this is the best bit – it’s not a url to the web based evernote. It is a link to the note within the native app. This is great.

And it gets better if you use Omnifocus and evernote on an iOS device. The same link in Omnifocus takes you to the evernote note in the native iOS app.


Leave a Reply