Skip to content

Filter lists with groups and dynamic values

This guide is for app makers building in the NotionApps builder.

Use it when a list should show a working set that is more than one fixed condition — nested and / or / not groups, values that change with the person or the clock, or a value that comes from the published URL.

If you only remember one sentence:

In Filtering, add conditions and groups, pick a value type for each condition, then Publish. The live list only returns rows that match.


Job What to use
Always hide Archived Fixed value
Show each employee their store Logged-in user property
Show rows assigned to the signed-in person Logged-in user
Show related rows for the parent record Current row / Current row property (related lists on Details)
Show due today / this week / this month Today, Now, Start of week, Start of month
Show rows that match a shared link URL parameter
Combine those rules + Add group with and, or, or not

  1. Open a List (View Items) or List (Update Items) screen.
  2. Keep the right-hand inspector on Content → Filtering.
  3. Do not use Screen Visibility for “which rows appear.” Visibility only decides who can open the screen.

  1. Click + Add Filtering.
  2. Set Filter by to a property on this list’s database.
  3. Set Condition (equals, is not empty, is after, …).
  4. Set the value type (see the table below).

Value type What NotionApps compares against Typical use
Fixed value The exact value you type or pick Status is Open
Logged-in user The signed-in Users row itself Assigned To equals the current person
Logged-in user property A property on the signed-in user (Pro+) Store equals the user’s Store
Current row The parent record on a related list Assets whose Location is this Location
Current row property A property on that parent record Tasks whose Store equals the Location’s Store
Today Start of today in the app timezone Due Date is today
Now The current time Last seen is before now
Start of week Monday 00:00 (ISO week) Created is on or after this week
Start of month The first day of this month Invoice date is this month
URL parameter A query key on the published URL Store equals ?store=north

Current row / Current row property appear on related lists (a list component on a Details screen). They do not appear on a top-level nav list, because there is no parent row.


A single list of conditions is often enough. Use groups when you need parentheses.

  1. Click + Add group.
  2. Set the group connector to and, or, or not.
  3. Click + Add condition inside the group.
  4. Nest another group if needed. Groups can be 3 levels deep.

not wraps one child (one condition or one nested group) and inverts it.

Example: open North work, or anything assigned to me that is not archived:

(Store equals North AND Status equals Open)
OR
(Assigned To equals Logged-in user AND NOT Status equals Archived)

  1. Add a condition (for example Asset Name equals).
  2. Set the value type to URL parameter.
  3. Enter the Parameter name (for example store). Use a short lowercase name with no spaces.
  4. Publish.
  5. Open the published list with and without the query:
https://your-app.notionapps.com/assets
https://your-app.notionapps.com/assets?store=north

Do not use these reserved keys as filter parameter names: cache_bust, sim_user_id, debug, live.

This is not the same as Prefill Create Forms from a URL. Prefill fills fields on an Add form. URL parameter on a list decides which rows appear.


  1. Save the builder as usual.
  2. Publish.
  3. Open the live app (not only preview).
What you configured How to test
Logged-in user / user property Log in as two people with different values
Today / week / month Confirm a row that is due today appears, and yesterday does not
URL parameter Open the list with the query, then without it (expect an empty list when missing)
Current row Open two different parent Details records and confirm the related list changes

Control Who it is for What it decides
Filtering (this page) You, the maker Which rows appear on this list
In-App Filtering End users Extra chips they can change while browsing
Screen Visibility You, the maker Whether someone can open the screen at all
Data Restriction You, the maker Database-wide tenancy for every screen on that database

What you see Likely cause What to do
Everyone sees all rows Still using Fixed value, or not published Change the value type; Publish; hard-refresh
Everyone sees zero rows URL param missing, user property blank, or types do not match Add ?param=, fill the user profile, or align property types
No Logged-in user property in the menu Per-list allow switch is Off, or plan is below Pro Turn the switch On, or upgrade
No Current row in the menu You are on a top-level list Open the related list on a Details screen
Preview looks right, live does not Not published Publish again