Pre-send spend warning
Warns you before sending a prompt whose estimated cost exceeds a threshold you set: a per-model dollar cap for API-key billing, or a share of the rolling 5-hour rate-limit window for subscription billing. Covers where the thresholds live, when the dialog fires, and the toggle caveat.
What it is
Pre-send spend warning warns you before you send a prompt that is estimated to cost more than a threshold you set — a guardrail against firing off an expensive turn by accident. Where AI spend alerts tell you about money after it has been spent, this catches a pricey turn before it is sent.
The threshold you set depends on how you pay for AI:
- API-key users set a per-model dollar cap — if the estimated cost of the turn exceeds that dollar amount, you get a warning before it sends.
- Subscription users set a 5-hour rate-limit percentage — if the turn is estimated to consume more than that share of your rolling 5-hour rate-limit window, you get the warning.
Where to find it
Everything you set lives in Cost Control (sidebar). The "Pre-send warning" section appears below "Sessions & daily limits", and it holds three fields:
- Default cost threshold (USD) — the dollar amount that triggers a warning for any model. Leave empty to disable the dollar warning.
- Per-model overrides — click "Add model override" to set a different threshold for a
specific model (e.g.
claude-opus-4-6at $2,claude-haiku-4-5at $10). - Rate-limit warning (%) — the 5-hour utilization percentage that triggers a warning. Leave empty to disable the rate-limit warning.
The warning itself then appears as a confirmation dialog in front of the send.
How it behaves
There is no Lab toggle to turn on — the feature is shipped and live for everyone; it simply stays inert until you set a threshold.
- Set your thresholds in the "Pre-send warning" section of Cost Control, as described above.
- Send as normal. If a prompt would exceed your threshold, a confirmation dialog appears with the estimated cost, your threshold, and a "Send anyway" / "Cancel" choice. It fires on all three send paths: normal send, aside, and send-later (snooze).
A turn under the threshold sends with no interruption. In practice nothing warns until you set a threshold — because the threshold starts unset, not because of the on/off toggle.
For agents
Setting key: promptSpendWarningEnabled (now shipped), plus the threshold values (the
per-model dollar cap for API-key billing, and the 5-hour rate-limit percentage for
subscription billing).
Careful — the toggle does not gate the send path. All three send paths (useSessionSend.ts,
useSessionPanel.ts,SnoozePalette.tsx) — and the Cost Control threshold section (CostControlView.tsx) — gate onisUnreleasedFeatureVisibleInRenderer('prompt-spend-warning', settings), i.e. on visibility, not onpromptSpendWarningEnabled. Because the registry entry isstatus: 'shipped',computeVisibilityreturnstrueunconditionally, sopromptSpendWarningEnabledis inert on those paths. Concretely: a user who sets a threshold but leaves the toggle OFF still gets warning dialogs on every send. This is exactly the shipped-flag/visibility conflation the registry's own comment warns about ("Conflating the two is what made the shipped Cross-Device Sync toggle inert") — so if the toggle is meant to gate behaviour, the send paths must read the setting, not the visibility helper.
Related
The page that covers what happens after the money is spent is ai-spend-alerts.md — after-the-fact spend cards and the daily spend digest — and api-keys.md explains how API-key billing and provider keys are managed, which is what decides whether you set a dollar cap or a rate-limit percentage. cost-control.md is the panel both this warning and the daily limits are configured in, so read it if you are setting the thresholds for the first time.
Last verified 2026-09-23