> For the complete documentation index, see [llms.txt](https://docs.powerfulform.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.powerfulform.com/field-types/selects/range-slider.md).

# Range slider

Let visitors answer by dragging a handle between two ends instead of typing a number.

The **Range slider** field gives the visitor a track with a handle to drag. It suits a question where the exact figure matters less than the ballpark — a budget band on a quote request, how many units a wholesale buyer is thinking about, or a satisfaction score.

## 🔧 How to Set It

In the form editor, click **Add element**, open the **Selects** category and pick **Range slider**. The field is added and its settings open on the left.

See [Add and arrange elements](/build-your-form/add-and-arrange-elements.md) for the other ways to add a field and how to reorder them.

<figure><img src="https://2907469752-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FehM2rz7MmKkWcJmgvJOe%2Fuploads%2Fgit-blob-f1d69620c9b3e773f898c5cbfae9022ef72cc272%2Fscreenshot-field-types-range-slider.png?alt=media" alt="The Range slider field settings panel open in the form editor"><figcaption><p>A Range slider is a friendlier way to ask for a number within a known range.</p></figcaption></figure>

## 🔧 Settings

Only the settings specific to this field are listed here. **Label**, **Placeholder**, **Description**, **Required**, **Hide label**, **Column width**, **Conditional display** and the rest of the shared settings work the same on every field.

| Setting       | What it does                                                                         | Default |
| ------------- | ------------------------------------------------------------------------------------ | ------- |
| **Min value** | The number at the left end of the track. Sits beside **Max value** as a pair.        | 0       |
| **Max value** | The number at the right end of the track. Sits beside **Min value** as a pair.       | 100     |
| **Prefix**    | Text printed immediately before the number, such as a currency symbol. Translatable. | Empty   |
| **Suffix**    | Text printed immediately after the number, such as a unit. Translatable.             | Empty   |
| **Step**      | How far the handle jumps with each move.                                             | 1       |

### Set the range and the step

**Min value** and **Max value** set the two ends of the track. **Step** sets how far the handle moves at a time, and the two work together.

* A budget slider from `500` to `10000` with a **Step** of `500` gives twenty sensible stops instead of nine and a half thousand meaningless ones.
* A satisfaction slider from `1` to `10` with a **Step** of `1` gives ten whole numbers.
* Leave **Step** at `1` on a wide range and the visitor has to be very precise with the handle, which is frustrating on a phone.

Set **Default value** to a number inside the range. Putting it in the middle invites the visitor to move it in either direction; leaving it at the minimum makes it obvious that they have not answered yet.

{% hint style="info" %}
A slider always has a value, even when the visitor never touches it. If you need to know for certain that someone answered on purpose, ask with [Number](/field-types/number-fields/number.md) or [Radio buttons](/field-types/selects/radio-buttons.md) instead.
{% endhint %}

### Label the ends with Prefix and Suffix

**Prefix** and **Suffix** wrap the numbers so they read as an amount rather than a bare figure.

* **Prefix** `$` turns *500* into *$500*.
* **Suffix** `units` turns *500* into *500 units*.
* **Suffix** `kg`, `days` or `%` works the same way.

Both are translatable, so a currency symbol or unit can differ per language.

## 🔄 How It Works

### What the visitor sees

The visitor sees your label and the track, with the minimum under the left end and the maximum under the right, each wrapped in your **Prefix** and **Suffix**. Dragging the handle shows the current value in a small tooltip above it. The slider also responds to the arrow keys once it has focus, which is how someone using a keyboard answers.

### How the answer reaches you

The submission stores the number the handle landed on — the plain figure, without the **Prefix** and **Suffix**, which are display only. That is what appears in **Submissions**, in your notification emails, in exports and in connected integrations.

Because the answer is a number, conditional rules that read this field offer **is greater than** and **is less than** alongside **is equal to** and **is not equal to**. Use that to reveal a "tell us more about your project" box once the budget slider passes a threshold worth a phone call.

\ <br>

## 💡 Example

* **Budget band on a quote request** ⇒ **Min value** 0, **Max value** 10000, **Prefix** `$`, **Step** 500
* **How many units are you thinking about?** ⇒ **Suffix** `units`
* **Satisfaction score** ⇒ **Min value** 0, **Max value** 10, **Step** 1

<br>

## ⚠️ Limits & Notes

* A slider always submits a value, even when the visitor never touches it. When you need to know somebody answered on purpose, ask with [Number](/field-types/number-fields/number.md) or [Radio buttons](/field-types/selects/radio-buttons.md) instead.
* **Prefix** and **Suffix** are display only. The submission stores the plain number, so `$500` arrives as `500`.
* A wide range with **Step** left at `1` is hard to land on with a finger. Raise the step until the stops are ones you would actually act on.

## Next steps

* [Number](/field-types/number-fields/number.md) — a typed number when the exact figure matters.
* [Rating level](/field-types/ratings/rating-level.md) — a numbered scale of buttons instead of a track.
* [Show or hide fields with conditional logic](/build-your-form/conditional-logic.md) — react to where the handle lands.
