Notion Formula Cannot Use Person Property: Workaround
🔍 WiseChecker

Notion Formula Cannot Use Person Property: Workaround

You have a Notion database with a Person column, and you want to reference that person in a formula. However, when you write a formula that tries to read the Person property, Notion returns an error or empty result. This happens because Notion formulas cannot directly access Person, Created By, Last Edited By, or Date properties created by those user fields. This article explains the exact technical limitation and provides a reliable workaround using a Select property and a linked database.

Key Takeaways: Notion Person Property in Formulas

  • Person property in formula causes error: Notion formulas cannot read Person, Created By, or Last Edited By fields directly
  • Workaround using a Select property: Create a Select property with the same person names and reference that in the formula instead
  • Linked database for automation: Use a linked database view with a Rollup property to avoid manual updates

Why Notion Formulas Cannot Read Person Properties

Notion formulas operate on a restricted set of property types. The formula editor only supports Text, Number, Date, Checkbox, Select, Multi-Select, Relation, Rollup, Formula, and File & Media properties. Person, Created By, Last Edited By, Created Time, and Last Edited Time are intentionally excluded from formula input.

This limitation exists because Person properties are tied to user accounts and workspace membership. Notion formulas are evaluated on each database row independently, and the formula engine does not have access to the workspace user directory. The formula cannot resolve a user ID to a name or email address, so it fails silently or returns an empty string.

What Happens When You Try

If you type prop("Assigned To") in a formula where Assigned To is a Person property, the formula editor will not autocomplete the property name. If you force the reference, the formula will show a red error border and return no value. The formula will not save until you remove the reference to the Person property.

Properties That Formulas Can Read

Formulas can read these property types: Text, Number, Date (but not Created Time or Last Edited Time), Checkbox, Select, Multi-Select, Relation, Rollup, Formula, URL, Email, Phone, and File & Media. If you need to use a person’s name in a formula, you must convert the Person data into a supported type first.

Workaround: Use a Select Property with Person Names

The simplest workaround is to add a Select property that contains the same person names as the Person property. You then reference the Select property in your formula instead of the Person property. This method requires manual maintenance when team members change.

  1. Create a Select property
    In your database, click the + icon in the top-right corner of the table header. Choose Select from the property type list. Name it something like Assignee Name.
  2. Add the person names as Select options
    Click into any cell in the new Select column. Type the full name of each person who appears in the Person property. Press Enter after each name. Add all names that your formula needs to check.
  3. Populate the Select property for each row
    For every existing row, manually select the correct name from the dropdown. This step is tedious for large databases, but it is required because formulas cannot read the Person property directly.
  4. Write your formula using the Select property
    Open the formula property editor. Use prop("Assignee Name") in your formula. For example, to return a priority based on the assignee: if(prop("Assignee Name") == "Alice", "High", "Normal").
  5. Test the formula
    Click Done in the formula editor. The formula should now evaluate correctly on every row. If you see an error, verify that the Select property name matches exactly and that the option text matches the person name.

Automated Workaround Using a Linked Database and Rollup

If you have many rows or frequent personnel changes, a manual Select property becomes impractical. You can automate the process by creating a separate database that maps Person names to a Select value, then use a Relation and Rollup to bring that value into your formula.

  1. Create a Person Mapping database
    Create a new database in the same page. Add a Title property and a Person property. In the Title column, enter each person’s name exactly as it appears in your main database’s Person field. In the Person column, select the same person from the workspace member list.
  2. Add a Select property to the mapping database
    Add a Select property named Name for Formula. For each person, create a Select option with the same text as the Title. Select that option in the row.
  3. Create a Relation in your main database
    In your main database, add a Relation property that links to the Person Mapping database. Name it Person Map.
  4. Populate the Relation for each row
    For each row, open the Person Map cell and link to the corresponding row in the mapping database. This step can be partially automated with a button or by using a formula that reads the Person property — but that formula cannot exist in the main database. Instead, use a manual or script-based approach for initial setup.
  5. Add a Rollup property to your main database
    Add a Rollup property named Formula Name. Set the Relation to Person Map. Set the Property to Name for Formula. Set the Calculation to Show original (not any aggregate function).
  6. Use the Rollup in your formula
    Now your formula can reference prop("Formula Name") and get the person’s name as a text value. Write your formula logic using this Rollup property.

Common Issues with the Workaround

Select options do not match person names exactly

Notion formulas are case-sensitive. If the Select option says “Alice” but the Person property displays “alice”, your formula will not match. Always copy the exact name from the Person column when creating Select options.

Person names change or new team members join

When a new person is added to the workspace, you must add them to the Select property options and update every row where they are assigned. The linked database workaround reduces this effort because you only update the mapping database, and the Rollup updates automatically.

Rollup returns multiple values

If a Relation links to multiple rows in the mapping database, the Rollup will return an array of values. Formulas cannot handle arrays. Ensure each row in the main database links to only one mapping row. Use a single-select Relation or enforce one-to-one linking.

Notion Formula Property Support Comparison

Property Type Can Be Used in Formula Workaround Required
Text Yes No
Number Yes No
Date Yes (not Created Time) No
Checkbox Yes No
Select Yes No
Multi-Select Yes No
Relation Yes No
Rollup Yes No
Person No Yes — use Select or Rollup
Created By No Yes — use Select or Rollup
Last Edited By No Yes — use Select or Rollup

You can now reference person data in your Notion formulas by using a Select property or a linked database with a Rollup. The manual Select method is fast for small databases with stable teams. The linked database method works better for larger databases or teams that change often. As a next step, consider using the Rollup approach and adding a button to auto-link new rows using a template or automation tool like Notion API or Zapier.