Skip to content

Budgets#

Look up the rules for budgets, spend limits, cost calculation and billing statements. For the ideas behind them, see Budget and cost concepts. For tasks, see Set a space budget and Split a Team budget between members.

All amounts are in euros (EUR).

Budget hierarchy#

Budgets are set on spaces and cascade down the space tree.

Rule Detail
The root space has no budget The root space has no budget field. Setting one, even 0, is refused. The Organization tab shows the total handed out to its direct children
Effective ceiling The lowest of the space's own budget and every budget above it. If none is set anywhere in the chain, there is no limit
No unlimited space under a budgeted parent A child of a space with a budget must have a budget too
Children add up For each space with a budget, the budgets of its children together cannot exceed it
Tighten only A budget cannot exceed the ceiling cascaded from the spaces above
Subtree floor A space's budget cannot be lower than the sum of the budgets of all spaces below it
Team with Fixed allocations A Team's budget cannot be lower than the sum of its fixed member amounts
Values On any space below the root, a budget of 0 is valid and freezes spending. Negative values are rejected. An empty budget is not 0. It means no limit, and applies only where no space above has a budget. Daily and monthly spending limits differ: they must be above zero or empty
Slack A space's own budget minus the sum of its children's budgets. Informational
Moving a space Only an Admin can move a space. The moved space and all spaces below it lose their budgets. A Team's member allocation returns to Pool
Deleting a space Its member allocations are removed with it

What each space type allows#

Space type Budget settings
Organisation (root) None
Division or Unit A monthly budget
Team A monthly budget, daily and monthly spending limits, and member allocations

Member allocation in a Team#

Mode A member's limit Constraint
Pool (default) The whole Team budget, shared by everyone No individual allocations
Fixed The euro amount set for the member Amounts together cannot exceed the Team budget
Proportion The member's percentage of the Team budget Percentages together must equal 100

A member with no allocation under Fixed or Proportion has a limit of €0 and is blocked.

Event Result
Proportion: member removed The remaining shares are scaled up so they still total 100
Proportion: member added The new member starts at 0% and is blocked until you redistribute
Fixed: member removed Others keep their amounts. The freed amount becomes unallocated.
Fixed: member added The new member starts at €0 and is blocked until you allocate

The page warns you when members are unallocated.

Budget status#

The web app reports a member's position in a space with these fields.

Field Meaning
Effective limit The limit that applies to the member. Empty means unlimited
Current spend Spend in the current month
Remaining Effective limit minus spend, never below 0
Near limit Spend is 80% or more of a non-zero limit
At limit Spend equals the limit
Over limit Spend is above the limit
Limiting space Shown when a space above yours, not your own space, is the tightest limit
  • The period is the organisation's current calendar month in its business time zone.
  • Spend counts personal-key requests for every outcome (success, cancelled and error) that has a cost. Project traffic is excluded.
  • A space above you counts the spend of everything below it.
  • Members see only their own position.

Utilisation bar#

Managers see a "Budget utilisation" bar per member.

Display Condition
Green Below 80%
Amber 80% or more
Red 100% or more
"—" Unlimited
"No allocation" Blocked (limit €0)

For a personal API key, the key's details show your budget for the key's space. The figure is per person and space, not per key. A key is in one of these states: normal, near limit (amber), over limit (red), blocked (no allocation), unlimited or unbound (no space, no bar).

What happens when a limit is reached#

ATLAS checks budgets before it sends a request to a provider. A request is refused with 429 budget_exceeded (402 with billing_error on Anthropic addresses). See Errors.

Keys that act under a space#

Four checks run in order. The first used-up check refuses the request.

Order Check Refuses when
1 Spaces above A budgeted space above yours has used its monthly budget, counting everything below it
2 Your member share Skipped if the space has no budget. Refuses when your share is €0 or your month's spend has reached it
3 Daily spending limit Today's spend in the space has reached the daily limit
4 Monthly spending limit This month's spend in the space has reached the monthly limit

A request is refused once spend reaches a limit, not only when it goes over. The business time zone defines day and month.

Keys that act under a project#

ATLAS checks project keys, and personal keys acting under a project, against the project's funding only. They never count against space budgets, and project spend is not counted in any space.

Funding mode Refuses when
Funded Nothing is allocated (add funds), or lifetime spend has reached the total allocated
Tracked A monthly limit is set and this month's spend has reached it. With no limit it is never refused

If ATLAS cannot read a project's budget position, it refuses the request with the usual budget error. The message says the position could not be determined and that this is an internal failure, not an exhausted budget.

Good to know#

  • Checks happen before the call. A running stream can overrun the limit, and ATLAS refuses the next request.
  • Every outcome that has a cost counts. For how failed and cancelled requests are costed, see Pricing and cost.
  • A model with no price set has no cost, so its usage is not counted towards any budget.

Pricing and cost#

ATLAS gives every request that reaches a provider a cost when it records the request.

Step Rule
1. Provider cost Model prices times tokens used. If a needed price or count is missing, the cost is empty
2. Currency Converted to EUR at the rate in force (see Currency)
3. Margin and fee Your contract can add a percentage margin and a flat fee per request. Both are zero without a contract
4. Billed cost Provider cost plus margin

How tokens are priced:

  • Uncached input is input minus cache-read and cache-write tokens.
  • An unset cache price falls back to the input price. An explicit 0 is free.
  • Reasoning tokens are part of output and are billed at the output rate.
  • Audio models can have a separate audio price.
  • Some models are priced per second, per character or per request instead of per token. The available units are:
Capability Units
Chat, embeddings, rerank Token, request
Transcription Token, second, request
Speech Token, character, request
  • Requests that fail or are cancelled after reaching a provider are costed on input tokens. The count is estimated if the provider reported no usage, and as reported if it did.
  • Requests the provider rejected outright with no usage have no cost. Requests ATLAS refused before reaching a provider have no cost.
  • Batch, flex and priority tiers are not supported.

Not set versus zero#

State Meaning Shown as
Not set No price. Not costed and not counted in budgets "Not set", with a warning on model lists
0 Genuinely free. The flat fee, if any, still applies A real €0.00

Cache and reasoning reporting#

  • Input is reported as uncached, cache-read and cache-write. Cache writes cost more than ordinary input and cache reads cost much less.
  • Reasoning is part of output and is reported separately.
  • Where a provider gave no breakdown, the page shows how many requests lacked one. It never shows 0 for missing data.
  • Organisations see billed cost and a single platform fee figure. Provider-side costs are not shown.

Currency#

Rule Detail
Billing currency Always EUR: costs, margins, billed cost, usage statistics, budgets and contract fees
Model currency A model's prices can be in EUR, USD or GBP. Costs are converted to euros using daily reference rates
Rate unavailable The request still succeeds, but its cost shows as unavailable and is not counted against budgets

Business time zone#

Each organisation has a business time zone, an IANA name such as Europe/Amsterdam (the default). It has these effects:

Effect
Budget periods, usage buckets, forecasts, project monthly spend and member usage start at midnight in this zone, including daylight saving
Budget enforcement uses the same zone

Admins and Owners change it on the General tab of the organisation details. For the steps, see Set the business time zone and download statements.

Billing statements#

Statement Subject When Content
Monthly invoice Organisation Live preview while the month is open, frozen as a PDF at month close AI usage through ATLAS, contract fees and a total
Your AI subscriptions Organisation At month close, only if you used your own providers A cost estimate for your own providers. "For information only. This is not an invoice."
Contract Contract revision Once, when a revision takes effect The contract as a PDF. Status Current, Superseded or Upcoming
Internal allocation Organisation At month close, only with usage What each Unit used, for charging back internally
Unit cost report Unit At month close, only for Units with usage A PDF for the Unit's managers

Monthly invoice#

Rule Detail
First period The later of the organisation's creation month (a partial month counts) and the month its first contract revision takes effect
AI usage lines One line per model and AI service, sorted by amount. Deleted or renamed models and services keep the names they had when used and carry a red asterisk and footnote
Own providers Usage of your own providers is not on the invoice
Contract fees Platform fee, seats and licence. Total is AI usage plus contract fees
Licence and seats Taken from the contract revision active at the start of the month. Seats are billed every month
Seats billed The larger of the seat limit and the month's peak number of members, times the price per seat
Licence rhythm Counts from the first billed month of an unbroken run with the same billing period. A change of period restarts it. A one-off fee is billed once
PDF titles Organisation "Invoice <Month YYYY>", project "Project cost report", Unit "Unit cost report"

Internal allocation#

  • Shows what each Unit used (the Unit and its Teams, without projects), plus "Not allocated" and "Projects" lines.
  • It is informational and has no licence or seat fees.
  • Usage in a Division, in the root space, or with no space or project is "Not allocated".
  • Units, Projects and Not allocated together equal the cost shown in Explore.
  • Closed months stay frozen, including for spaces deleted later.

Who can see statements#

Where Who
Organisation Statistics > Billing Admins, Owners and Account Managers
A Unit space's Cost reports tab Managers of that Unit
A project's statements Admins, Owners, Account Managers and the project's managers

In the web app#

Surface What you see
Space Budget tab The layout depends on the space type. See Budget tab by space type
Spaces tree "€500 / mo" or "No budget" per space, with "Set budget" or "Set allocation" (not on the root)
Members tab Managers see a "Budget utilisation" column
Personal API keys Your budget in the key's detail panel
Model lists Price columns with a native or EUR toggle
Billing Statements, contract, internal allocation and deleted projects

Budget tab by space type#

Space type Shown
Organisation root "Organisation Budget": the total budgeted and a table of direct children. Admins edit children inline
Division or Unit Own monthly budget, a status bar and a "Child Space Allocation" table with children sum, slack and own budget. The space's manager edits the child cells
Team Own monthly budget, "Spending Limits" (daily and monthly) and "Member Allocations" (Pool, Fixed or Proportion, per-member values and a warning for unallocated members)

Who edits what#

Space type Own budget Children's budgets Member allocations Spending limits
Organisation root n/a Admin n/a n/a
Division or Unit Parent manager or Admin The space's manager n/a n/a
Team Parent manager or Admin n/a The Team's manager The Team's manager
  • Root and direct-child spaces use "Budget" wording.
  • Spaces two or more levels below the root use "Allocation" wording ("Monthly Allocation", "Set allocation", "No allocation").
  • Where a parent's cap is tighter than the space's own value, the page shows "Enforced limit … capped by a parent space".

Live feedback while editing#

Message When
"Value exceeds the €X parent cap." The value is above the effective ceiling
"Capped at €X by a parent budget/allocation." A parent ceiling is tighter than the space's own value
"€X of €Y remaining" or "Exceeds €X available." Headroom left in the parent after its other children

Saving is blocked while one of these errors applies. The messages are hidden for the root space or an unbudgeted parent.

Model list prices#

Model lists show Input / 1M and Output / 1M prices. The suffix follows the billing unit (per minute, per 1K characters, per 1K requests).

  • Native shows the model's own currency. EUR shows the converted value with the tooltip "Converted from {currency} at the rate effective {date}".
  • A model with no rate in force shows the native price with a warning.
  • A model with no price shows "Price not set — usage of this model is not costed and does not count towards budgets."
  • Cache prices are optional: "Not set — billed at the input rate."
  • Filters: Status, Source (Platform or Organisation) and Pricing (Priced or Price not set). Unpriced rows sort last.