The Daily Almanac Has Been Added to My Google Writing Tracker

One of the most frequent requests I get regarding my Google Writing Tracker is to make my Daily Almanac available as part of those scripts. The wait is over. Today, I pushed out the Daily Almanac the Google Writing Tracker project on GitHub.

For those who don’t know, my Google Writing Tracker is a set of script that automate the process of tracking what I write every day. Since I do all of my writing in Google Docs, these scripts run automatically each night, look at what I wrote, tally up the stats and record them in a spreadsheet. They also email me a copy of all of my writing for that day, including differences from the previous day.

Along with those scripts, I built another script that I call my Daily Almanac. This script culls that spreadsheet that is populated by my Writing Tracker scripts and gives me a summary report each night. The report tells me how much I wrote that day, and breaks it down for me. It also identifies any streaks I may have set (369 consecutive days of writing as of today) and any records I may have set. (The most words I’ve written in a day, etc.) I set up my Daily Almanac to send the nightly email to Evernote so that I have a nice record there of my day-to-day writing activity. Here is what a typical Daily Almanac entry looks like:

Daily Almanac July 23

The Daily Almanac is now available for anyone who wants to use it with the Google Writing Tracker. I have checked it in to the project on GitHub, and I’ve updated the README file with detailed steps for setting it up.

As always, this is a use-at-your-own-risk thing. I just don’t have the time to support these scripts. The best I can do is make them available for others who want to give them a try, and encourage folks to add to improve upon them. Be sure to read the instructions carefully, and if you do find any bugs, feel free to open up an issue in the GitHub project. I may not fix it any time soon, but at least it will get tracked.


  1. I know these are as-is, so this comment is more for other readers 🙂 – If you have a problem with the almanac script producing bad output, namely if despite it accurately getting your words written, but the emails begin with “You wrote a total of NaN words.” – the fix is to add the following around line 76:


    var blogBestDate = getMaxRecordDate("Blogging");


    var blogBestDate = getMaxRecordDate("Blogging");
    } else {
    var blogWords = 0;

    Otherwise, blogWords is undefined, and google scripts silently bombs out the rest of the math. Thanks, and thanks to Jamie for sharing!

    1. Michael,

      Go pull the newest branch, here: and follow the instructions in the README to update to the new data-driven version. Aside from a lot of new features (listed in the readme) it should also fix the problem above.

      I’m not yet ready to merge this branch into master. I want enough people in different environments than my own to test it out so that we can work out the kinks. But I think you’ll see it a huge improvement in just about every respect.


This site uses Akismet to reduce spam. Learn how your comment data is processed.