# rpk redpanda config set

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [streaming-full.txt](https://docs.redpanda.com/streaming-full.txt)

---
title: rpk redpanda config set
latest-redpanda-tag: v25.3.11
latest-console-tag: v3.7.3
latest-operator-version: v26.1.4
# EOL = End-of-Life (support lifecycle status)
page-is-nearing-eol: "false"
page-is-past-eol: "false"
page-eol-date: November 19, 2026
latest-connect-version: 4.93.0
docname: rpk/rpk-redpanda/rpk-redpanda-config-set
page-component-name: streaming
page-version: "25.3"
page-component-version: "25.3"
page-component-title: Streaming
page-relative-src-path: rpk/rpk-redpanda/rpk-redpanda-config-set.adoc
page-edit-url: https://github.com/redpanda-data/docs/edit/v/25.3/modules/reference/pages/rpk/rpk-redpanda/rpk-redpanda-config-set.adoc
page-git-created-date: "2023-05-17"
page-git-modified-date: "2025-11-19"
support-status: supported
---

<!-- Source: https://docs.redpanda.com/streaming/25.3/reference/rpk/rpk-redpanda/rpk-redpanda-config-set.md -->

> ❗ **IMPORTANT**
>
> This command is not supported on macOS, Windows.

Set node configuration values, such as the list of seed servers or the ports that various APIs listen on.

This command modifies the `redpanda.yaml` you have locally on disk.

## [](#examples)Examples

The first argument is the key within the yaml representing a property / field that you would like to set. Nested fields can be accessed through a dot:

```bash
rpk redpanda config set redpanda.developer_mode true
```

All values are parsed as yaml and, since yaml is a superset of json, you can also format your input as json. Individual specific fields or full structs can be set:

```bash
rpk redpanda config set rpk.tune_disk_irq true
```

or

```bash
rpk redpanda config set redpanda.rpc_server '{address: 3.250.158.1, port: 9092}'
```

You can set an entire array by wrapping all items with braces, or by using one struct:

```bash
rpk redpanda config set redpanda.advertised_kafka_api '[{address: 10.0.0.1, port: 9092}]'
```

or

```bash
rpk redpanda config set redpanda.advertised_kafka_api '{address: 10.0.0.1, port: 9092}'
```

Indexing can be used to set specific items in an array. You can index one past the end of an array to extend it:

```bash
rpk redpanda config set redpanda.advertised_kafka_api[1] '{address: 10.0.0.1, port: 9092}'
```

You may also use `<key>=<value>` notation for setting configuration properties:

```bash
rpk redpanda config set redpanda.kafka_api[0].port=9092
```

## [](#usage)Usage

```bash
rpk redpanda config set <key> <value> [flags]
```

## [](#flags)Flags

| Value | Type | Description |
| --- | --- | --- |
| -h, --help | - | Help for set. |
| --config | string | Redpanda or rpk config file; default search paths are /var/lib/redpanda/.config/rpk/rpk.yaml, $PWD/redpanda.yaml, and /etc/redpanda/redpanda.yaml. |
| -X, --config-opt | stringArray | Override rpk configuration settings. See rpk -X or execute rpk -X help for inline detail or rpk -X list for terser detail. |
| --profile | string | Profile to use. See rpk profile for more details. |
| -v, --verbose | - | Enable verbose logging. |