> ## Documentation Index
> Fetch the complete documentation index at: https://docs.civicbot.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Member sync

> How Civic keeps an up-to-date picture of who holds which roles.

To pay the right people, Civic needs to know who holds which roles — even when a member is offline and not cached by Discord.

## How Civic keeps up

> [card] A stored snapshot
>
> Civic keeps its own record of each member and their roles, so a payout never depends
> on Discord being online at that exact moment.

> [card] Live updates
>
> When someone joins, leaves or changes roles, Civic updates its record straight away.

> [card] Full resync
>
> Civic periodically re-reads the whole member list to catch anything missed, and to
> mark members who have left.

> [card] Freshness check
>
> A payout refuses to run if the member data is too old. Fresh data means correct pay.

## Who counts as eligible

* A member must currently be in the server. Members who have left are not paid.
* Bots are never paid.
* A member must hold a role that matches an enabled rule.

## When data is stale

If the member data is out of date, Civic will not run a payout on it. You will see a warning on the **Payouts** page, and the run waits for a fresh resync.

> [!NOTE]
>
> This is a safety feature. Paying from stale data would pay people for roles they no longer hold.

## What this means in practice

You never need to "run a sync" by hand in normal use. Civic keeps itself current. If you have just made a large role change and want it reflected immediately, the next resync will pick it up; the **Payouts** page tells you whether the data is current.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.