> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://uploadcare.com/docs/llms.txt.

# Limits and moderation

> The three controls that can stop an AI Image Editor request, and how content moderation handles prompts.

> **Info**
>
> AI Image Editor is in public beta, so costs and limits may change.

Three separate controls can stop an AI request, and every prompt goes through content moderation.
For what each action costs, see [AI Operations billing](/docs/ai-image-editor/ai-operations/).

## Limits \[#limits]

Each control returns its own error, described in [Error handling](/docs/ai-image-editor/errors/).

| Control                 | Applies to                                      | Set in                                                                                                          | When reached                             |
| ----------------------- | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |
| Workspace request limit | All projects in the workspace, rolling 24 hours | Your plan, or a lower value in **[Billing > Usage control](https://app.uploadcare.com/billing/#usage-control)** | HTTP 429, `derivative_quota_exceeded`    |
| Token operations        | One auth token, for its lifetime                | The token's operations claim                                                                                    | HTTP 403, `OperationsLimitExceededError` |
| Project AI toggle       | One project                                     | **[Project settings > AI](https://app.uploadcare.com/projects/-/settings/#ai)**                                 | HTTP 403, `derivative_disabled`          |

### Workspace request limit \[#workspace-request-limit]

* Each generate, edit, or upscale is one request, whatever its size.
* A request counts for 24 hours after it's made, so the limit never resets at a fixed time.
* By default, the limit is the plan maximum: 50 requests on Pro, 200 on Business, and the contract value on custom plans. The workspace owner can lower it in **Billing > Usage control**.

### Token operations \[#token-operations]

* Each AI request spends 1 from the token's `uc.restrictions.limits.operations` claim, whatever its AI Operations cost.
* Uploads signed with the same token, for example through the File Uploader plugin, spend from the same limit: one per uploaded file. Set the limit to cover both.
* To issue tokens, see [Signed AI image generation](/docs/ai-image-editor/integrating/#signed-ai-generation) and [Upload API authentication](/docs/api/upload/authentication/).

### Project AI toggle \[#project-ai-toggle]

* AI is on for every project by default. Turn it off in **Project settings > AI > Enable for this project**.
* Requests also return `derivative_disabled` when the plan doesn't include AI Image Editor.

## Moderation \[#moderation]

* Every prompt goes through content moderation, including requests sent straight to the API.
* A blocked prompt fails with `content_moderated`, and the editor shows the user a message about the content filter. See [Error handling](/docs/ai-image-editor/errors/).
* Blocked prompts aren't billed. See [What isn't billed](/docs/ai-image-editor/ai-operations/#what-isnt-billed).
* To remove free-text prompts entirely, turn on [presets-only mode](/docs/ai-image-editor/options/#presets-only): users pick from your presets and can't type a prompt.