On-demand usage limit is not respected

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

On demand usage billing limit is being ignored. THIS IS NOT A BILLING ISSUE, DO NOT UNLIST THIS

Steps to Reproduce

Set a usage limit and attempt to surpass it, Cursor will not stop you.

Expected Behavior

I expect the limit to be obeyed.

Screenshots / Screen Recordings

Operating System

MacOS

Version Information

Version: 3.1.17
VSCode Version: 1.105.1
Commit: fce1e9ab7844f9ea35793da01e634aa7e50bce90
Date: 2026-04-19T19:33:58.189Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Darwin arm64 25.4.0

Additional Information

Please stop unlisting this issue, it is not about a billing problem!

Does this stop you from using Cursor

Yes - Cursor is unusable

Sharing the content of the unlisted thread here for others in case they are interested:

Hi Matt,

The on-demand spend limit is designed to stop usage once you hit it, but it isn’t a single instantaneous kill switch. Two things can let usage briefly land past your cap:

An in-flight agent turn is allowed to finish**.** If an agent is mid-run when you cross the limit, its remaining tool calls are allowed to complete so the turn wraps cleanly rather than dying mid-step. Any brand-new prompt you send after that point should be blocked.

The safety net kicks in at invoice time: we reconcile against your hard limit and refund the difference, so what actually gets billed shouldn’t exceed the amount you set. In the invoice detail you’ll see a line like “Refund because the last hard limit in the month was $X, but the total cost was $Y…” when that happens.

You can take a look at your account here: https://cursor.com/dashboard/billing

And there’s a line like this:

Refund because the last hard limit in the month was $40.00, but the total cost was $47.29 (likely because of processing delays — the hard limit enforcement is not instant!). We will eat this cost for you, to ensure that your hard limit is upheld.

So this amount gets taken off your bill, so you are not charged over the $40 limit you set for on-demand usage.

Regarding the unlisting, that is a bot that looks for billing queries and directs you to [email protected] for faster service. Because I was monitoring your post I responded here as I figured that would be faster for you.

The issue with stopping instantly is more of a deliberate choice to provide a more favorable developer experience … imagine if you were in a middle of a complex git merge or a git push and it stopped in the middle of the tool call … that would be painful.

So to help smooth this friction, Cursor allows you to continue with the current tool calls (subject to an abuse limit) in the current chat. We then refund you for the overage to keep you in line with the limit.

Hope this sheds some light on the topic.