> 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/tools/secure/revoke-mint.md).

# Revoke Mint Authority and Fix the Supply

Revoke Mint permanently removes the mint authority on your Solana SPL token in a single transaction, so no wallet can ever create new supply again. It runs from your own browser wallet on Solana mainnet. Once the transaction confirms, the total supply is fixed for good.

## What it is

Revoke Mint is a one-action tool that sets your token's mint authority to none. The mint authority is the wallet allowed to issue new units of an SPL token. While it exists, that wallet can raise total supply at any moment. This tool clears that field permanently. It touches nothing else: existing balances stay where they are and nothing is burned. If "mint authority" or "CA" are new terms, the [Glossary](/getting-started/glossary.md) has short definitions, and [Token authorities](/concepts/authorities.md) explains how mint, freeze, and update fit together.

## Why use this tool

Buyers and listing platforms treat an open mint authority as a dilution risk. As long as a project can print more tokens, holders can be diluted without warning, and that single fact sinks trust before a launch even starts. Revoking the mint authority closes that door in a way anyone can verify on-chain.

This tool is for token creators and teams who want a clean trust signal before they list, open liquidity, or hand the token to a community. It is also for anyone tidying up a token they already control and wanting to make it tamper-proof on the supply side.

## How it works (under the hood)

When you click to revoke, J Tools builds one transaction that carries a single SPL Token program `SetAuthority` instruction. That instruction targets your token mint, names the authority type as the mint authority, and sets the new authority to none. Solana's Token program checks that the signer is the current mint authority, then writes the change directly into the mint account. After it lands, the mint authority field reads as null and there is no instruction anywhere that can refill it.

The platform fee rides inside the same transaction as a separate SOL transfer to the platform wallet, so the authority change and the fee settle together or not at all. There is no path where you pay and the revoke fails to apply.

One hard requirement: you must currently hold the mint authority. If the connected wallet is not the wallet that controls the mint, Solana will reject the instruction, so the tool checks the on-chain authority first and blocks the action before you ever sign.

## When to use it (and when not to)

Use it when:

* You want to fix total supply before listing, as a trust signal for buyers.
* You hold the mint authority and want a hard guarantee of no future issuance or dilution.
* You are preparing a token for an LP or launch and want to revoke mint alongside [Revoke Freeze](/tools/secure/revoke-freeze.md) and [Make Immutable](/tools/secure/make-immutable.md).

Do not use it when:

* You still plan to mint more supply later. Revoking is final, so there is no "mint a bit more next month" after this.
* You want to reduce supply rather than cap it. That is burning, not revoking; see [Burn Tokens](/tools/token/burn-tokens.md).
* You want to remove all three authorities (mint, freeze, and update) in one shot. Use [Make Immutable](/tools/secure/make-immutable.md) instead.

Following a launch checklist? The [Rug-proof token guide](/guides/rug-proof-token.md) walks through revoking mint and freeze in order.

## Before you start

* A connected wallet ([how to connect](/getting-started/quick-start.md)) that currently holds the token's mint authority. This is the wallet that signs.
* The token's mint address (CA). Pick it with the built-in token selector.
* Enough SOL in that wallet for the network fee and a flat platform fee shown before you sign (see the [Fee schedule](/reference/fee-schedule.md)).

{% hint style="warning" %}
You must be the current mint authority. If the connected wallet is not the wallet that controls the mint, the action is blocked and you will see "Connected Wallet Is Not The Current Mint Authority." Connect the wallet that holds it, or check whether the authority was already revoked.
{% endhint %}

## Step by step

{% stepper %}
{% step %}

### Connect and paste the mint

Connect your wallet (the header wallet or an imported private key through the Wallet Source selector). Paste the token mint address into the selector.
{% endstep %}

{% step %}

### Check the authority status

J Tools reads the mint on-chain and shows a status badge: **Authority Active**, **Not Yours / Revoked**, or **Loading**, along with the current mint authority address. Confirm the badge says the authority is active and held by your connected wallet.
{% endstep %}

{% step %}

### Revoke and sign

Click **Revoke Mint Authority**. J Tools builds the transaction that sets the mint authority to null, adds the platform fee to the same transaction, and asks you to sign. Approve it in your wallet.
{% endstep %}

{% step %}

### Confirm and copy the signature

The page tracks the transaction and waits for confirmation. On success it shows the signature with **Copy Signature** and **View On Solscan** so you can verify the change on-chain.
{% endstep %}
{% endstepper %}

[**Open Revoke Mint in the app →**](https://j.tools/en/tools/revoke-mint)

{% hint style="info" %}
**About wallet warnings.** Some tools bundle several instructions into one transaction, for example creating a token and its metadata together. Phantom can show a caution banner for these transactions. The banner is expected here and does not mean something is wrong. Read what you are signing, then approve.
{% endhint %}

## The options, explained

* **Token Mint Address (CA):** The SPL token whose mint authority will be revoked. Entered through the built-in token selector, which reads the mint's on-chain authority status as you type.
* **Wallet Source:** Where the signing wallet comes from. Use the connected header wallet, or import a private key through the selector. Whichever you choose must be the wallet that currently holds the mint authority.
* **Connected wallet (signer):** The wallet that signs and pays. It must be the current mint authority on-chain. There is no separate owner field, the connected wallet is used directly.
* **Revoke Mint Authority (action button):** Builds the `SetAuthority` transaction, attaches the platform fee, and hands it to your wallet to sign. Disabled while loading, when no wallet is connected, when the mint field is empty, or when the wallet lacks enough SOL for the fee. If the badge shows the authority is not yours or already revoked, the click is blocked with an error before anything is signed.
* **Status badge:** The live on-chain read of the mint authority. **Authority Active** means it is still set and revocable, **Not Yours / Revoked** means you cannot or need not act, and **Loading** means the read is in progress.

## Fees and costs

{% hint style="warning" %}
**About fees.** Every action has two costs: the Solana **network fee** paid to validators, and the **J Tools platform fee**. The platform fee always shows in the app before you confirm, and nothing is charged until you sign. Fees can change over time, so trust the in-app summary rather than a number you saw once.
{% endhint %}

**Current platform fee: 0.1 SOL.**

| Cost                 | Amount                                                                                            |
| -------------------- | ------------------------------------------------------------------------------------------------- |
| J Tools platform fee | 0.1 SOL                                                                                           |
| Solana network fee   | a few thousand lamports paid to validators; no new account is opened, so there is no rent deposit |

On top of the platform fee, you pay the standard Solana network fee for the transaction, which is a tiny fraction of a SOL. There is no rent cost here, since the revoke writes to an existing mint account rather than creating a new one, and no account is opened.

## Common mistakes and troubleshooting

* **Connected wallet is not the current mint authority.** The wallet you are signing with does not control the mint. Connect the wallet that holds the authority, or confirm it was not already revoked.
* **Authority already revoked.** If the mint authority was set to null earlier, there is nothing left to change. The status badge shows this.
* **Wrong token selected.** Because the revoke is permanent, a slip in the mint address is costly. Confirm the CA and the status badge name your wallet before signing.

For the full list, see the [Error codes reference](/reference/error-codes.md).

## Advanced tips

* Sequence it with the rest of the lockdown. A common launch order is revoke mint, then [Revoke Freeze](/tools/secure/revoke-freeze.md), then [Revoke Update Authority](/tools/secure/revoke-update-authority.md), so the supply, the freeze power, and the metadata are all settled before liquidity opens.
* Capture the signature after it confirms. Pasting the Solscan link into your launch docs gives buyers a one-click way to verify the mint authority is revoked, which is the whole point of doing it.

## Related tools

{% content-ref url="/pages/3mfyP8upN3tiDTB59aRi" %}
[Revoke Freeze Authority](/tools/secure/revoke-freeze.md)
{% endcontent-ref %}

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

{% content-ref url="/pages/z1CV4bXSoyMhrzsOjmUy" %}
[Revoke Update Authority](/tools/secure/revoke-update-authority.md)
{% endcontent-ref %}

{% content-ref url="/pages/gclVFAjMJFchUipqQNOZ" %}
[Update Token Metadata](/tools/token/update-metadata.md)
{% endcontent-ref %}

{% hint style="success" %}
**J Tools is non-custodial.** We never store or transmit your private keys and never ask for your seed phrase. Every transaction is signed in your own browser, and nothing about a key ever reaches our servers. A few multi-wallet tools do let you paste private keys for throwaway hot wallets, which stay in your browser tab and are used only to sign locally. Never paste a key tied to long-term holdings, and if a page ever asks for your seed phrase, stop and close it.
{% 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/tools/secure/revoke-mint.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.
