# Rate limits and quotas

## Rate limits and quotas

Learn about the rate limits and size quotas that apply when using **Git-based Source Control** in Nected. Pushes and pulls from Nected go through GitHub’s APIs and Git layer, so both **GitHub’s limits** and good practices apply. Staying within these constraints helps avoid throttling, failed pushes, and keeps repository performance stable.

{% hint style="info" %}
If you need higher limits for your use case (e.g. larger repos or more frequent sync), contact [Nected support](https://docs.nected.ai/nected-docs/references/limits) or refer to [GitHub’s documentation](https://docs.github.com/en/repositories/creating-and-managing-repositories/repository-limits) for repository and API limits.
{% endhint %}

***

### Rate limits

When you push or pull from Nected, operations are subject to the following rate constraints. Exceeding them can result in throttling or temporary failures.

| Rate limit                             | Description                                                                                                                                                   | Constraint                                                                                                                                                            |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Pushes per minute (per repository)** | Number of push operations from Nected to a single GitHub repository per minute.                                                                               | **\~6 pushes per minute** (recommended). Frequent pushes above this can be throttled by GitHub.                                                                       |
| **GitHub API requests**                | Under the hood, Nected uses GitHub’s APIs for sync. Authenticated users (e.g. with a Personal Access Token) have higher limits than unauthenticated requests. | **5,000 requests/hour** (authenticated with PAT). See [GitHub rate limits](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api) for details. |

**Recommendations:**

* Prefer **smaller, more frequent commits** with fewer changes per push to stay under push rate and keep PRs manageable.
* Use **resource-level push** (Push to Git from a single rule or workflow) when the workspace has many changes, so each push is smaller and less likely to hit limits.
* **Pull before pushing** to keep the branch aligned and reduce the need for large or repeated push/merge cycles.

***

### Size quotas

Size limits apply to each push and to the repository as a whole. Nected syncs definitions and metadata (rules, workflows, datasets, etc.), not bulk data, so typical usage stays well below these quotas.

| Quota               | Description                                                                                | Limit                                                                                                                                                                         |
| ------------------- | ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Push size**       | Total size of a single commit/push from Nected to GitHub.                                  | **2 GB per push** (enforced by GitHub). A single push cannot exceed this.                                                                                                     |
| **File size**       | Size of an individual file in the repository. Large files slow clones, diffs, and history. | **Recommended <1 MB** per file; **hard limit 100 MB** per file. For larger assets, use [Git LFS](https://git-lfs.com); Nected sync typically produces small definition files. |
| **Repository size** | Total size of the connected GitHub repository (all branches and history).                  | **Soft warning at 1 GB**; **5 GB+** may trigger GitHub warnings or restrictions. Keep the repo lean; Nected does not sync bulk data.                                          |

***

### Best practices

* **Prefer smaller commits** — Push more often with fewer changes per commit to stay under rate and size limits and to keep PRs and diffs manageable.
* **Use resource-level push when appropriate** — If the workspace has many changes, use **Push to Git** from a single rule or workflow to push only that resource and reduce payload size.
* **Pull before pushing** — Reduces the chance of large merge conflicts and keeps each push aligned with the remote branch.
* **Avoid large binary or generated assets in the repo** — Nected syncs entity definitions; do not rely on the same repo for large binaries unless you use Git LFS and accept the impact on clone/pull times.

***

### Related limits

* **Nected platform limits** — For API rate limits, rules/workflows per workspace, invocation quotas, and other product limits by plan, see [Limits](https://docs.nected.ai/nected-docs/references/limits).
* **GitHub repository and API limits** — For full details on repository size, push size, and API rate limits, see [GitHub’s repository limits](https://docs.github.com/en/repositories/creating-and-managing-repositories/repository-limits) and [Rate limits for the REST API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api).
