# rpk topic trim-prefix

> 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 topic trim-prefix
latest-redpanda-tag: v25.2.1
latest-console-tag: v3.7.3
latest-operator-version: v26.1.4
# EOL = End-of-Life (support lifecycle status)
page-is-nearing-eol: "true"
page-is-past-eol: "false"
page-eol-date: July 31, 2026
latest-connect-version: 4.93.0
docname: rpk/rpk-topic/rpk-topic-trim-prefix
page-component-name: streaming
page-version: "25.2"
page-component-version: "25.2"
page-component-title: Streaming
page-relative-src-path: rpk/rpk-topic/rpk-topic-trim-prefix.adoc
page-edit-url: https://github.com/redpanda-data/docs/edit/v/25.2/modules/reference/pages/rpk/rpk-topic/rpk-topic-trim-prefix.adoc
page-git-created-date: "2023-08-04"
page-git-modified-date: "2025-10-16"
support-status: nearing end-of-life
---

<!-- Source: https://docs.redpanda.com/streaming/25.2/reference/rpk/rpk-topic/rpk-topic-trim-prefix.md -->

Trim records from topics

This command allows you to trim records from topics, where Redpanda sets the LogStartOffset for partitions to the requested offset. All segments whose base offset is less than the requested offset are deleted, and any records within the segment before the requested offset can no longer be read.

The `--offset/-o` flag allows you to indicate which index you want to set the partition’s low watermark (start offset) to. It can be a single integer value denoting the offset, or it can be a timestamp if you prefix the offset with an '@'. You can select which partition to trim the offset from using the `--partitions/-p` flag.

The `--from-file` option allows to trim the offsets specified in a text file with the following format:

\[TOPIC\] \[PARTITION\] \[OFFSET\]
\[TOPIC\] \[PARTITION\] \[OFFSET\]
...

or the equivalent keyed JSON/YAML file.

> ⚠️ **WARNING**
>
> When you delete records from a topic with a timestamp, Redpanda advances the partition start offset to the first record whose timestamp is after the threshold. If record timestamps are not in order with respect to offsets, this may result in unintended deletion of data. Before using a timestamp, verify that timestamps increase in the same order as offsets in the topic to avoid accidental data loss. For example:
>
> ```bash
> rpk topic consume <topic> -n 50 --format '%o %d{go[2006-01-02T15:04:05Z07:00]} %k %v'
> ```

## [](#examples)Examples

-   Trim records in 'foo' topic to offset 120 in partition 1:

    ```bash
    rpk topic trim-prefix foo --offset 120 --partitions 1
    ```

-   Trim records in all partitions of topic foo previous to an specific timestamp:

    ```bash
    rpk topic trim-prefix foo -o "@1622505600"
    ```

-   Trim records from a JSON file:

    ```bash
    rpk topic trim-prefix --from-file /tmp/to_trim.json
    ```


## [](#usage)Usage

```bash
rpk topic trim-prefix [TOPIC] [flags]
```

## [](#aliases)Aliases

```bash
trim-prefix, trim
```

## [](#flags)Flags

| Value | Type | Description |
| --- | --- | --- |
| -f, --from-file | string | File of topic/partition/offset for which to trim offsets for. |
| -h, --help | - | Help for trim-prefix. |
| --no-confirm | - | Disable confirmation prompt. |
| -o, --offset | string | Offset to set the partition’s start offset to, either as an integer or timestamp (@<timestamp-value>). |
| -p, --partitions | int32 | int32Slice Comma-separated list of partitions to trim records from (default to all) (default []). |
| --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. |