Skip to content

Recalculate calculated properties

Use this guide when a formula or rollup is blank, stale, zero, capped, or different from Notion’s UI. Notion still owns the recipe; NotionApps only decides whether a supported recipe should be evaluated from synced data.

  1. Share the parent database and every related database with the NotionApps integration.
  2. Sync / Reload after adding or changing formulas, rollups, relations, or target fields.
  3. Confirm related records have finished syncing.
  4. Open Builder → Databases → Calculated properties.
Label Meaning
Notion recipe Read-only definition imported from Notion.
Status Current supported, Notion-value, waiting, or unsupported state.
Depends on Fields and relations required by the recipe.
Recalculate in NotionApps On uses supported NotionApps evaluation; off uses Notion’s page value.
  1. Select the formula or rollup.
  2. Confirm the toggle is clickable.
  3. Leave Recalculate in NotionApps on.
  4. If the recipe is missing, run Sync / Reload and reopen the panel.
  5. Sync every related database.
  6. Publish.
  7. Allow background processing to complete.
  8. Open the published record and verify the result remains stable after reload.

The toggle does not immediately calculate every record in the browser. It enrolls supported fields in asynchronous background processing.

Formula support includes property references; arithmetic and comparisons; if; and, or, not; empty; now; and dateBetween for days, hours, and minutes. Supported rollups are sum, count, average, min, and max.

The following remain unsupported and use Notion’s value: formatDate, ifs, lets, style, map, filter, join, includes, length, format, and unsupported rollup functions.

Status Published behavior
We’ll recalculate this Work is eligible for background evaluation.
Using Notion’s value Toggle is off; Notion is authoritative.
Waiting on related fields Last good value is retained until dependencies are complete.
Can’t recalculate Toggle is disabled; Notion’s value is used.

Recalculate protects customer-facing sync with queue, latency, and host-load limits. Under pressure, work may be deferred. Duplicate signals are coalesced, terminal unsupported formulas stop recycling, and incomplete dependencies remain isolated until evidence changes. This protects data but means Sync completed does not guarantee the value changed in the same moment.

  1. Record the current Notion and NotionApps values.
  2. Change one source field in a test record.
  3. Sync the source and parent databases when needed.
  4. Wait for background processing.
  5. Reload the published app.
  6. Confirm the target formula or rollup changed once and remains stable.
  7. Confirm an unrelated record did not change.
  1. Toggle disabled? Read the reason. Unsupported language cannot be fixed by repeated sync.
  2. Rollup recipe missing? Share related database and Sync.
  3. Waiting on related fields? Confirm relation rows and child database are fully synced.
  4. Value uses only 25 rows? Confirm supported rollup, all related rows synced, toggle on.
  5. Value still old? Check sync health, publish state, and allow background processing.
  6. Value changes then reverts? Confirm Recalculate remains on and field is supported.

Makers cannot manually release internal retries, quarantine rows, override load safeguards, or force unsupported expressions to evaluate. Contact support with the app, database, property, example record, expected value, and actual value when supported work remains stale.