> For the complete documentation index, see [llms.txt](https://docs.j.tools/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.j.tools/concepts/authorities.md).

# Mint, freeze and update authorities

Every SPL token carries a set of keys called authorities. Each one is a wallet address that holds a specific power over the token: minting new supply, freezing accounts, or editing the metadata. When you create a token, those authorities point at your wallet by default. You can keep them, hand them off, or remove them entirely.

Removing an authority is called revoking it. Once revoked, the power is gone for everyone, including you. That permanence is the reason buyers care so much about it. J Tools gives you one tool per authority ([Revoke Mint](/tools/secure/revoke-mint.md), [Revoke Freeze](/tools/secure/revoke-freeze.md), [Revoke Update Authority](/tools/secure/revoke-update-authority.md)) plus [Make Immutable](/tools/secure/make-immutable.md) to clear all three at once.

```mermaid
flowchart TD
    M["Mint authority"] --> MC["Can mint new supply"]
    F["Freeze authority"] --> FC["Can freeze holder accounts"]
    U["Update authority"] --> UC["Can change metadata"]
    MC -->|revoke| R
    FC -->|revoke| R
    UC -->|revoke| R
    R["Revoked: permanent, cannot be undone"]
    class M,F,U,MC,FC,UC soft;
    class R brand;
    classDef brand fill:#EF2A2A,stroke:#EF2A2A,color:#ffffff,font-weight:bold;
    classDef soft fill:#1f2937,stroke:#374151,color:#e5e7eb;
```

{% hint style="danger" %}
**This cannot be undone.** Once this transaction confirms on-chain, there is no way to reverse it. Check every field before you sign.
{% endhint %}

## The three authorities

There are three authorities that matter for a normal token. Two live on the mint account itself (mint and freeze), and one lives on the metadata account (update). They are independent, so you can revoke any of them without touching the others.

{% tabs %}
{% tab title="Mint" %}
The **mint authority** is the only key allowed to create new supply. Whoever holds it can mint more tokens at any time and send them anywhere.

While this authority is live, the total supply is not fixed. A holder has no on-chain guarantee that the number of tokens will not grow. Revoking it locks the supply forever, so the amount in circulation is the amount that will always exist.
{% endtab %}

{% tab title="Freeze" %}
The **freeze authority** can freeze any individual holder's token account. A frozen account cannot send or receive that token until it is unfrozen.

This power exists for legitimate reasons (regulated assets, compliance), but for a community token it is a red flag. If the freeze authority is live, the team could freeze a buyer's wallet at will using a tool like [Freeze Account](/tools/secure/freeze-account.md). Revoking it with [Revoke Freeze](/tools/secure/revoke-freeze.md) means no balance can ever be locked.
{% endtab %}

{% tab title="Update" %}
The **update authority** controls the token's metadata, its identity (name, symbol, image). Whoever holds it can rewrite those fields after launch.

A live update authority means the displayed identity is not final. A token could be created looking like one thing and edited into another. Revoking it (also called making the metadata immutable) freezes the identity for good.
{% endtab %}
{% endtabs %}

## What each authority controls

At a glance: the power each authority grants, and what changes the moment you revoke it.

| Authority | What it controls                                    | Effect of revoking                                                               |
| --------- | --------------------------------------------------- | -------------------------------------------------------------------------------- |
| Mint      | Creating new supply of the token.                   | Supply is locked. No one can ever mint more, so the circulating amount is final. |
| Freeze    | Freezing and unfreezing individual holder accounts. | No account can be frozen. Balances stay free to move for everyone.               |
| Update    | The token's identity, its metadata.                 | Identity is locked. Those fields can never be edited again.                      |

{% hint style="danger" %}
Revoking is one-way. There is no button to restore an authority and no way to re-issue it. Make sure the supply, metadata, and account state are exactly how you want them before you revoke. That irreversibility is what makes the guarantee credible, but it also means a mistake sticks.
{% endhint %}

## Why revoking builds trust

A holder cannot read your intentions, only the on-chain state. Authorities are that state. They answer the questions a careful buyer asks before they put money in.

* **Can the supply be inflated?** A live mint authority means yes. Revoke it and the answer becomes a hard no, verifiable by anyone.
* **Can my wallet be frozen?** A live freeze authority means the team could lock you out. Revoke it and that risk is off the table.
* **Is the token I see today the token I bought?** A live update authority means the identity can change. Revoke it and those fields are permanent.

Token scanners, explorers, and trading bots all check these flags. A token with mint and freeze revoked reads as safer at a glance, which is why most serious launches lock authorities before opening liquidity. Trust here is a fact anyone can verify, not a promise. You can decide each one individually, or remove all three in a single action with [Make Immutable](/tools/secure/make-immutable.md).

[**Lock all three authorities in the app →**](https://j.tools/en/tools/make-immutable)

## When to keep an authority

Revoking is not always the right move at the moment of creation. Sometimes you want to keep a power for a while.

{% stepper %}
{% step %}

### Keep mint if supply is not final

If you plan a later mint (staged emissions, a treasury top-up, a second round), keep the mint authority until you are done. Revoke it once the supply is settled.
{% endstep %}

{% step %}

### Keep update while metadata is in flux

If the name, logo, or socials might still change, keep the update authority. Get everything right with [Update Metadata](/tools/token/update-metadata.md), then revoke.
{% endstep %}

{% step %}

### Freeze is usually safe to revoke early

Most community tokens never need the freeze authority. Unless you are building a regulated asset with a real reason to freeze accounts, revoking it early is a clean trust signal.
{% endstep %}
{% endstepper %}

The common pattern is simple: finish minting, finalize the metadata, then lock everything before you add liquidity. The [rug-proof guide](/guides/rug-proof-token.md) walks through that exact sequence.

## FAQ

<details>

<summary>Can I get an authority back after revoking it?</summary>

No. Revoking is permanent and there is no recovery path. If you might still need a power, keep that authority and revoke it later when you are sure.

</details>

<details>

<summary>Do I have to revoke all three at once?</summary>

No. Each authority is independent. Revoke just one with [Revoke Mint](/tools/secure/revoke-mint.md), [Revoke Freeze](/tools/secure/revoke-freeze.md), or [Revoke Update Authority](/tools/secure/revoke-update-authority.md), or remove all three together with [Make Immutable](/tools/secure/make-immutable.md).

</details>

<details>

<summary>Does revoking authorities stop me from trading or adding liquidity?</summary>

No. Locking authorities only removes your ability to mint, freeze, or edit metadata. Trading, transfers, and liquidity all keep working normally.

</details>

<details>

<summary>Can J Tools revoke authorities for a token I do not control?</summary>

No. You must be the current authority, signing with the wallet that holds it. If an authority was already passed to another wallet, only that wallet can revoke it.

</details>

## Related pages

{% content-ref url="/pages/gbx1RbByQOVKZzt0PQkP" %}
[Make Immutable](/tools/secure/make-immutable.md)
{% endcontent-ref %}

{% content-ref url="/pages/RqWhckocdjrI0CmkTW3v" %}
[Make your token rug-proof](/guides/rug-proof-token.md)
{% endcontent-ref %}

{% hint style="success" %}
**J Tools is non-custodial.** We never hold your private keys and never ask for them. Every transaction is built in your browser and signed by your own wallet. If any page ever asks you to paste a private key, stop, close it, and let us know.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.j.tools/concepts/authorities.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
