Pricing
Plans, monthly quotas, rate limits, and how cost_units map to /agent/ask calls.
Each plan bundles a monthly quota of billable requests, a per-minute
rate limit, an active-API-key cap, and a support tier. Every
successful /agent/ask debits one or more cost_units from your quota;
everything else (/health, validation errors, rate-limited rejections,
server errors) is free.
Plans
| Plan | Price | Monthly quota | Rate limit | Modes | Active API keys | Support | SLA |
|---|---|---|---|---|---|---|---|
| Starter | $49 / month | 10,000 | 60 / min | fast, smart | up to 30 | Best-effort email | - |
| Pro | $299 / month | 100,000 | 60 / min | fast, smart, max | up to 100 | Standard email | TBD |
| Enterprise | Custom - talk to sales | from 1,000,000 | 300 / min | fast, smart, max | up to 100 | Dedicated | Contractual |
Quotas reset at the start of every Stripe billing period (monthly).
Enterprise quotas can be tuned per contract via a plan_quota_override
on the subscription row - the values above are the defaults.
Accounts without an active subscription show the Starter active-key cap (30) on the dashboard until they re-subscribe; key creation itself remains gated on an active subscription.
What each mode does
/agent/ask accepts three intelligence tiers via the mode field:
| Mode | cost_units | Required plan | What it's for |
|---|---|---|---|
fast | 1 | Starter+ | Quick responses with standard reasoning and core market knowledge. Good for asset checks, narrative pulses, and high-volume financial Q&A. |
smart (default) | 2 | Starter+ | Stronger reasoning over complex financial questions, with deeper market context. Good for technical analysis, trade setups, and fundamental stock research. |
max | 8 | Pro+ | Neurobro's most capable tier: deep multi-asset investigations, fundamental analysis with broad market coverage, and the highest-stakes research. Calling max from a Starter key returns 403 mode_not_in_plan. |
When you don't pass mode, the server defaults to smart. See the
Billing guide for examples of how cost_units debit
your quota.
What counts against your quota
Only successful /agent/ask responses are billable. Concretely:
| Outcome | Charged? |
|---|---|
200 from /agent/ask | ✅ debits cost_units |
200 from /health | ❌ free |
4xx (auth, validation, billing) | ❌ free |
5xx (server, capacity) | ❌ free |
cost_units today
Modes cost different amounts: fast = 1, smart = 2,
max = 8 per call. The contract is the cost_units field on
every successful response - that number is what gets debited from
your monthly quota.
Read usage.cost_units on every successful response - that field is
the source of truth for what you were charged.
Worked example
A few concrete monthly volumes, assuming an even mode mix would be
unrealistic - real usage skews. The table below assumes all smart
(the default, 2 units / call):
| Daily traffic | Monthly cost units | Fits Starter (10,000)? | Fits Pro (100,000)? | Fits Enterprise (1,000,000)? |
|---|---|---|---|---|
| 100 calls / day | ~6,000 | ✅ 60% used | ✅ 6% used | ✅ <1% used |
| 1,000 calls / day | ~60,000 | ❌ exceeded | ✅ 60% used | ✅ 6% used |
| 10,000 calls / day | ~600,000 | ❌ exceeded | ❌ exceeded | ✅ 60% used |
Some patterns to anchor on:
- A side project running
~50smartcalls/day burns~3,000cost units a month - well inside Starter. - A live product feature at
~500smartcalls/day burns~30,000/ month - needs Pro. - A
max-heavy research workflow at~100calls/day burns100 × 8 × 30 ≈ 24,000cost units / month - Pro covers it comfortably (andmaxis Pro+ only).
The contract is always the cost_units field on each response - that
is the authoritative debit amount.
When you hit a limit
| Status | Cause | What to do |
|---|---|---|
429 | Rate limit exceeded for the current minute. | Honour Retry-After. See the Rate limits guide. |
402 | No active subscription, quota exhausted, or payment failed. | Open the dashboard → Billing. See the Errors guide. |
403 mode_not_in_plan | Selected mode isn't available on your plan (e.g. max on Starter). | Pick a lower mode, or upgrade to Pro. |