# How to avoid the trigger build depth limitation

**URL:** <https://forum.buildkite.community/t/how-to-avoid-the-trigger-build-depth-limitation/4526>\
**Category:** Pipelines\
**Created:** [October 16, 2025, 9:35am UTC](https://forum.buildkite.community/t/how-to-avoid-the-trigger-build-depth-limitation/4526 "2025-10-16T09:35:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![chalda](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.buildkite.community/chalda/32/1596_2.png) [@chalda](https://forum.buildkite.community/u/chalda)\
**Post date:** [October 16, 2025, 9:35am UTC](https://forum.buildkite.community/t/how-to-avoid-the-trigger-build-depth-limitation/4526/1 "2025-10-16T09:35:16Z")

</div>

Hello,

I’ve started running into the _trigger build depth_ limit, which according to the documentation seems to be set to 10.

> **[Service quotas](https://buildkite.com/docs/platform/service-quotas)**
>
> Service quotas are put in place to ensure that Buildkite can provide a reliable service to all customers. These quotas are scoped to your organization, and can be increased by emailing Support at support@buildkite.com and providing details about your...

In our setup, we’ve split the workflow into multiple pipelines that are either triggered by an action or scheduled. To speed up dependent steps, I added asynchronous triggers so that processing can start immediately when data becomes available.

However, this results in the pipeline failing due to the build depth limitation. I was assuming that asynchronous (`async`) triggers would not count toward the depth, since each triggered pipeline runs independently. Could you clarify why `async` triggers are still subject to this limitation?

> **[Trigger step](https://buildkite.com/docs/pipelines/configure/step-types/trigger-step#trigger-step-attributes)**
>
> A trigger step creates a build on another pipeline.

It is possible to decouple these triggers from the depth count?  
If not I understand that quotas can be increased. Would that be the case if we run our own agents? Is this limitation applied at the organization level in Buildkite, or does it depend on our self-managed agent?

Thank you for your help,  
Ondřej

 ![Screenshot_20251016_112315](https://us1.discourse-cdn.com/flex016/uploads/buildkite1/original/2X/2/2d27b5328c31504840ffcb854e7c68e178f11011.png)

---

<div class="post-metadata">

**Author:** ![Joe.Coleman](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.buildkite.community/joe.coleman/32/1625_2.png) [@Joe.Coleman](https://forum.buildkite.community/u/Joe.Coleman)\
**Post date:** [October 16, 2025, 9:55am UTC](https://forum.buildkite.community/t/how-to-avoid-the-trigger-build-depth-limitation/4526/2 "2025-10-16T09:55:05Z")

</div>

Hey @chalda,

In this case, the `async` attribute on the `trigger` step will determine whether the originating build will wait for a success status from the triggered pipeline, or whether it will report success once the other pipeline has been triggered.

The `async` attribute will still count towards build depth, regardless of whether this is set to `true` or `false`. This limitation was put in place in order to prevent infinite trigger loops, as such there is no way to exclude triggers from depth count.

To confirm, the quota for depth is organization-wide, so this limit is still applied even when using self-hosted infrastructure.

Should you need this limit to be increased, please get in touch via [support@buildkite.com](mailto:support@buildkite.com) and we can take a look into your specific-case and provide any methods that may be better suited for this specific scenario.
