> 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/liquidity/raydium-clmm.md).

# Raydium CLMM

[Raydium CLMM](https://j.tools/en/tools/raydium-clmm) opens a concentrated liquidity position on Raydium's CLMM from a single screen. You pick the token pair, set the initial price and the price range, choose a fee tier, enter the deposit amounts, then sign one transaction. The position comes back as an NFT, with a pool ID you can save.

```mermaid
flowchart TD
    A[Pick Token A and Token B] --> B[Set the initial price]
    B --> C[Set lower and upper bounds]
    C --> D[Pick a fee tier and amounts]
    D --> E[Sign one transaction]
    E --> F[Position NFT is live]
    classDef brand fill:#EF2A2A,stroke:#EF2A2A,color:#ffffff,font-weight:bold;
    classDef soft fill:#1f2937,stroke:#374151,color:#e5e7eb;
    class A,B,C,D,E soft;
    class F brand;
```

{% 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 %}

## When to use this

* You want to focus your liquidity inside a price band instead of spreading it across the full curve, so each dollar earns more in fees while the price stays in range.
* You run a token pair on Raydium and want a tighter, more capital-efficient pool than a standard AMM.
* You prefer setting the range, fee tier, and amounts on one screen rather than walking through the Raydium UI.

If you want a simpler full-range pool or another DEX, use [Create LP](/tools/liquidity/create-lp.md). To top up or pull from a pool that already exists, use [Add or Remove Liquidity](/tools/liquidity/liquidity-add-remove.md). For how concentrated liquidity and fee tiers fit into the wider AMM picture, see [DEXes and liquidity](/concepts/dexes-and-liquidity.md).

## Before you start

* A connected wallet ([how to connect](/getting-started/quick-start.md)). The page asks you to connect before it will create the position.
* Enough SOL for the platform fee, account rent, and the Solana network fee.
* The two mints of your pair, Token A and Token B. You can pick each from the token selector or paste the mint address.
* A clear idea of your initial price and the lower and upper bounds you want, since the range has to straddle the price.

## Step by step

{% stepper %}
{% step %}

### Connect and set the token pair

Connect your wallet at the top of the page. Then set Token A and Token B with the mint selector. Each side accepts a paste of the mint address, and the two cannot be the same token.
{% endstep %}

{% step %}

### Enter the initial price

Type the initial price for the pair. This is the price the position is centered on, expressed as Token B per Token A.
{% endstep %}

{% step %}

### Set the lower and upper bounds

Enter the lower and upper price of your range. The lower bound has to sit below the initial price and the upper bound above it, otherwise the create step is rejected. The page shows the range width as a percentage so you can gauge how tight you are going.
{% endstep %}

{% step %}

### Pick a fee tier

Choose one of the four swap-fee tiers: 0.01%, 0.05%, 0.25%, or 1%. Lower tiers suit stable pairs, higher tiers suit volatile or thinly traded ones.
{% endstep %}

{% step %}

### Enter the deposit amounts

Set the Token A amount and the Token B amount you want to deposit into the position. Both have to be above zero.
{% endstep %}

{% step %}

### Review the preview and fee

When the price and range are filled, a position preview shows the range, the current price, and a band marker. The platform fee in SOL sits just above the create button.
{% endstep %}

{% step %}

### Create the position and save the IDs

Click Create CLMM Position and approve the transaction in your wallet. When it confirms, the result dialog returns the **Pool ID** and the **Position NFT** address, plus an explorer link. Copy both before you close the dialog.
{% endstep %}
{% endstepper %}

[**Open Raydium CLMM in the app →**](https://j.tools/en/tools/raydium-clmm)

{% hint style="info" %}
**About wallet warnings.** Some tools sign more than one thing in a single step, for example creating a token and its metadata together. Phantom can show a caution banner for these multi-step transactions. The banner is expected here and does not mean something is wrong. Read what you are signing, then approve.
{% endhint %}

## The options, explained

| Field          | What it does                                                                                                                                        |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| Token A mint   | The first token of the pair. Pick it from the selector or paste the mint. Token B is excluded from its list so you cannot pick the same mint twice. |
| Token B mint   | The second token of the pair, set the same way.                                                                                                     |
| Initial price  | The opening price the position is centered on, as Token B per Token A. Must be above zero.                                                          |
| Lower bound    | The bottom of your price range. Has to be below the initial price.                                                                                  |
| Upper bound    | The top of your price range. Has to be above the initial price. The page shows the resulting width as a percentage.                                 |
| Fee tier       | The swap-fee level for the pool: 0.01%, 0.05%, 0.25%, or 1%. Match it to the pair's volatility.                                                     |
| Token A amount | How much Token A you deposit. Must be above zero.                                                                                                   |
| Token B amount | How much Token B you deposit. Must be above zero.                                                                                                   |

## If something goes wrong

* **Price range is invalid.** The lower bound has to be below the initial price and the upper bound above it. If either crosses the price, the tool stops before signing. Fix the bounds and try again.
* **A required field is empty.** Both mints, the initial price, both bounds, and both amounts have to be filled with values above zero. Fill in whatever is missing.
* **Wallet not connected.** The page will not create a position without a connected wallet. Connect first, then create.
* **Not enough SOL.** You need SOL for the platform fee, account rent, and the network fee. Top up and retry.

For the full list and what each code means, see the [Error codes reference](/reference/error-codes.md).

## FAQ

<details>

<summary>What is Raydium CLMM?</summary>

CLMM is Raydium's concentrated liquidity pool model. You deploy capital inside a chosen price range instead of across the full curve, so fees per dollar are higher while the price stays in range. Once the price moves outside your bounds, the position stops earning until it comes back.

</details>

<details>

<summary>How do I choose the right fee tier?</summary>

0.01% suits stable pairs with low volatility, and 0.05% works for blue-chip pairs. 0.25% is common for volatile mid-cap pairs, and 1% is for high-volatility or thinly traded ones. Pick the tier that matches how the pair actually trades.

</details>

<details>

<summary>Why does my position show as out of range?</summary>

Out of range means the market price moved above your upper bound or below your lower bound. The position pauses fee earnings until the price returns inside the band. A tighter range earns more while active but goes out of range more often.

</details>

<details>

<summary>What is the Position NFT for?</summary>

The Position NFT represents ownership of your CLMM position. Holding it lets you collect accrued fees, add or remove liquidity, and close the position later. Transferring the NFT transfers ownership of the position. You can find it later under [My Pools](/tools/liquidity/my-pools.md), and the [Glossary](/getting-started/glossary.md) explains the terms behind it.

</details>

<details>

<summary>Can I change the range after creating it?</summary>

CLMM positions are NFTs with a fixed range. To move the band you usually close the position and open a new one with updated bounds. Some workflows let you add liquidity to the existing NFT inside its current range.

</details>

<details>

<summary>Why might creation fail?</summary>

The usual causes are invalid mint addresses, a lower bound above the initial price, an upper bound below it, or not enough SOL for rent and network fees. Check the inputs and retry.

</details>

## Related tools

{% content-ref url="/pages/QT0nYfDbGpJo4Cm5Tbs6" %}
[Create LP](/tools/liquidity/create-lp.md)
{% endcontent-ref %}

{% content-ref url="/pages/uGgmNhYYrXAD9JCyTmE9" %}
[Liquidity Add / Remove](/tools/liquidity/liquidity-add-remove.md)
{% endcontent-ref %}

{% content-ref url="/pages/EySFBE8ku57pLjq1HfJQ" %}
[My Pools](/tools/liquidity/my-pools.md)
{% endcontent-ref %}

{% content-ref url="/pages/ATpzTSt4YqwvWSduurGs" %}
[Create Orca Whirlpool LP](/tools/liquidity/orca-whirlpool.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/tools/liquidity/raydium-clmm.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.
