---
title: 'Spend management'
description: 'Set a monthly limit on a Pro project’s on-demand usage, or turn it off, and understand alerts and pauses.'
---

import { Callout, Steps } from 'nextra/components';

# Spend management

> **Available on:** Pro projects.

A Pro project keeps working beyond its included usage, and the extra is billed as **on-demand usage** at the [on-demand rates](/docs/pricing#on-demand-rates). Spend management decides how far that can go. It's set per project, so a limit on one project doesn't affect the others in the team.



## What counts toward on-demand usage

Everything a Pro project uses beyond its [included usage](/docs/pricing#included-usage):

- API requests, database capacity and asset storage;
- agent chat turns, automation runs and agent steps;
- sandbox compute.

These **don't** count: seats, and AI model usage paid from [AI credits](/docs/billing/ai-credits). AI credits have their own monthly ceiling for automatic top-ups.

## Choose a mode

Open the project's **Settings → Spending**. The **On-Demand Usage** card has three modes:

| Mode                    | What happens beyond the included usage                                                                                                                                     |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Unlimited** (default) | Usage continues and is billed. Flexkit emails the billing contacts every $50 of on-demand usage.                                                                           |
| **Fixed**               | Usage continues up to the **Monthly Limit** you set, in US dollars. At the limit, the project is **paused** until the 1st or until you raise the limit.                    |
| **Disabled**            | No on-demand usage. The project is **paused** once it uses up its included API requests, database capacity or asset storage, and the agent stops at its monthly allowance. |

<Steps>

### Open the project's settings

Go to the project, then **Settings → Spending**. The tab appears only on Pro projects.

### Pick a mode

Choose **Unlimited**, **Fixed** or **Disabled**. For **Fixed**, enter the **Monthly Limit**.

### Save

If the project has already used more than the new setting allows, Flexkit tells you it'll be paused and asks you to confirm with **Save and pause**.

</Steps>

Team **Owners** and team members with the **Billing** role can change these settings.

## How Flexkit checks your usage

Flexkit evaluates every project's usage **every 5 minutes**. Usage that arrives between two checks still counts, so a project can go slightly past a Fixed limit before it's paused. Leave some margin if the limit is a hard budget.

The limit applies to the calendar month (UTC). On the 1st, on-demand usage starts again from zero, and a project paused by its **Fixed** limit resumes automatically.

## Alerts

Flexkit emails the team's billing contacts (the billing email, team Owners and Billing members):

| When                                                                | Email subject                                       |
| ------------------------------------------------------------------- | --------------------------------------------------- |
| The project reaches **50%, 75% and 100%** of its included usage     | _Project_ reached 50% of included usage             |
| A Fixed project reaches **75% and 90%** of its monthly limit        | _Project_ reached 75% of its monthly spending limit |
| An Unlimited project passes each further **$50** of on-demand usage | _Project_ has $100.00 of on-demand usage this month |
| The project is paused, or restored                                  | _Project_ is paused / _Project_ is no longer paused |

See [notifications](/docs/notifications) for every billing email.

## What a pause does

A paused project stops serving its GraphQL API, and its automations and agent chat stop. Studio shows a [Project paused](/docs/errors/project-paused) message and doesn't save changes. **Your data is kept.**

<Callout type="warning">
  A pause stops your application's access to Flexkit. Before choosing **Fixed** or **Disabled** for a production
  project, make sure your application handles failed API requests.
</Callout>

## Restore a paused project

How you restore a project depends on why it was paused:

- **Fixed limit reached:** raise the **Monthly Limit**, or switch to **Unlimited**.
- **On-demand usage disabled:** switch to **Fixed** or **Unlimited**, or bring usage back under the included amount. API requests reset on the 1st; database capacity and asset storage go down when you delete data.

The project is restored as soon as you save. The **Unpause** button in **Settings → General** only lifts a pause you set yourself; it can't override a spending pause. See [project lifecycle](/docs/dashboard/project-lifecycle).

## Pause a project yourself

Project Owners can pause a Pro project at any time from **Settings → General**, for example to stop all usage while you investigate something. It stays paused until someone chooses **Unpause**. See [pause deliberately](/docs/dashboard/project-lifecycle#pause-deliberately).


---

[View full sitemap](/docs/sitemap.md)
