---
kind: question
zz: "0.4.0"
updated: 2026-10-09
state: draft
rules: https://zriz.io/llms.txt
---
# Limits of the zriz free tier

The free tier gives each org one run at a time and 50 runs a day. The count starts again at 00:00 UTC. zriz is in open beta.

## How many runs a day does the free tier give? {#runs-a-day}

50 runs a day for each org. All the projects of the org share the count.

Each [run](https://zriz.io/docs/words.md#run) uses one run of the 50, on each [runner](https://zriz.io/docs/words.md#runner).

## How many runs can I do at the same time? {#at-a-time}

One. A second start at the same time gets `429` with the error `too-many-runs` and the scope `org`.

The cloud makes no run for it.

A run holds its place until it stops. It stops at its time limit: 30 seconds by default, 1 hour at most.

A member can cancel a run with `POST /api/runs/{id}/cancel`. The reply is `{"run-id":"<id>","status":"<status>"}`.

`zz` has the same: `zz runs cancel <id>` cancels one run. `zz runs cancel --mine` cancels each run in work that your API key started.

When the org has no free place, `zz run` waits up to 120 seconds, also for one pipeline. Then it ends with `too-many-runs` and a hint to cancel.

`--parallel <N>` sets the number of pipelines at the same time. A free org gets 1.

## When does the count start again? {#reset}

At 00:00 UTC, each day.

## What happens at the limit? {#at-the-limit}

The cloud refuses the run. `zz run` prints the error `too-many-runs` with the number of seconds to wait, and ends with exit code 5.

`zz run` prints this object. `<pipeline>` is the name of your pipeline. `<seconds>` is the time to 00:00 UTC.

```text
{"ok":false,"command":"run","error":{"type":"too-many-runs","message":"too many runs (scope free-day), retry after <seconds> s"},"hints":[{"command":"zz run <pipeline>","doc":"retry after <seconds> s"}],"warnings":[]}
```

A run that the cloud refuses does not use one of the 50.

## Where do I see the count? {#count}

On the runs page of the web app, at the path `/app/runs`. Sign in first.

The page shows this line:

```text
Free tier: <used> of 50 runs used today. The count starts again at 00:00 UTC.
```

## How do I read the limits of my org? {#org}

`GET /api/org` shows the tier, the limits and the runs of today. Send your API key in the header `x-api-key`. Each role can read it.

```text
{"org-id":"<org id>","org-name":"<name>","tier":"free","limits":{"parallel-runs":1,"runs-per-day":50},"usage":{"runs-today":12},"actor":"<key id>"}
```

The field `actor` is the id of your API key. A run holds the same value in `actor` when this key started it.

## Does the free tier include each resource type? {#resource-types}

Yes. The free tier includes `http`, `sql`, `browser`, and `cli` resources. There is no other type.
