Keep track of your habits in a flexible way

Use Airtable for your New Year's resolutions

Habits and Tracking

Like every new year, good intentions are the absolute protagonists and motivation is at its peak.

But already after a few days, the motivation drops, and the good intentions remain only a list among many.

Over the last few years, I have tried various methods and tools to track my habits and be more consistent (with mixed results).

Sometimes I was running just to be able to flag on the list what I had done and be satisfied with it (and not for having done 8km in the park) and other times I would do an activity completely forgetting to mark it.

What I understood is that the tool is important if used wisely, but it is not the fundamental part.

Sure, arriving in the evening and seeing your habit list completed and increased progression rate gives you a good dopamine hit and that's stimulating, but it's not the point.

Old method

So far, in the habits trackers I used (Google Sheets usually, some apps rarely), the columns made up the days (Monday to Sunday) and in the rows, there were the various habits.

This block was repeated weekly.

One of my old trackers
One of my old trackers

This type of tracker worked for me in part (it's subjective of course), but the fact of being forced to respect that grid for the whole year, has always created problems for me.

52 weeks is a long time and things change easily in a year.

So, I created a tracker a little different than usual.

New method

I have been trying Airtable for some time (here you can see how I use it to automatically track my projects in relation to time/earnings) and this year I decided to transfer this activity to this platform as well (previously on Google Sheets).

From Google Sheets to Airtable

The radical change is the flexibility of habits that can be added, which, as mentioned above, was the main reason for changing the model.

The base:

In this base there are 4 tables:

Habits list

As the name suggests, here you will enter the habits you want to track this year.

You don't have to enter them all right away. Because it's flexible.

Each habit (a record) has two fields that you will need to fill in (in addition to the name):

  • Star week: it's the starting week (nothing if you start from the beginning of the year)
  • Goal (week): this is the minimum number you want to achieve per week with this activity

The remaining columns are automatic:

  • Goal (year): calculate how many times you will have to do the activity in a year starting from the Start week (much more flexible isn't it?)
  • Done (year): is the number of activities already done (it is a count of another linked table)
  • Progress: is the (absolute) percentage of completion of your goal, based on the Start week.

Weeks view

It is the list of 52 weeks (53 including number 0) of 2021.

Here you don't have to fill in anything, it's a read-only table consisting of:

  • Week: the number of the week
  • Months: The relative month (or months) of the week
  • Start date/End date: start and end date of the week
  • Habits done: it is a rollup that indicates the sum of the habits completed that week
  • Rating average: it is the average rating of the week (see it soon)

There are some hidden columns that are used to do some calculations that we will see later.

Months view

It's pretty much the same as the week view, but for the months:

  • Month: the name of the month
  • Weeks: the relative weeks
  • Habits done/Rating average as above but for months

Daily habits

This is the main table.

Here you will have to add your daily habits and it has two views:

  • Weekly groups, in which each group represents a week
  • Today, where there is only the current day

This table consists of these fields:

  • Day: is the day of the year (already filled in)
  • Weeks: is the reference to the Weeks view table (automatic)
  • Habits: this is the field where you will enter the habits made (by selecting them from the list linked to the Habits list table)
  • Total: is the count of habits made that day (automatic)
  • Rating: it is the grade you give to the day. It's totally disconnected from any calculation, you may have done all the activities of the day, but maybe it was a bad day for you. It's up to you to decide how to use it.

As in any Airtable's group, you can decide to display a formula of each column in the relative header (by default I put Average for both the total and the rating).

Limits and problems

This base is not perfect and I will certainly update it several times this year (if you have subscribed to the newsletter, you will get the update when I do) but I am very curious to test it.

I have been using it for about a week now and I must say that I am happy with it.

But there are obviously some minor issues to take into consideration.

Weeks in common between months

There are 8 weeks in 2021 starting in one month, and ending in the next (nothing abnormal).

The problem is in the count of the activities of the months involved.

I tried to solve this problem in a very simple way without complicating my life (as this tool is only an indicator and will never be 100% accurate).

In the week table there are 2 hidden columns (in addition to the linked ones) which are:

  • Number of months: it simply counts the number of months connected per week
  • Double month: if the week is shared, it divides the number of habits made in half, using this formula:

In this way, on a flat-rate basis, I divide the number of activities carried out in a "shared" week between the two months.

This calculation is linked to the Months view table, in the Habits done column.

For now, it seems to be for me the fastest solution. If you have a better solution, just let me know!

Daily update

Surely, having checkboxes to flag is more immediate than selecting them from a list. No doubt.

But already after a week of use, I can say that this lack has decreased a lot.

On the other hand, I have all the flexibility I need to add and remove habits to my daily routine throughout the year and that's enough for me.

The limits of Airtable

Airtable is very powerful, but it has some limitations that can create some problems in this case.

For example, in embedded views, it does not allow editing. This was a problem for me, which I tried to solve as quickly as possible.

Since I use Notion as a daily Dashboard, I decided to embed the Today view (from the Daily habits table) in my home in order to view and remind me to update habits.

But as it is read-only, I had to put the link in the title to go to the Airtable view.

Another problem is the ease of adding habits of the day. By inserting the list of all the habits in progress above the view, following the order of the day, it is easier for me to understand what I am missing to enter and what I have already done or skipped.

My 2021 Notion dashboard

The last lack of Airtable is to not allow (natively) to use forms to update existing elements. For now, the functionality is only available for creating new records. It would have been easier.


If this all seems over-built to you, you may be right.
But this type of structure will allow you to extrapolate a lot of data, to be able to analyze everything you need (unlike a simple to-do list).
I will soon update this article with tests and experiments.

I hope you enjoyed this way of tracking habits and that you find it useful.

To copy the base, fill out the form below to receive the link (and other updates).

Airtable base ready to use

Clone the project

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.