Skip to main content

Overview

Insights are short, actionable observations about your finances that Sure generates nightly. Each insight spots a pattern or event in your data — a spending anomaly, a milestone crossed, a budget running over — and writes a plain-language summary so you understand what changed and why. Insights appear in the dashboard feed.

Insight types

Priority

Each insight carries one of three priority levels:
  • High — requires prompt attention (e.g. significantly over budget)
  • Medium — worth reviewing soon
  • Low — a gentle nudge (e.g. idle cash)
The dashboard feed and API response order insights by priority first, then by recency.

Statuses

active and read insights appear in the feed. Acknowledged insights can be unacknowledged — this restores them to read without treating them as new.

Accessing insights

On desktop, the Insights button appears in the left navigation sidebar. On mobile, the button appears on the left side of the top navigation bar, next to the account sidebar toggle. It shows an unread badge with a count of active insights you haven’t viewed yet. The badge updates live: it decrements when you dismiss an insight, increments when you undo a dismissal, and updates when newly generated insights arrive — without requiring a page navigation. Tapping or clicking the button opens the full insights feed and marks all active insights as read. The Insights button is only shown when preview features are enabled for your account.

Family feed and account privacy

The insights feed is shared across the whole family. An insight that names a specific account — such as an idle cash nudge — appears in the feed only while every active family member can access that account. If account sharing is revoked, a member joins the family, or the account is hidden or deleted, the insight is hidden on the next feed read if the visibility condition no longer holds. Restoring access can make it visible again if it is still active or read, rather than dismissed or expired. The idle cash generator only considers accounts every active member can see. A private account is excluded when another active family member lacks access. In a family with only one active member, an account owned by that member can qualify without a share.

Dashboard feed

The dashboard shows the three highest-priority, unacknowledged insights. Clicking an insight marks it read. Dismissing it marks it acknowledged.

Language

Insight bodies are written in your family’s locale. When an LLM provider is configured and a family member has AI enabled, Sure passes the family’s BCP 47 locale code to the model so both the LLM-generated body and the template fallback speak the same language. If no locale is set, Sure defaults to English.

API access

You can read your family’s insights via the API:
  • GET /api/v1/insights — list all visible insights
Push notification device tokens are managed separately:
  • POST /api/v1/push_subscriptions — register a device token
  • DELETE /api/v1/push_subscriptions/{id} — unregister a device token

Push subscription registration

The registration endpoint accepts an optional device_key — a 64-character lowercase hex string that identifies a specific app installation. Include it when your app generates a stable per-install identifier (for example, a UUID stored in the keychain, hex-encoded). When a token arrives with a device_key, Sure compares a SHA-256 digest of that key against the value stored for the existing subscription. If the digests match, the subscription transfers to the new user. If they do not match, registration is rejected with a validation_error to prevent one user from claiming another user’s device. Call DELETE /api/v1/push_subscriptions/{id} before the user signs out so the old subscription is cleaned up before a new one is created.

Delivery behavior

Push notifications for high-priority insights are delivered only on the hosted version of Sure. The server retries on transient APNs errors (HTTP 429 and 5xx responses) with exponential back-off up to five attempts. A 410 response from APNs means the token is permanently unregistered; Sure removes the subscription only if the token has not been re-registered since the APNs invalidation timestamp, so a prompt re-registration from the device is never incorrectly removed. Subscriptions inactive for more than 90 days are excluded from all deliveries.