---
title: "Ranking"
description: "Ask a respondent to put every option into a complete order."
group: "Build forms"
order: 12
type: "reference"
parent: "fields"
keywords:
  - "ranking"
  - "ordered options"
  - "preferences"
updated: "2026-07-14"
---

The ranking field stores all declared option IDs in the respondent's chosen order.

## Options and validation

Ranking fields require an `options` array. Each option has a stable `id` and a visible `label`, and a valid answer contains every option exactly once. There's no `allowOther`, partial ranking, or configurable top-N cut.

The stored value is an array such as `["reliability", "speed", "price"]`, from first choice to last choice.

## Add a ranking field

In the dashboard, select **Add block**, choose **Ranking**, and add the choices respondents must order.

```ts
const prioritiesField = {
  id: "priorities",
  kind: "ranking",
  label: "Rank what matters most",
  options: [
    { id: "speed", label: "Speed" },
    { id: "reliability", label: "Reliability" },
    { id: "price", label: "Price" },
  ],
  required: true,
} as const;
```

Ranking fields can't be prefilled from URL parameters.

## Related

- [Select](/docs/fields/select): Ask for one preference instead of a complete order.
- [Multi-select](/docs/fields/multi-select): Let respondents choose several items without ordering them.
- [Responses and insights](/docs/responses): Review and export ordered answers.
