# Consumer Offsets

> 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: Consumer Offsets
latest-operator-version: v26.1.4
# EOL = End-of-Life (support lifecycle status)
page-is-nearing-eol: "false"
page-is-past-eol: "true"
page-eol-date: April 30, 2025
latest-console-tag: v3.7.3
latest-connect-version: 4.93.0
docname: consume-data/consumer-offsets
page-component-name: streaming
page-version: "24.1"
page-component-version: "24.1"
page-component-title: Streaming
page-relative-src-path: consume-data/consumer-offsets.adoc
page-edit-url: https://github.com/redpanda-data/docs/edit/v/24.1/modules/develop/pages/consume-data/consumer-offsets.adoc
description: Redpanda uses an internal topic, <code>__consumer_offsets</code>, to store committed offsets from each Kafka consumer that is attached to Redpanda.
page-git-created-date: "2023-05-30"
page-git-modified-date: "2024-07-24"
support-status: past end-of-life
---

<!-- Source: https://docs.redpanda.com/streaming/24.1/develop/consume-data/consumer-offsets.md -->

Redpanda supports `__consumer_offsets`, which is a private topic on a Redpanda broker. The `__consumer_offsets` topic stores committed offsets from each Kafka consumer that is attached to Redpanda.

Redpanda exposes the `__consumer_offsets` key to enable the many tools in the Kafka ecosystem that rely on this value for their operation, providing greater ecosystem interoperability with environments and applications.

Kafka consumer tracks the maximum offset it has consumed in each partition and has the capability to commit offsets so that it can resume from those offsets in the event of a restart. Kafka provides the option to store all the offsets for a given consumer group in a designated broker (for that group) called the "group coordinator". In other words, any consumer instance in that consumer group should send its offset commits and fetches to that group coordinator (broker).

> 📝 **NOTE**
>
> A consumer group is a set of consumers that cooperate to consume data from some topics. The partitions of all the topics are divided among the consumers in the group. As new group members arrive and old members leave, the partitions are re-assigned so that each member receives a proportional share of the partitions.

When the group coordinator receives an OffsetCommitRequest, it appends the request to a special [compacted](https://kafka.apache.org/documentation/#compaction) Kafka topic named `__consumer_offsets`. The broker sends a successful offset commit response to the consumer only after all the replicas of the offsets topic receive the offsets. If the offsets fail to replicate within a configurable timeout, the offset commit fails and the consumer may retry the commit after backing off. The brokers periodically compact the offsets topic, because it only needs to maintain the most recent offset commit for each partition. The coordinator also caches the offsets in an in-memory table to serve offset fetches quickly.

When stored in a partition, a sequential number is assigned to each event for order. This number is the _offset_. The offset allows consumer event processing to start or continue from where it left off. So, if you have a consumer application outage that prevents your application from receiving events, you can use the consumer offset to select and send only the events that occurred when the application was down. By default, the offset starts at 0, but you can manually specify a specific start value.

## Suggested labs

-   [Stream Stock Market Data from a CSV file Using Node.js](https://docs.redpanda.com/labs/clients/stock-market-activity-nodejs/)
-   [Stream Stock Market Data from a CSV file Using Python](https://docs.redpanda.com/labs/clients/stock-market-activity-python/)
-   [Build a Chat Room Application with Redpanda and Golang](https://docs.redpanda.com/labs/clients/docker-go/)
-   [Build a Chat Room Application with Redpanda and Java](https://docs.redpanda.com/labs/clients/docker-java/)
-   [Build a Chat Room Application with Redpanda and Node.js](https://docs.redpanda.com/labs/clients/docker-nodejs/)
-   [Build a Chat Room Application with Redpanda and Python](https://docs.redpanda.com/labs/clients/docker-python/)
-   [Build a Chat Room Application with Redpanda and Rust](https://docs.redpanda.com/labs/clients/docker-rust/)

See more

[Search all labs](https://docs.redpanda.com/labs)