A few years ago I was home with my son several days a week, and I was in charge of most of our family’s meals. I had developed a library of recipes that I turned to again and again–nothing fancy, but meals that I could make and our family enjoyed.

The only tedious part for me was coming up with a plan each week of what we were going to eat. I knew it was worth it to avoid the pain of asking “what’s for dinner?” each night, but I couldn’t bring myself to do the work.

The solution that I came up with is a combination of a Google Docs Spreadsheet and a script written in Google Apps Script to generate a random meal plan.

I entered in all of the meals that I liked to cook, how many times in a single month I was willing to eat that meal, how “hard” it was to cook, and the “category” of the meal so I avoided having pasta 2 nights in a row, for example. Going to a menu in the spreadsheet then picks from the meals that I have listed and creates a new sheet in the workbook, listing a month’s worth of meals at a time.

The advantage of using Sheets and Google Apps Script is that it is easy to update all of the meals that I wanted randomized. The disadvantage is that Google seems to have abandoned Apps Script. It is not usable on mobile devices, for example. Some day I may move this concept to a mobile app, since nowadays I tend to do meal planning on my Android phone or on the iPad much more than on a laptop.

If you want to use this for your own meal planning, just click on the link to the meal planner document and save a copy of it to your Google Drive account.  There are instructions in the workbook itself.


Kyle Malone · November 9, 2019 at 3:10 pm

I am trying to utilize the spreadsheet for my own use, and am having trouble. I looked at the documentation tab, but the scripts menu is not popping up for me. Any suggestions?

Anette · January 6, 2020 at 5:22 am

When the new spreadsheet “copy of meal planner” opens after you click on the link above, be sure to click Archive –> copy the spreadsheet. Choose to copy comments to keep the instructions. Then it should work.

Leave a Reply

Your email address will not be published. Required fields are marked *