- Notion formulas (formula property in databases) compute values from other properties — like Excel formulas, but in Notion.
- Common uses: days until deadline, total price calculations, status tags from rules, progress bars, completion percentages.
- Notion 2.0 syntax (released 2023) is more readable, supports if/else, variables, and function chaining.
Notion Formula Basics
To create a formula:
- In a database, click + to add a property.
- Choose Formula.
- Name it (e.g., "Days Left").
- Click the formula editor.
- Write your formula.
- Click Done.
Common Formula Examples
1. Days Until a Deadline
dateBetween(prop("Deadline"), now(), "days")
Returns: positive number if future, negative if past, 0 if today.
2. Total Price (Quantity × Price)
prop("Quantity") * prop("Unit Price")
3. Mark "Overdue" If Past Due Date
if(prop("Deadline") < now() and prop("Status") != "Done", "🔴 Overdue", "✅ On Time")
4. Progress Bar from 0-100
let(
pct, prop("Completed") / prop("Total") * 100,
format(pct) + "% " + repeat("█", floor(pct / 10)) + repeat("░", 10 - floor(pct / 10))
)
Renders: 60% ██████░░░░
5. Format Currency
"$" + format(prop("Amount"))
6. Extract Year from Date
year(prop("Created"))
7. Time Elapsed Since Created
dateBetween(now(), prop("Created"), "days")
8. Concatenate First + Last Name
prop("First Name") + " " + prop("Last Name")
9. Word Count
length(split(prop("Text"), " "))
10. Conditional Status Emoji
if(prop("Status") == "Done", "✅",
if(prop("Status") == "In Progress", "🚧",
if(prop("Status") == "Blocked", "🚫", "⏳")
)
)
Notion Formula 2.0 Syntax (2023+)
Notion released a new formula syntax in 2023. Key features:
- let() function — store variables for reuse.
- Method chaining —
prop("Name").upper()instead ofupper(prop("Name")). - Lists / Maps — work with arrays of values.
- filter() and map() — list operations.
Notion Formula Cheat Sheet
| Function | Example | Result |
|---|---|---|
| now() | now() | Current date + time |
| today() | today() | Today's date (no time) |
| year() | year(prop("Date")) | 2026 |
| month() | month(prop("Date")) | 5 (May) |
| day() | day(prop("Date")) | 2 |
| dateBetween() | dateBetween(end, start, "days") | Number of days |
| dateAdd() | dateAdd(now(), 7, "days") | 7 days from now |
| format() | format(123.45) | "123.45" |
| length() | length("hello") | 5 |
| upper() | upper("hello") | "HELLO" |
| lower() | lower("HELLO") | "hello" |
| contains() | contains("hello world", "world") | true |
| replace() | replace("abc", "b", "x") | "axc" |
| slice() | slice("hello", 0, 3) | "hel" |
| concat() | concat("a", "b", "c") | "abc" |
| round() | round(3.7) | 4 |
| floor() | floor(3.7) | 3 |
| ceil() | ceil(3.2) | 4 |
| abs() | abs(-5) | 5 |
| min() / max() | min(3, 5) | 3 |
Common Notion Formula Patterns
Time Tracking — Total Hours
dateBetween(prop("End"), prop("Start"), "hours")
Goal Progress as Percentage
format(round(prop("Done") / prop("Goal") * 100)) + "%"
Star Rating Display
repeat("⭐", prop("Rating")) + repeat("☆", 5 - prop("Rating"))
Days Since Last Contact (CRM)
dateBetween(now(), prop("Last Contact"), "days")
Auto-Tag by Date
if(dateBetween(prop("Date"), now(), "days") < 7, "Recent", "Old")
Limitations of Notion Formulas
- Can't reference other databases — only properties in same database (use Relations + Rollups for cross-DB).
- No regex — limited to simple string operations.
- Limited iteration — no traditional loops (use map/filter on lists).
- Performance — complex formulas in large databases (1000+ rows) can lag.
Frequently Asked Questions
Are Notion formulas like Excel?
Conceptually yes — both compute values from other cells. Notion formulas are simpler and integrated with database properties.
Can I use formulas in non-database pages?
No — formulas only work in database property columns. For text inline, you can use math equations or rich-text formatting.
How do I show formula results as a status badge?
Use if/else returning emoji or formatted strings. Then display the formula property in a table or board view.
Can I import Excel formulas to Notion?
Not directly — Notion formulas have different syntax. You'll need to manually rewrite. Tools like notionformulas.com help convert common patterns.
Can formulas reference data in another Notion database?
Indirectly via Relations + Rollups. Set up a Relation, then use Rollup to bring in values, which formulas can compute on.
Key Takeaways
- Add a Formula property to any database for computed values.
- Common uses: deadlines, progress, totals, conditional status.
- Notion 2.0 syntax: let() variables, method chaining, filter/map.
- Limitations: no cross-database references, no regex, slows on 1000+ rows.
- Use formula libraries (notionformulas.com) for inspiration.
Sell Notion templates with formulas built-in
Add a UniLink URL to your bio — features your premium Notion templates with advanced formulas. Free with click analytics.
