How to Build a Habit Tracker in Notion from Scratch

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
in this video I'm going to teach you how to build a habit tracker and notion at five levels of complexity we'll start from the absolute Basics with a to-do list style habit tracker eventually work our way into databases and finally at level five end up with an extremely Advanced habit tracker with a daycore property and a street counter that counts both your current streak for each habit and the longest streak I'm going to show you each and every step that goes into building at each of these levels every single level is going to be a fully functioning habit tracker so you can go through as much of the video as you want and later in the video I'm also going to show you how to integrate this habit track into more complex systems like ultimate brain which is my template for full personal productivity so without any further Ado let's just get into building with level one which as I said is an extremely simple to-do list style habit tracker and I'm including this in the video because my friend Matt dlla actually showed me his checklist style habit tracking one time and it was literally this he had a checklist in a different app I believe it was Apple notes but basically he would check off everything he needed to do during the day and when he woke up the next day he would uncheck all those habits and check them off again so just for thoroughness I'm going to show you how to build this basically if you want to create a to-do list in notion you can use the uh back and forward bracket just like that you get it to do drink water and Bam you have yourself a habit tracker I'll go ahead and add a few more habits right now and that my friends is level one now here at level two is where I think things get actually interesting because here I actually have records of the habits that I've done for each day and I have a button up here called New Day which if I click I get a brand new record for today and and I can check these off without having to worry about unchecking them again so here is exactly how to build this very simple still habit tracker so I'm going to clear everything off here make myself a brand new page and first and foremost I'm going to type slash but to get a button here uh and I'm going to call this button new day so this is basically a template button and whenever we click it something is going to happen based on the action we choose here so what I want to do is uh insert blocks into the current page and this basically gives me like a mini version of the notion page I'm on right here where I can add as many blocks as I want so to finish this button up all we need to do is basically recreate what we saw earlier and to start that I'm going to do a slash one here to create a heading one and then I'm going to type the at symbol and I'm going to search for today and you can see here that we get these two options today March 5th 2024 which is not that useful because it would always be that date or today date when duplicated that is what I want it to be and it's always going to be the specific day when you click the button uh below that I'll do a triple Dash to create a nice little horizontal rule here and then I'll do slash 2C for two columns from there I can construct my to-do list just like I did before and I think it's on my clipboard I'm going to goe and drag a couple of them over to this column here add one more habit just so I have a nice even amount and now everything in here is going to be basically duplicated onto the page whenever I click that new button which I should actually name new day and if we want to get fancy we could also give it a nice little icon on or Emoji so I think I'm just going to give it a sun emoji that looks pretty good hit done there and now when I hit New Day there is my habit tracker for the day I can check these off and that is my habit tracker at level two here at level three things are starting to get a little bit fancier because now instead of a to-do list style habit tracker we've got ourselves a database and that means flexibility we have a gallery view here we can see all of our days as cards we can check things off just like we could earlier but we also have a table View and we can use this view if we want it we can check things off just like that so databases of our flexibility and as you'll see later on at levels four and five they also give us the ability to track stats a little bit better as well so let's build this from scratch by first and foremost deleting this sample database and creating our own just like I would normally do I'm going to type SL database as a block I'm going to choose inline and we'll call this habits and I think that is totally fine I'm going to go ahead and hide this database title and we are eventually going to end up with a gallery style database like I showed before but it's actually easier to create our properties in a table layout so that's why I'm starting with this first so I'm going to go ahead and get rid of this tags property I don't really need that and just so we have some space to work with I'm going to go ahead and make this full width for now and we'll start creating our actual habit properties so to keep things simple we are going to use checkbox properties for each habit and I'm going to use an icon to represent each one along with giving each one a name so this one I'm going to say just drink water find myself a little water icon that one looks pretty good and one cool thing you can do with table views now is you can actually basically scrunch this down to only show the icon and that is why using a representative icon is so useful here but also if I hover over it I get this nice little tool tip that shows me the name of the property as well so basically to finish out our hit tracker all I need to do here is duplicate this property and then rename each duplicate and give it a new icon to represent the Habit so for this one I'll say go for run find a nice little run icon and then I'll do that for the rest of my habits as well so at this point we now have this little Matrix of checkboxes and as I go about my day I can easily check off the habits as I'm doing them I'm going to go ahead and type at today to basically represent that this uh entry right here is for today and to make this a little bit better there are a few additional things we can add to this database before we move on to level four and actually add in some stat tracking the first thing we want to add in here is a date property so I'm going to find date right there and I'm just going to call it date and what this is going to allow us to do is actually sort our habit tracker by the date of each day so I'm going to set that as say March 5th this as the 4th this as the third and then I probably want to see the current day at the top like this so I'm going to go ahead and add a sort right here I'm going to choose date and I'm going to set this to descending order now in the case of this database we don't really need any filter criteria pretty much every Row in the database is when we're going to want to see in all the views if you wanted filters you could add them but one thing we do want to add here is a database template and we want to make that a recurring template that way we have a new journal entry that gets added every single day whether or not we remember to do it and that way if we're not tracking our habits we're not doing our habits we're going to have a record that we weren't staying on the ball so to do that I'm going to go over to this little blue arrow on the new button I'm going to click new template and I'm basically going to create a habit template but instead of giving it a normal title just in plain text I'm going to once again uh type at today and now you can see date when duplicated is an OP option here so I'm going to choose that uh and if you wanted to you could do like habit journal or something like that but I'm just going to leave it as today and then uh this actually affords us an opportunity to go beyond this simple checkbox style tracking if you wanted to you could also say come down here and add some journaling prompts if you're the kind of person who wants to note things you're grateful for or you want to observe improvements you can make in your life in your processes in your habits you want to track your workouts all that kind of stuff could easily be put on these Pages which then as a journal and a habit tracker but for now I'm just going to leave these here as templates I'm going to click out of here and I'm going to go back into this new arrow and then on the Today template we just created I'm going to set this as the default for all the views in this database and then I'm going to come back here and also set it to repeat every single day by default it's going to create the page at midnight I think that is totally fine and once I have saved this this is now a recurring template you can see this little icon right here and that means we're going to get a brand new habit journal entry every single day so we don't have to remember to create it ourselves and to finish up level three we are going to also add that gallery view we saw earlier so just to make things a little bit more fleshed out I'm going to add yesterday there to that second entry I'll go and delete this third one uh check a few habits off just like that and then I'm going to click plus here name this Gallery choose the gallery view like that and by default we're not going to see anything listed here and that is because the card preview is set to page content what we actually want to set it to is none and then we're going to go over after we hit done here to properties and we're going to add all of our habit properties so I'll skip date but I'll add all these checkbox properties and that gets us our nice little habit tracker in gallery form I might want to reorder these so uh they're basically an order of how I would do them in the day there we go we have a gallery style habit tracker if we want to we can hide this database title and that my friends is level three here level four things are getting even fancier because in addition to having a database style habit tracker we now have a little bit of actual stat tracking here in this day score column you can actually see based on the number of the check boxes we've checked we can see how we did for the day so to create this we're going to start from the end point of level three and basically start building onto it for the rest of this video and if I click into this daycore property you can see that this is basically built off of a notion formula so for the rest of this video we are basically going to be diving into a little bit of notion formula magic you're probably going to learn a thing or two about a few of the different functions in here how to use some cool little math tricks to get some really cool stats here so buckle in for that and to start things off once again I'm going to delete this example and I'm going to paste in the database that we had at the end of step three earlier in the video so we already have all of our checkboxes essentially what we need to do is basically tally up the value of each of these checkboxes and then get the average Express that as a percentage and then turn that into a nice little progress bar so I'm going to go ahead and hide the date property here it's not super useful in this view uh I'm also going to make sure that this is a full width page so we have a bit more space to work with maybe drag this over here a bit and I'm going to create a brand new formula style property which I'm going to call daycore and like I said earlier this daycore is basically just going to be uh the percentage of the checkboxes that we checked off each and every day so actually in of a calendar how about we do a chart that looks pretty good okay so to start things off I'm going to add a few lines down here just to make the page a bit longer so essentially what we want to do here is take each of these checkbox values which are currently Boolean values either true or false convert them to number scores one for true zero for false and then divide them by the number of properties which is in this case six to get our average which we can then turn into a percentage and get a nice little progress bar so to start that out we need to find out how to basically Bally turn these checkboxes into numbers and wouldn't you know it notion formulas has a great function for that so if I bring this drink protein shake property into the formula editor I have a checkbox right now if I were to uncheck it it would uncheck but if I pass it to the two number function it's going to represent that checked box as a one and as you can see if I uncheck it it turns into a zero so essentially I want to do that for all of my habit properties here and add up their number values so to do that I can just use the plus op operator to start adding I'll do shift enter to add each of these uh lines on their own line so now I'll do close watch Rings Two number plus drink water two number and so on so now I have all six of my habits here in this formula and you might be able to tell that this is one small inconvenience with doing any kind of stat tracking for habits in notion if you add more habit properties you do have to come into your formula here and edit the formula a little bit to add those new properties and also change your denominator once you do the average calculation I'll show you that in just a second but first let's back out of our formula editor here and start unchecking some boxes just to show what actually happens here so if everything is unchecked I've got zero if everything is checked I will have six let's go ahead and uncheck one of them just so we can actually see what the average calculation will do uh and to create that average calculation going back to your Elementary School math days remember that to get the average you basically add up all of the elements and divide by the number of elements so to do that we can wrap everything here in parentheses so if I go to the beginning of this line I should be able to create a opening parentheses I'm going to go and shift enter and tab all these in just so they're a bit more readable and now I can divide by six boom there is our average but this looks a little bit ugly because of the repeating three here so to round this to just two decimal places which is going to then translate to 83% in just a second we can actually use the round function so I'm going to go round just like that I'm going to add one more parentheses I think I might need and then uh a cool trick for basically rounding to specific number of decimal places is you can multiply inside the round function by 100 for two decimal places 1,000 for three decimal places and so on and then divide the entire thing by the same number so times 100 and then divided by 100 and that gets us 83 so if I hit done here I can now come into the property settings and because my formula is now outputting a number it is essentially treated as a number type property for the purposes of formatting which means I now get this number format choice and I'm going to go ahead and choose percent now we have 83% we also get the show as options so I'm going to go from number to bar and there my friends is our day score now to finish up level four we are also going to want to show this day score on our gallery view so if you come over to Gallery we can go to the uh property settings right here find that daycore property right there and then I think I actually want at the top above all my habits boom now I've got my nice little bar chart and my habits in this gallery view all right you have made it to level five this is easily the most advanced level in the video and it's going to add probably the coolest feature in the video as well which is this cool little stats area that actually shows us our current and longest streak for each and every one of these habits this is going to be I'll just tease it up front a bit of a longer formula so before I go through this formula I'm going to show you something else you can do with a advanced habit tracker like this where you have a gallery of your journal entries and a stats area I'm going to show you how you can actually integrate this into a bigger template like ultimate brain my template for complete personal productivity inside of notion I'm going to do this part up front because as you can see this formula is pretty lengthy and going through it and explaining it thoroughly is probably going to take a little bit so I want to show you how to do this part up front and it's actually not that difficult so we're going to go over to my template demos workspace here where I have a complete demo version of ultimate brain I can also link to this in the description if you want to check out ultimate brain in case you want to buy it there's also a discount code in the description as well and I'm going to go over to this ultimate brain light view that we've recently created in our ultimate brain 2.0 launch this basically gives you a complete view of everything going on your life from tasks and projects to notes and resources which are like tags in Thiago Forte's Paras system but keeps things pretty minimalistic so if you wanted to integrate a habit tracker into a view like this and note you can do this for any notion template whether it's one that I built or one that somebody else built or your own all you would need to do is create a brand new section for it so I'm going to go to this little plus icon here uh underneath this task manager View and I'm going to create myself a brand new block currently it's in this column so I'm going to drag it down and make it full width and then I'm going to create a 2c2 column row so basically I want another row of two columns one for my habit journal and one for my stat area and to create that first I'm going to give myself some labels so we'll do heading one for habits and another heading one for stats I'm going to go ahead and drag these columns over so they match with the current ones and then beneath each one I'm going to create what's called a linked database this is basically a view into a database that already exists so I'll do slash uh and I think I want gallery for both so I'm going do gallery view find my habits uh with robust stats database and then I will copy the existing gallery view and just like that I have a gallery view of my habit tracker in here but as you can see this is pretty long and if I'm running my life from a little dashboard like this I probably only want to see the gallery pages that are relevant to me today so uh to finish up this part I'm going to go into my filters and then I'm going to add to the existing rule that is already there which I will explain in a couple of minutes one more uh little rule here which is going to be where date is on or after and I think I'm going to go with yesterday instead of today so so this will basically show you today's Journal card as well as yesterday's and that's just useful in case you forgot to check out a habit yesterday you can easily check it off from here if you didn't want that just set the filter to today and finally to bring in our stats we can also bring in little Gallery block we'll find our stats database and I'm also going to bring in that gallery view so just like that you now have a full habit tracker and habit stats area alongside your projects alongside your task manager and alongside your notes and your resources giving you a single page to basically manage your entire life if you are curious about ultimate brain which comes with this light dashboard along with a bunch of other Advanced features you can go over to Thomas JF frank.com brain there is also a discount code in the description down below I'll talk a little bit more about some of those more advanced features at the end of the video but for now let's go over to our level five and actually start building this stat tracker so as I mentioned before this is going to involve kind of a longer formula I think you're going to come out of the rest this video as pretty much a notion formula expert but before we can even make this formula we have to do something else so we are going to go right on back to level four and we're actually going to build on top of level four to create this stat tracker and get ourselves to level five which will be not just habits with daily stats but habits with streaks so to start this process off I'm going to enter down do a little 2C action to create two columns I'm going to bring our table view into this column here and I think I'll actually label these as well so let's do slh1 for habits drag that block down into this column and then over here we'll do slh1 for stats so to start this off I'm going to go ahead and create a brand new database so let's call this database uh called stats in fact I'll call it stats to just so I don't get confused with the other existing stats database um and I'm going to go ahead and get rid of all but one page in here so this page is also going to be called stats itself and this is what I call an aggregator row inside of notion so to get streak tracking inside of notion or any kind of like Data Tracking that is basically running calculations on multiple Pages at once we need to relate all those pages to a common stats page or an aggregator page so that is what this stats page is going to be doing and it does not need a tags property so I'm going to go ahead and get rid of that as well uh but it does need a relation property so I'm going to go ahead and open up the stats page here for whatever reason I hid that tags property instead of deleting it so I'll delete it right there uh and I'm going to create myself a relation property now I have a whole uh notion database beginners tutorial with a whole section on how relations work if you want to understand deeply I will link to that in description below uh but basically we are just linking two databases together and that's going to allow us to relate specific rows or pages in those databases to this page almost like a task and project relation or a parent and subtask relation so I'm going to add this relation but I'm also going to show it on habits one here let's call this stats uh and now I've got this relation property here in stats but I also have the relation property on every Row in the habits database so the next thing I want to do is relate these rows to the stats database just like that I'll do the same thing for yesterday and then the next thing I want to make sure to do is ensure that every single new page that gets created in the habits database is also related to this stats page they all have to be related to the stats page in order for this to work so to do that we're going to do two different things first we're going to come into our today template that we created earlier we're going to edit it and we are going to set the stats relation to Stats that way all of our automatically created pages are going to automatically have that relation already then we're also going to come into our filter criteria which is right here we're going to create an advanced filter just because that's my preference and we're going to say where stats contains stats I'll save that for everyone that that way as you can see if I manually create any pages in this database they are also going to have this relation so now we've basically ensured that no matter how a page is created it's going to have this stats relation and we're going to see every single one of our habit records in this relation here and that is what's going to enable us to do our calculations and that's actually the only additional property we need beyond our streak tracking formula property so we are now ready to basically start coding and to get ourselves prepped I'm actually going to go ahead and move every everything down below the stats area uh and get rid of this second column just for now that way we have a bit more space to work I'm also going to hide this property here and we're going to create ourselves a formula property called water so essentially we're going to create a streak tracking property for each one of our habits but luckily we'll be able to copy and paste almost all of the code from our first Formula property into all the other ones and then just change the property reference for the Habit we're trying to check so again when we're using notion for habit tracking there is a bit of manual work to set up each of our habits but once it is set up it's pretty easy to use from then on so uh now we can go into our formula editor and actually start building our streak tracking formula now this used to be way harder to do with notion formulas 1.0 in fact it might not have been possible or if it was you had to use some crazy Regular Expressions now the formula uh which I can kind of just preview for you if I drag this over here onto the screen uh is a little bit long but if we start breaking it down it's actually not that complex and the worst part of it is right here just conceptually so we're going to start there and again we're going to start from the ground up and by the end of this you're basically going to be a notion formula expert so before we start coding let's think about what we actually need to do here we want to get both the current and the longest streak for each habit which means we need to start out by getting a list of the checked and unchecked habit values for each of those habits and we must make sure it's in date order so to do that let's first bring in our habits relation so this is the relation property we created and you can see that we have all of those records from our habits table listed here in fact if I come over here and I add another one uh let's just say for tomorrow uh for some reason uh and I check those off we're also going to get the tomorrow record as well you can see it right there so basically this is pulling in all of those related rows and then we can actually sort it and there's a brand new feature in the sort function that actually came out fairly recently where you can actually sort by a property value from the relation which is super nice so if I use current I can then do Dot and I can access all the properties inside a related database so in my case I want to go with date just like that uh I'm also going to go ahead and make sure to add a date to my tomorrow record make sure it's the 6th and now you can see yesterday today and tomorrow we have a date sorted list of pages but because we're Street tracking we need to start from the uh latest date not the earliest one so uh by taking this sorted value and then passing it through the reverse function we now get a reverse date order and that is basically where we can start things off now to explain this really quickly basically the sort function is operating on the entire array of pages from this habits relation so current is a keyword that represents the current page that is being operated on basically sort is going through each and every one and current represents the one that we're operating on right now which eventually is going to represent all of them so basically we're just getting the date from all of them and sorting by that date so we have now reverse now what we want to do is actually go in and get that Boolean value from each of these pages so for that we can use a function called map and this like sort is going to go through every single list item in this habits uh page array and do something but instead of sorting it it's going to do whatever we want it to do we can basically Define our own fun inside of map uh once again using current so inside of current we're going to grab our drink protein shake uh checkbox value and now you can see we actually have our Boolean values just like that and inside of map we can actually turn these into numbers so let's go two number just like that and now we have 0 1 1 so again map is operating on the entire list of values that has been spit out of this reverse function and it's doing something to every single one of them in this case it's accessing the drink protein shake Boolean value and then converting it into a number and then it's spitting out a brand new array with those modified values so at this point we have those numbers now how do we get those streak values well to make this a bit easier to understand going forward I want to bring some additional records into this table because currently we only have three and it's going to make it kind of hard to understand what's going on if we only have three so I have a few of my records from my other table down here I'm going to go a and select these bring them into our habits table just like that we'll go ahead and check off a few of these values specifically for the drink protein shake habit there so you can see we have a streak of four five six even down there uh in fact these ones are blanks I'm going to go and get rid of those and then up here we have a streak of four so ideally what we should see is a streak of four as our current streak because this is a tomorrow page in fact we can probably just get rid of it at this point and then we should see a streak of uh actually five down here and if we come back up to our stats area we can see we have a group of four1 ones then a zero and then a group of uh five ones representing our longest streak but at the moment this is just an array of numbers and we can't really use it to determine what our streaks are so we need to do something else to it first we are going to turn this into a string by using the join function and if we look at join we can see that it's going to basically take all the values of a list or an array and then uh return them as a string value with a joiner placed between each each of the values so in this case if you had an array of a b and c and you passed your comma and space as a joiner you would get a comma space b comma space c so we're going to do that but we are going to pass just a blank string as the Joiner so now we get a bunch of ones and zeros and what we can then do is pass that into the split function which basically does the opposite it splits a string based on a separator and we can use zero as the separator so now we have our streaks and because we know that everything here was already date sorted we know the first one is our earliest streak and then if we had a whole bunch of them we would know that the one that has the most ones in it would be our biggest streak in fact we can make this even more obvious by then mapping through this one more time taking current and getting the length value of it now we have four and five so at this point we know what our current streak is and we also know what our largest streak is in fact if I come over here and I make this even more obvious by taking that out of there and creating two streaks of two and then a streak of four we'll see four 22 we still know what the current one is and we still know what the largest one is they just happen to be the exact same streak so from here we can actually start building our streak counter but one small change we might want to make before we start uh actually building that out is we might want to remove today from the Street counting calculation since it might be the middle of the day and maybe you just haven't done these habits yet but you're still going to do them so to do that we can actually remove the first uh element from our array here which we know is today's habit tracking Journal by adding another function after a reverse call and that function is going to be slice and if you look at slice here we can see that is basically going to return the items of a list from the provided start index to the end index if we provide it and because arrays use what's called zerob based indexing which means that the first element is at position zero if we do slice one that is going to basically slice today's record off and return everything else so now we have a streak of two instead of a streak of four and if I uncheck today's protein shake habit we actually don't break the streak because we're not counting today we're only counting from yesterday onward into the past so now we can actually start figuring out what our streaks are and to do that I'm going to copy all this I'm going to cut it and I'm going to start creating some variables so we use the lets function which basically allows us to create really handy variables inside of notion formulas uh if we come down here we can see it in the functions area essentially it lets us name a variable and then give it a value and then name another another variable give it a value do that as many times as we want and then the final argument of the entire function is going to be what the function is actually returning and we can use those named variables in that final argument which is really really nice so to do that I'm going to start this off by creating a name called streak that's going to be our first variable and the value of that variable is going to be everything that we just wrote there is our streak and what that allows us to do is get both our current streak and our biggest streak so I'm going to come down here create another variable called current streak and watch what happens if I just give current streak the value of streak and then output current streak we get 322 just like before but what if I change the value of current streak from currently just being streak itself to streak. first now it's three and that is in fact our current streak and we could use the exact same concept for the longest streak as well so instead of just outputting the current streak we can also Define ourselves another variable we'll call it longest streak and in this case instead of taking the first element of the streak array we're going to go with the max element of the streak array which is going to return the largest number of the arguments so now if we output uh longest streak as our final argument there we get three and if we come down here and make this streak bigger again make it five should be five there's our longest streak and at this point the logic is done and all we have to do now is style it and make it look pretty so to bring my existing copy back in just as a reference here I'm going to give you a preview of what we'll do first we are going to use some if then logic to figure out both the color of the little chips here that we want to have as well as whether or not this is going to say days or Day based on the plurality of our streak is it one is it two is it zero is it more than two that kind of thing so uh again it looks kind of confusing kind of intimidating maybe but once we actually get into logic you're going to see that it's actually pretty simple and uh it just maybe looks a little bit like gobble toook right now so to start this off again because I want to build these up from the ground up and sort of show you the logic before we do just start writing things linearly I am going to actually output something so I'm just going to call this current streak and then I'm going to pend our current streak value just like that you can see three but watch what happens when I pass it into this style function you can see down here I can pass uh all these different little arguments to basically make it look any way I want and the ones I want to use are C for code styling which gives it this little border this little button style here I want to use a B for bold cuz I think it looks better and then I want to use green for the color and greenore background for the background color so I basically want it to look like this but only if my streak is 2 days or longer if it's only one day I want to make it blue and if it's zero days if I've broken my streak I would like to make it red so that is why I need to use some conditional logic here so to start building our conditional logic I'm going to create yet another variable I'm going to call this CS format for current streak format and the value of Cs format is going to be whatever comes out of an ifs statement so you've probably heard of an if statement before if this then that and if statement has basically a true false condition and then it is going to have uh what it does if the condition is true and then what it does if the condition is false ifs is a little bit more flexible it says Returns the value that corresponds to the first true condition and it's an alternative to basically nesting if statements so in our case this is going to be very useful because we have three things we're checking for is our current streak less than one no well is it exactly one no well then it must be more than one we've got three checks not just two so here we're going to start by saying uh if current streak is less than one then we'll do something else if current streak is equal to one we do something otherwise if current streak is greater than one we'll do something now what exactly is something bringing back my reference in here just to make things a bit more clear each of these is going to return an array of two different values red and days blue and day green and days essentially I'm defining both the color of my little chip here as well as the plurality of days uh in one nice little block here so that is why I'm using an array here and we can just basically type out our array just like you saw it there now you can see we have an error here and that is because on my ifs statement I forgot to add a comma at the end so now that I have that we have no more error here and now we can actually use the value of Cs format to affect what is being outputed here so instead of just doing uh hardcoded values here we know we want code we know we want Bolding but this should be a variable and this should also be a variable it shouldn't always just be green so instead of green we're just going to do CS format do at and at actually lets us specify an index of a list remember that the value of Cs format is always going to be an entire list which means it has multiple values inside of it so to get our color value we want to uh do at zero remember zero based indexing and that is going to make it green in this case and then for green background we can do string concatenation to basically get the exact same thing so we'll do underscore background and then we'll do CS format do at0 plus background so it looks the exact same now watch what happens if I come down here and I break my streak now it's one now it's zero and our color is as we want it so at this point we can go and add our day or days value onto the number itself and we can basically do that by wrapping current streak in parentheses and then adding CS format at one and you can see we are lacking a space between zero and days here so let's go ahead and add spaces for all of these options and that is basically how you do streak tracking inside of an ocean habit tracker so to finish this out we are going to add our longest streak as well and we can probably do some copying and pasting for that and then we will clean things up so it looks basically exactly like this where we have a label for the habit and then we have things looking just like this so it looks like we actually have current inside of our formatting here we can go ahead and do that in our build as well uh and all we need to do to do that is just move the position of of our parentheses to include current streak there we go and to save ourselves some horizontal room I think I'm just going to delete streak and have it say current uh and then all we need to do is add our uh longest streak as well so just as we had CS format before we're going to have LS format I'm going to go ahead and copy that enter down create ourselves an LS format and then we're going to change all of these to a longest streak so now you can see this basically matches the Cs format as well uh and all we have to do is just come down here and pretty much copy this exact thing and modify it for our longest streak so we'll go ahead and change all of these current to longest change all these CS format to LS format and then I think I want to add a space character just to separate those two little chips finally we can go in here and add a nice little Emoji for water and actually is water what we're tracking here uh no it's protein shake so we'll do a drink instead call it protein and there is our streak track so we've got protein we can go and change this over to a gallery style database if we want to turn this from uh page content To None go back to our properties show our water property which I just now realized should be called protein instead of water and now to finish this off all we need to do is essentially duplicate this and uh change the formula just a little bit to represent each of our our habits so if we go into our stats page we can duplicate this property as many times as we want I'm just going to do it once for you here we'll call this one water give it a nice little water icon and then to modify our formula all we would need to do is come here and change this drink protein shake reference to drink water and then come down here and change our little label from protein to water so we know what we're looking at and if you wanted to add any more habits if you wanted to remove habits you would basically just come in here and adjust this so again if you want streak tracking inside of notion if you want to do that kind of more involved habit tracking you do have to do a little bit of formula magic like this each time uh if you don't want to do that there are lots of great habit trackers out there like habitica habitify there are a ton of them inside of the free uh habits at five levels of complexity template which I have linked to in the description down below as well as a little bit of information on how to actually chart your habits inside of notion I'm not going over that in this video because it does have some downsides and requires a little bit too much manual refreshing for my taste but I did include it in that template page at the very least okay so to finish this off for reies I'm going to come down here and I'm going to create my two columns one more time we will go ahead and add our stats column over here if I can find the actual column uh and then we're going to add our habits over to the left side just like we had them before get rid of this blank line right here we're going to change over to our gallery view and that my friends is level five you've got your habits here they're going to be automatically created each and every day looks like we actually still need our sort criteria so I'll go ahead and add date descending like we had before and then you're going to have your street tracking for each and every one of your habits of course you do also need to make sure to show them in this view too uh and eventually once you're finished building it it's going to look something like this or if you want it inside of a template like ultimate brain it'll be inside of your ultimate brain dashboard wherever you choose to embed it once again if you do want to manage your entire personal productivity inside of notion from task management to note taking to bookmarks to goal tracking and now even habit tracking you can check out ultimate brain over at thomasj frank.com srain it is truly a done for you productivity system inside of notion with this channel I strive to give you as much information as possible so you can build any system you want from scratch but if you do want it done for you you also want support in tutorials and lots of cool stuff coming in the future you can get your copy of ultimate brain and there's even a discount code in the description you can use as well thanks as always for watching there is also a free habit tracking template in the description that has every level we went through in this video that you can basically just swipe and play with and experiment with so check that out as well these videos right here on screen will teach you even more about notion if you are curious and I'll see you in the next one
Info
Channel: Thomas Frank Explains
Views: 25,536
Rating: undefined out of 5
Keywords: notion, notionhq, notion app, notion tips, how to use notion, notion productivity, notion templates, thomas frank explains habit tracking, habit tracking in Notion
Id: kQvAytutxsQ
Channel Id: undefined
Length: 40min 9sec (2409 seconds)
Published: Thu Mar 28 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.