month

Learn how to use the month function in Notion formulas.

The month() function returns an integer (number) between 0 and 11 that corresponds to the month of its date argument.

month(date)

date.month()
Code language: JavaScript (javascript)

month() (and its sibling functions minutehour, daydate, week, and year) is useful for manipulating dates within Notion formulas.

month(now()) /* Output: 6 (when now() = June 24, 2022) 

/* Assume a property called Date with a current date of Jan 1, 2022
prop("Date").month() /* Output: 1 */
Code language: JavaScript (javascript)

month() can be used with other functions such as dateSubtract to change the value of a date, like so:

/* Assume the value of now() is June 24, 2022 */
dateSubtract(now(), month(now()), "months")
/* Output: December 24, 2022 */
Code language: JavaScript (javascript)

You can take this concept even further to “hard-code” any date into a Notion formula. See the section on Hard-Coding Dates into Formulas within the now article for more on how to do this.

The example database below determines each person’s next birthday based on their Birth Date, as well as the current date.

Screenshot taken Sept 1, 2022.
Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.
A new tool that blends your everyday work apps into one. It’s the all-in-one workspace for you and your team
thomasfrank.notion.site
dateAdd(
    prop("Birth Date"),
    year(
        now()
    ) -
    year(
        prop("Birth Date")
    ) +
    if(
        month(
            prop("Birth Date")
        ) == month(
            now()
        ) and date(
            prop("Birth Date")
        ) >= date(
            now()
        ) or month(
            prop("Birth Date")
        ) > month(
            now()
        ),
        0,
        1
    ),
    "years"
)
Code language: JavaScript (javascript)

Here’s the logic behind this formula:

  • Start with the birth year.
  • Add a number of years to it using dateAdd, determined by the year output of now minus the birth year itself (E.g. 2022 – 1991 = 31).
  • Determine if the person’s birthday has already happened this year. If not, add one more year (since we’re determining their next birthday).

To check whether or not the person’s birthday has already happened, we use an if statement and multiple comparisons using comparison operators. If one of the following is true:

  • The current month and the birth month are equal AND the current day of the month (determined with date) is equal to or later than the birth date’s day of the month
  • OR the birth month is later than the current month

…then this indicates that the person’s birthday has NOT yet happened this year. Therefore, we add 0 to the count.

Otherwise, we add 1 to the count.

Good to know: The or operator has a lower operator precedence than the and operator, meaning that any “and” comparisons will be executed before the first “or” comparison.

Other formula components used in this example:

dateAdd – Thomas Frank
thomasjfrank.com
date – Thomas Frank
thomasjfrank.com
now – Thomas Frank
thomasjfrank.com
add – Thomas Frank
thomasjfrank.com
subtract – Thomas Frank
thomasjfrank.com
equal – Thomas Frank
thomasjfrank.com
largerEq – Thomas Frank
thomasjfrank.com
larger – Thomas Frank
thomasjfrank.com
About the Author

My name is Thomas Frank, and I'm a Notion-certified writer, YouTuber, and template creator. I've been using Notion since 2018 to organize my personal life and to run my business and YouTube channel. In addition to this formula reference, I've created a free Notion course for beginners and several productivity-focused Notion templates. If you'd like to connect, follow me on Twitter.

🤔 Have an UB Question?

Fill out the form below and I’ll answer as soon as I can! ~Thomas

🤔 Have a Question?

Fill out the form below and I’ll answer as soon as I can! ~Thomas