Formulas & Rollups
Notion owns formula and rollup recipes. NotionApps can evaluate supported recipes from synced records so published apps are not limited to an incorrect or capped value returned by Notion’s page API.
Use Recalculate in NotionApps
Section titled “Use Recalculate in NotionApps”- Open Builder → Databases.
- Open Calculated properties.
- Select a formula or rollup.
- Read the Notion recipe, Status, and Depends on fields.
- Leave Recalculate in NotionApps on when the switch is enabled.
- Sync every database used by the recipe.
- Publish and allow the background calculation to process.
- Verify the result in the published app.
The toggle does not create or edit a formula. Change recipes in Notion, then Sync / Reload so NotionApps receives the new definition.
Supported calculations
Section titled “Supported calculations”Formulas include property references, arithmetic, comparisons, if, and/or/not, empty, now, and dateBetween in supported units. Rollups include sum, count, average, min, and max.
Unsupported tokens such as formatDate, ifs, lets, style, map, filter, join, includes, length, and format continue to use Notion’s value. The toggle is disabled and the reason identifies the unsupported part.
Formula and rollup states
Section titled “Formula and rollup states”| State | Meaning |
|---|---|
| We’ll recalculate this | Supported and selected for NotionApps evaluation. |
| Using Notion’s value | Toggle is off. |
| Waiting on related fields | Required records or relation evidence are incomplete. |
| Can’t recalculate | Recipe is unsupported or incomplete; Notion remains authoritative. |
More than 25 related pages
Section titled “More than 25 related pages”Notion’s page API can provide an incomplete relation leaf. For supported rollups, NotionApps uses synced related records rather than treating that capped leaf as the final answer. Every related database must be shared and synced, and relation loading must complete before the result can be trusted.
Background processing
Section titled “Background processing”Recalculation is asynchronous. Queue and database-load safeguards can defer a record instead of running unsafe work immediately. Deferred work keeps its last good value. Unsupported formulas are not repeatedly forced through the evaluator, and duplicate producer signals are coalesced.
A successful Sync can create recalculation work, but Sync completion and calculation completion are separate events. Makers do not manually release blocked or quarantined records.
Published screens
Section titled “Published screens”Lists, Details, Forms, and components show the selected value source. When a supported calculation completes, subsequent page fulfillment does not replace it with Notion’s stale leaf. When Recalculate is off or unsupported, Notion’s value remains visible.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Action |
|---|---|
| No Calculated properties section | Add a formula/rollup in Notion, share database, sync. |
| Toggle disabled | Read unsupported/missing-recipe reason. Sync can load a recipe but cannot add unsupported language features. |
| Value remains old | Sync all dependencies, verify relation completeness, and allow background processing. |
| Rollup differs from Notion UI | Confirm all related rows/databases are synced and the function is supported. |
| Recipe changed but status did not | Sync / Reload, reopen Calculated properties. |
| Preview differs from live app | Publish and reload the live app. |