[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) › spaced

```ts
function spaced(
  duration: Duration,
): Schedule<
  number &
    Brand<"Int"> &
    Brand<"NonNegative"> &
    Brand<"LessThan281474976710655"> &
    Brand<"Millis">
>;
```

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

Constant delay schedule.

Always waits the same duration after each execution completes. Never stops —
combine with [take](https://evolu.dev/docs/api-reference/common/Schedule/functions/take) or [maxElapsed](https://evolu.dev/docs/api-reference/common/Schedule/functions/maxElapsed) to limit.

### Example

```ts
// 1s, 1s, 1s, ... (polling)
const poll = spaced("1s");

// Retry 3 times with 500ms between each
const retry = take(3)(spaced("500ms"));

// Heartbeat schedule
const heartbeat = spaced("30s");
```