Find Your Most Productive Time of the Day by Tracking Your Body’s Energy Levels

When do you do your best work?

If you’re the type that likes to wake up early in the morning, maybe you find that your energy and ability to focus are at their highest peak during those early hours.

Or maybe you’re a night owl – you find that you’re on fire at 1 A.M., hacking away on a project while everyone else sleeps.

Conversely, when’s your worst time of the day? Do you hit an “afternoon slump” right after lunch and feel like you need to slip into a temporary coma under your desk?

You can probably dredge up some basic answers to these questions from your memory. But what if you knew exactly when your energy level would hit its peak on an average day?

Armed with knowledge like that, you could start to make intelligent changes to your schedule. You could plan to work on your most difficult, intellectually demanding tasks when your energy was highest.

Depending on the level of control you have over your obligations, you could start to shift meetings, errands, and other busywork to other times of the day – thus ensuring that your “Biological Prime Time” never gets taken up by things you know you could do half-asleep.

If you’re a student, you could use this information to build a better class schedule for next semester.

Knowing the typical ebb and flow of your energy levels would clearly be a boon to your productivity – but how do you figure it out in a truly precise way?

Simple: You track your energy levels. You treat your body just like a statistician treats a population – you gather data, average it, and look at the outcome.

In last week’s 5 Lessons video on The Productivity Project, I described how author Chris Bailey did exactly this in order to discover his own Biological Prime Time. However, when people started asking me for instructions on exactly how to replicate his experiment myself, I couldn’t find a solution I liked.

I didn’t want to carry around a notebook in my pocket and write my energy levels down by hand. And I certainly didn’t want any kind of system that would make me do manual calculations on my data later.

I wanted a system that was:

  • Easy and fast to use – no more than 10 seconds spent entering data each time
  • Automated – it had to average my data and graph it on its own
  • Free – honestly, I’d be willing to pay $0.99 for a system like this, but everything that came close was priced closer to $5. No dice.

So I decided to build an energy tracking system myself. By inputting energy level data each hour over the course of several days, this system eventually yields a useful graph like this:

Average Energy Levels Each Hour

In this post, I’ll show you exactly how you can do the same; in fact, I’ve already taken care of the hardest part for you.

If you’d like to start tracking your own energy levels and discover your own Biological Prime Time, then follow along.

How to Build an Energy Tracking System

Energy Tracker System

To make this experiment easy to run, our goal here is to set up a system that will let you easily let you enter data – your energy level at a given time – and then automatically process it. To achieve that, we’re going to combine three different tools: Google Forms, Google Sheets, and an hourly reminder app.

Here’s a quick glance at the steps we’ll take to set the system up. Since I’ve already done 90% of the work in setting up the Google Sheet, this shouldn’t take you more than 5-10 minutes to do.

  1. Make a copy of my Google Sheet, which will process your data
  2. Create a Google Form to track your energy levels
  3. Link your form to your spreadsheet
  4. Make a couple formula changes
  5. Add your form’s link to your smartphone’s home screen
  6. Set up an hourly reminder so you won’t forget to enter data

Let’s get started!

Step 1: Copy My Google Sheet

To get average hourly energy levels from the data you enter into your Google Form, we need to link that form up to a spreadsheet – which contains formulas to process the data.

Now you could build this spreadsheet yourself – but an easier solution would be to simply copy the one I’ve already built. So click here to go to my sample spreadsheet.

Next, hit File and click Make a Copy. Go ahead and name your copy whatever you want – “Energy Tracker” or “Mr. Taco McSparkles Visits the Moon God”. It doesn’t really matter.

Make a Copy

Now your copy of the spreadsheet should open in an new browser tab.

Important! Before you do anything, you need to change your copy of the spreadsheet’s timezone. Otherwise your timestamps are going to be all screwed up.

  • Click File and then click Spreadsheet Settings.
  • Change your time zone.
  • Click Save Settings.

Now, if you look near the bottom-left of the screen, you’ll see that you’ve got two different sheets:

  • Results (Sample)
  • Responses (Sample)

In my original version of the Sheets project, Responses (Sample) is the sheet that recorded the responses from my Google Form. All the data there is bogus – I let a bunch of people from Twitter enter it in. But it demonstrates how the Sheet project works – to see how, click over the the Results (Sample) sheet.

Here, you’ll see that each cell in Column A records the hour from the timestamp in the corresponding cell over in Responses (Sample). Likewise, Column B records a numerical energy level value from its sister cell.

At this point, you might be asking:

“Why can’t we just set up other cells in Responses (Sample) to watch the cells that get data from the Form? Why do we need another sheet?”

That was the first way I tried to build this, and theoretically, it would work. However, when you link a Google Form to a Sheets project, the responses create entirely new rows. They don’t just fill in the next available row.

As a result, we can’t just do something easy like setting cell C1’s content to =HOUR(A1). The original A1 doesn’t ever get filled in – Google Forms creates a new A1.

What to do?

Luckily, we can use set up another sheet and use a command called ARRAYFORMULA to have it watch the original sheet and port over all its data.

If you look over at cells A2 and B2 of Responses (Sample), you’ll see how we’re using this command:

  • A2’s content: =ARRAYFORMULA(VALUE(HOUR(‘Responses (Sample)’!A2:A)))
  • B2’s content: =ARRAYFORMULA(VALUE(LEFT(‘Responses (Sample)’!B2:B,1)))

Using ARRAYFORMULA to get the data

To run over it quickly, VALUE converts the cell content to a numerical data type (so we can do math on it), HOUR grabs only the hour from the timestamp, and LEFT grabs a specified number of characters from the cell it’s watching, starting from the beginning – you can see near the end of that formula that we only want 1.

See why copying the sheet’s a bit easier than making it yourself? 😉

Anyway, click the arrow next to Results (Sample) and then click Duplicate. Rename your duplicated sheet to Results.

Duplicating the Responses Sheet

We’ll come back here in a moment, but first we need to whip up a Google Form.

Step 2: Create a Google Form

Setting up a Google Form will allow you to easily track your current energy level by answering one question. Since you have to track your energy several times a day, I wanted to make sure the process would be incredibly quick and easy.

Note: I’ll mention here that you don’t necessarily have to track your energy every single hour to get meaningful data. You could easily set up, say, five alarms at custom time throughout the day. However, my spreadsheet is set up to work best with hourly tracking (or at least tracking that’s done on the hour – it could be bi-hourly). So if you want to start changing the way you do things, I’ll leave the required formula changes as a challenge for you to figure out.

Head to Google Forms, click the Go to Google Forms button on the page, and then create a blank form. From there, build your form like so:

  • Give the form a name, such as “Energy Tracker”
  • Add a question to the form: “What’s your current energy level?”
  • Add responses to the question. Enter as many as you want – I chose to go with a 1-4 scale for rating my energy levels.

Creating the Google Form

Important! The first character of each answer must be a number. 

Remember that formula for cell B2 in our Results sheet? The LEFT command grabs the first character, and another cell uses that to get a numerical average. So your responses must start with numbers, or the whole thing won’t work.

  • Next, set the question to Required
  • Click the Responses tab and then click the green Sheets icon:

Connecting the form to the sheet

  • Select an existing spreadsheet
  • Choose your copy of my energy tracking spreadsheet
  • Click Select

At this point, your spreadsheet should open back up again. Time to make a couple of small modifications to it.

Step 3: Edit the Spreadsheet

Looking at your Sheets project, you’ll notice that there’s a new sheet listed along the bottom with the others. It’ll probably be named Form Responses or something similar. Click the arrow next to its name, and rename it to Responses.

Now, head back over to your results sheet. Edit cells A2 and B2 so that they reference this new Responses sheet, rather than Responses (Sample). Here’s what you should get:

  • A2’s content: =ARRAYFORMULA(VALUE(HOUR(‘Responses‘!A2:A)))
  • B2’s content: =ARRAYFORMULA(VALUE(LEFT(‘Responses‘!B2:B,1)))

Luckily, that’s the only change you need to make! You’ll notice that the cells reference a range of cells – A2:A and B2:B.

In Excel and Google Sheets, defining a range like that (not putting a number on the second part) means the range is indefinite. It’ll keep watching from A2 and B2 down to infinity, so you can enter as many results as you like.

Step 4: Add the Form to your Phone’s Home Screen

Adding the form to a homescreen

We’re on the home stretch – all that remains to be done now is to set up your phone so that it’s easy to enter data each hour.

Head back to where you were editing your Google Form, and click Send up in the top right corner. Choose the link tab, and then find a way to open that link on your smartphone. You could:

  • Email it to yourself
  • Choose the Short Link option and simply type it into your phone’s browser
  • Use a syncing app like PushBullet

In any case, you just want to get it open on your phone’s browser. Now, add the form to your phone’s home screen so you can open it instantly when you need to. Here’s a HowToGeek article that will show you how to do that on any smartphone or tablet.

Step 5: Set Up Hourly Reminders

If you’re going to try to track your energy every hour, it’d probably be a good idea to set up a reminder system – I know I’d forget to do it without one.

As an iPhone user, I was a bit appalled to discover that there is no app in existence that hit all the criteria I wanted:

  • Hourly notifications – ones that require an acknowledgment
  • Customizable time window – so it’s not bugging you at night
  • $0 cost – keeping with that free theme here

In fact, the only app I could find that would do the first two cost a whopping $5 – a bit too steep for this experiment.

As a result, I decided to go with the following apps as my recommendations here:

  • iPhone: EveryHour – Makes your phone play a sound or vibrate every hour. Just sounds – no notifications. But it does have a customizable time window.
  • Android: Blip Blip – Seems quite similar to EveryHour, possibly even more full-featured.

EveryHour iPhone App

As far as I’m concerned, this isn’t the most ideal solution – I really would have liked a system that actually forced me to take action on a notification. Or, even better, one that sent me a text message with the link to my form every hour.

Now, there are methods of achieving this for free. One option I explored was using IFTTT – I created a recipe that used the Date and Time channel as a trigger and the SMS channel as the action.

However, the Date and Time channel’s “hourly” trigger unfortunately won’t let you set up a custom time window. It just triggers every single hour. The only way around this would be to use the “Every day at X” hour trigger instead, and to create a separate recipe for every hour.

I wanted the setup for this system to be somewhat elegant, so I decided to avoid doing that. Technically, you could do the exact same thing with your phone’s default alarm app.

Me? I’m ok just training myself to respond to EveryHour’s beep.

Now, Gather Some Data!

Find Your Most Productive Time of the Day by Tracking Your Body's Energy Levels

Here’s a Pinterest-worthy image for sharing this video 🙂

Once you’ve got your system set up, all that’s left to do is gather the data. Over the next 1-2 weeks, keep your system running and diligently enter your energy level each hour during the time window you want to track.

Along the way, you can keep an eye on how your graph changes. After you’ve entered a suitable amount of data, your graph should accurately reflect how your energy levels tend to shift over the course of the day.

After you’ve done that, you’ll have a good grasp on when your Biological Prime Time is. Use that knowledge to start tweaking your schedule.

Here’s to greater productivity!

Images: Hippo, coder

Thomas Frank is the geek behind College Info Geek. After paying off $14K in student loans before graduating, landing jobs and internships, starting a successful business, and travelling the globe, he's now on a mission to help you build a remarkable college experience as well. Get the Newsletter | Twitter | Instagram

Hey there! Please note that some links in the article may be referral links, meaning that if you buy something through them, I'll earn a commission (at no extra cost to you). This helps to support CIG, but please don't buy anything unless you truly believe it'll benefit you! You can learn more here. Thank you :)

Want to Earn Better Grades?

Did you find this article useful?

Over 150,000 awesome students are learning how to dominate their classes, get more done, and land the jobs they want - and you should too.

Join in, and I'll also send you a free copy of my book on earning better grades!

Leave a Reply

22 Comments on "Find Your Most Productive Time of the Day by Tracking Your Body’s Energy Levels"

Notify of
avatar
Sort by:   newest | oldest
Alessandro
Hey, I’ve tried your system, bro. I loved it. Just 2 weeks of tracking and I could recognize my best time to work. It has increased my productivity. Thank you also for making it so simple for us to create the energy tracking system, u r a genius! Just a little thing to say: I’ve noticed that when you duplicate the “Results (Sample)” sheet, the duplicated one (renamed “Results”) changes the content of the A2 and B2 cells. Instead of: =ARRAYFORMULA(VALUE(HOUR(‘Responses (Sample)’!A2:A))) for cell A2 and =ARRAYFORMULA(VALUE(LEFT(‘Responses (Sample)’!B2:B;1))) for cell B2, the content of A2 and B2 is respectively: =ARRAYFORMULA(VALUE(HOUR(‘Responses (Sample)’!A3:A))) for cell A2 and =ARRAYFORMULA(VALUE(LEFT(‘Responses (Sample)’!B3:B;1))) for cell B2. Notice “A3” and “B3” in the cells’ formulas, instead of A2 and B2. I think Google Sheets just transforms those formulas, for an unknown reason (in Thomas’ sheet, the formula is correct). It’s not a big deal, since A3 and B3 instead of A2 and B2 just means that your Form Responses enter the stat system from the 2nd one. But, if you don’t wanna leave any of your Responses out of your tracking system, modify the content of the cells A2 and B2 in the “Results” (or whatever you’ve… Read more »
f vd breggen

Hey, i’m getting a parse error on the 2 formulas. Any idea what the problem is?

Molly

Thanks so much! Your instructions were super clear. I was looking everywhere for an Android app that would do this, but couldn’t find one I liked that was this easy and included hourly (instead of daily) graphing. Maybe I’ll have to make one someday. 🙂

Suzanne

Very helpful. Thank you so much!

Andre Heindrickson

Hey Thomas,

Just wanted to recommend an app that meets all your criteria for setting hourly reminders. It’s called Dii: https://itunes.apple.com/us/app/diii-hourly-chime-time-alarm/id1001398032?mt=8

The interface is kind of clunky, but it has a lot of great features.

Andre Heindrickson

Another heads up.

For those who have Launch Center Pro on iOS, you can set up an hourly schedule for an action that automatically opens the form.

Instead of just a notification, it pops up an alert box prompting you to do the action. I’ve found this method to be the most reliable for logging consistently.

Jussi

If you’re willing to pay a bit, here’s a simple app to help find your biological prime time on iOS: https://itunes.apple.com/us/app/body-prime-time-finder/id1123325785

Full disclosure: I created the app for my self and decided to put it on sale as an experiment. 🙂 It’s pretty simple for now, but I might add more features if people get interested.

Personally I’d be interested to log events that lead to exceptionally high levels of energy, so I could try to do more of those things.

Nick

Hi Thomas,

Could you explain please what for you are using average column and how the formula works?

Tes Scholtz

This is great! Everything works like a charm. Thanks so much for sharing, I’m hoping to find my best time OTHER than 3am! 🙂

Brian Robben

Love how you did 90% of the work for your readers and made this system simple.

Question, do you think people have a genetic most productive time of day that is static, or can they engineer their most productive time? For example, can a “morning person” force himself to be a night owl with the same productivity, and vice versa, if they want to?

wpDiscuz
// Read This Next

How To Rock The Career Fair And Make Recruiters Love You

Want more? Join over 150,000 students and grab my free book on earning better grades  →