[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Schedule](https://evolu.dev/docs/api-reference/common/Schedule) › recurs

```ts
function recurs(n: number): Schedule<number>;
```

Defined in: [packages/common/src/Schedule.ts:184](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Schedule.ts#L184)

A schedule that recurs a fixed number of times.

Convenience for `take(n)(forever)`. Outputs the current repetition count (0,
1, 2, ..., n-1).

### Example

```ts
// Retry up to 3 times (4 total attempts including initial)
const retry = recurs(3);
```