# Limits

<i class="fa-crown">:crown:</i> **Premium feature.** A reference for every cap that applies to custom commands.

## Per server

| Limit                     | Value                                |
| ------------------------- | ------------------------------------ |
| Maximum custom commands   | **25**                               |
| Free plan custom commands | **0** (the whole feature is Premium) |

When you reach 25, the dashboard will not save another one. It shows *"You have reached the maximum amount of custom commands."*.

## Per command

### Name and trigger

| Field       | Cap                                               |
| ----------- | ------------------------------------------------- |
| **Name**    | 100 characters, lowercased, unique in your server |
| **Trigger** | 100 characters, lowercased, unique in your server |

### Content

| Field                | Cap             |
| -------------------- | --------------- |
| **Response content** | 2000 characters |

### Embeds

| Limit                  | Value |
| ---------------------- | ----- |
| Embeds per command     | 10    |
| Total embed characters | 6000  |
| Embed title            | 256   |
| Embed description      | 4096  |
| Embed field name       | 256   |
| Embed field value      | 1024  |
| Embed fields per embed | 25    |
| Embed footer text      | 2048  |
| Embed author name      | 256   |

### Link buttons (in embeds)

| Limit               | Value          |
| ------------------- | -------------- |
| Rows per command    | 5              |
| Buttons per row     | 5              |
| Buttons per command | 25             |
| Button label        | 80 characters  |
| Button URL          | 512 characters |
| Button type         | Link only      |

## What happens when you reach a cap

* **25 commands:** Saving another is refused with the message above.
* **Character caps on content or embeds:** The dashboard will not save and tells you which field is too long.
* **Duplicate name or trigger:** Saving is refused with *"Command name already exists"* or *"Command trigger already exists."*.

## Related

{% content-ref url="/pages/ubV1L6dUEUGdjD9IyaxC" %}
[What custom commands are](/docs/custom-commands/overview.md)
{% endcontent-ref %}

{% content-ref url="/pages/exzL4IxFJ6d9jWNjp6BF" %}
[The premium-only feature list](/docs/premium/feature-list.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ticketking.xyz/docs/custom-commands/limits.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
