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

# Celo staking

> Lock CELO and vote for a validator group with a 1-day warmup and 3-day unbonding period on exit.

Stake CELO by locking tokens and voting for a validator group. A new account is created and CELO locked before the vote is cast; exiting unlocks CELO after a 3-day period.

## Yields

| Yield ID | Staking type | Provider | Validator selection |
| - | - | - | - |
| `celo-celo-native-staking` | Native | Any active validator group | Required |

## Key facts

| | |
| - | - |
| Network ID | `celo` |
| Staked token | CELO |
| Unbonding / cooldown | 3 days |
| Warmup | 1 day |
| Rewards | Auto, credited to the locked balance periodically |

## Enter and exit

Celo requires an account to exist before CELO can be locked, and CELO to be locked before it can be voted to a validator group. The first enter action returns three ordered transactions: create account, lock CELO, and vote (delegate) with `amount` and `validatorAddress`.

Exiting returns two transactions: revoke the vote from the validator group, then unlock the CELO. The unlocked balance enters a 3-day unbonding period before it can be withdrawn.

## Managing the position

| Action | What it does |
| - | - |
| `STAKE_LOCKED` | Retry voting a `locked` balance that did not get delegated (for example after a failed vote transaction) |
| `UNLOCK_LOCKED` | Start unlocking a `locked` balance that is not currently voted |
| `WITHDRAW` | Withdraw the unlocked balance after the 3-day unbonding period |

## Related

> **[EVM staking coverage](/documentation/earn/staking/evm/index.md)**
>
> All EVM native staking integrations.

> **[Preferred validators](/documentation/earn/staking/validators/preferred-validators.md)**
>
> How validator selection and preferred validators work.

> **[Actions](/documentation/earn/core-concepts/actions.md)**
>
> The enter, exit, and manage action model.

## List the live yields

Copy this request to list the staking yields on this network that are enabled for your project. Yield IDs change as markets and networks are added, so query the API rather than hardcoding them.

```bash theme={null}
curl "https://api.yield.xyz/v1/yields?network=celo&types=staking,liquid_staking&limit=100" \
  -H "x-api-key: $YIELD_API_KEY"
```


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