Refresh scripts
How a saved card reproduces itself, and how to keep it current.
Saving a card also generates the query that reproduces it: its refresh script. Without one, a card is a screenshot; with one, it is a live number.
The script lifecycle
| Status | Meaning |
|---|---|
| Pending | Generation queued |
| Ready | The script runs and returns the expected shape |
| Failed | Generation or execution failed; the card shows its last good value |
A card whose script never reached Ready is still readable: it just will not update.
Auto-refresh
Cards can refresh on an interval, from manual up to hourly. Pick the slowest interval that still answers the question: every card on an interval is a query against your database on that interval.
Data as of
Every card carries the timestamp of its last successful refresh. This is the single most important thing on a dashboard: it is what separates "churn is 4%" from "churn was 4% last Tuesday".
Regenerating
If a schema change breaks a script, regenerate it rather than editing the card. The generator reads the current config, so a regenerated script reflects the schema as it is now.