From cb09a275209c8edcbafb8f0c0bf46074d0e478aa Mon Sep 17 00:00:00 2001 From: eldadfux Date: Fri, 17 Apr 2026 08:08:29 -0400 Subject: [PATCH 1/4] changelog: 45-minute build timeouts on Pro and above Document the increase from 15m to 45m for Sites and Functions builds on Appwrite Cloud for Pro+ organizations, with Free and Starter remaining at 15m. Made-with: Cursor --- .../changelog/(entries)/2026-04-17.markdoc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/routes/changelog/(entries)/2026-04-17.markdoc diff --git a/src/routes/changelog/(entries)/2026-04-17.markdoc b/src/routes/changelog/(entries)/2026-04-17.markdoc new file mode 100644 index 0000000000..7109bdb868 --- /dev/null +++ b/src/routes/changelog/(entries)/2026-04-17.markdoc @@ -0,0 +1,19 @@ +--- +layout: changelog +title: "Build timeouts increased to 45 minutes (Pro and above)" +date: 2026-04-17 +--- + +We have raised the **maximum build duration** for [Sites](/docs/products/sites) and [Functions](/docs/products/functions) on Appwrite Cloud from **15 minutes to 45 minutes** for organizations on the **Pro plan and above**. Free and Starter organizations keep the **15-minute** build limit, so the longer window is an explicit benefit of upgrading when your workloads need it. + +Build pipelines are rarely constant-time: cold dependency caches, larger lockfiles, native compilation, first-time container layer pulls, and multi-stage bundling can push wall-clock time well beyond a minimal compile on a warm workstation. A 15-minute cap often fails builds that are otherwise healthy—especially after cache invalidation, dependency upgrades, or when parity with a longer-running CI job matters. For Pro and above, extending the ceiling to **45 minutes** reduces those false negatives, improves predictability when you are tuning [compute for build versus runtime](/docs/advanced/platform/compute), and removes pressure to split deployments or strip build steps solely to stay under a short timeout. + +On eligible plans, you get fewer interrupted builds on legitimate workloads, less time spent re-running jobs after transient slowdowns, and closer alignment between what you can run locally or in your own CI and what Appwrite Cloud will accept during the build phase. Teams shipping larger frontends, monorepo-style repositories, or functions with heavier packaging steps should see the clearest gain. Compare plans and limits on the [pricing page](/pricing). + +{% arrow_link href="/docs/advanced/platform/compute" %} +Learn about build and runtime compute +{% /arrow_link %} + +{% arrow_link href="/pricing" %} +View plans and pricing +{% /arrow_link %} From 654c3bc02e57fd312689d8739a34c398d9f517c9 Mon Sep 17 00:00:00 2001 From: eldadfux Date: Fri, 17 Apr 2026 10:07:12 -0400 Subject: [PATCH 2/4] pricing: document build timeouts by plan Add a Compute comparison row (15m Free, 45m Pro+) and surface the same limits on the Free and Pro pricing cards. Made-with: Cursor --- src/routes/pricing/+page.svelte | 4 ++++ src/routes/pricing/compare-plans.svelte | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/routes/pricing/+page.svelte b/src/routes/pricing/+page.svelte index a072468d52..09b673a3bf 100644 --- a/src/routes/pricing/+page.svelte +++ b/src/routes/pricing/+page.svelte @@ -126,6 +126,7 @@ project +
  • 15-minute build timeouts
  • Free projects are paused after 1 week of inactivity. @@ -203,6 +204,9 @@ >Unlimited Databases, Buckets, and Functions +

  • + 45-minute build timeouts +
  • diff --git a/src/routes/pricing/compare-plans.svelte b/src/routes/pricing/compare-plans.svelte index 246444ce82..0b53d9154b 100644 --- a/src/routes/pricing/compare-plans.svelte +++ b/src/routes/pricing/compare-plans.svelte @@ -365,6 +365,14 @@ scale: '$2 per 1m', enterprise: 'Custom' }, + { + title: 'Build timeout', + info: 'Maximum duration for Sites and Functions build jobs', + free: '15 minutes', + pro: '45 minutes', + scale: '45 minutes', + enterprise: '45 minutes' + }, { title: 'Express builds', info: 'Dedicated priority queues for build jobs', From 0ddf76e09734311d5b3e4ff8610a54138e8824da Mon Sep 17 00:00:00 2001 From: eldadfux Date: Fri, 17 Apr 2026 10:10:38 -0400 Subject: [PATCH 3/4] pricing: Enterprise build timeout as Custom Made-with: Cursor --- src/routes/pricing/compare-plans.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/pricing/compare-plans.svelte b/src/routes/pricing/compare-plans.svelte index 0b53d9154b..080cdaa001 100644 --- a/src/routes/pricing/compare-plans.svelte +++ b/src/routes/pricing/compare-plans.svelte @@ -371,7 +371,7 @@ free: '15 minutes', pro: '45 minutes', scale: '45 minutes', - enterprise: '45 minutes' + enterprise: 'Custom' }, { title: 'Express builds', From 4f417dee3d559b69743b26116cb9ad9883b9e9e4 Mon Sep 17 00:00:00 2001 From: eldadfux Date: Fri, 17 Apr 2026 10:13:24 -0400 Subject: [PATCH 4/4] docs: document Cloud build timeouts by plan Add a Build timeouts section to Compute (Free 15m, Pro/Scale 45m, Enterprise custom) with links to execution vs request timeouts and self-hosted env vars. Cross-link from Functions, Sites, and deployments. Made-with: Cursor --- .../docs/advanced/platform/compute/+page.markdoc | 16 +++++++++++++++- .../products/functions/deployments/+page.markdoc | 1 + .../products/functions/functions/+page.markdoc | 4 ++++ .../products/sites/deployments/+page.markdoc | 1 + .../docs/products/sites/develop/+page.markdoc | 6 +++++- 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/routes/docs/advanced/platform/compute/+page.markdoc b/src/routes/docs/advanced/platform/compute/+page.markdoc index 68dbe2d5ef..6b3ee356e3 100644 --- a/src/routes/docs/advanced/platform/compute/+page.markdoc +++ b/src/routes/docs/advanced/platform/compute/+page.markdoc @@ -1,7 +1,7 @@ --- layout: article title: Compute -description: Learn about CPU and memory options for Appwrite Functions and Sites on Cloud, including separate build and runtime specifications. +description: Learn about CPU and memory options for Appwrite Functions and Sites on Cloud, including separate build and runtime specifications and plan build timeouts. --- On Appwrite Cloud, paid plans let you choose how much **CPU** and **memory** apply to **build** work and to **runtime** work. [Functions](/docs/products/functions) and [Sites](/docs/products/sites) each expose two settings: a **build specification** (install, compile, bundle, package) and a **runtime specification** (executions for functions; serving traffic and SSR for sites). You can pick different tiers for each phase so heavy builds do not force you to oversize steady execution, and vice versa. @@ -25,6 +25,20 @@ Appwrite Cloud offers the following specification tiers. The same tiers are avai On Appwrite Cloud, **Pro** plan organizations can change build and runtime specifications from the default 512MB and 0.5 CPU. The Free plan uses the default. For custom compute options, contact our [sales team](https://appwrite.io/contact-us/enterprise). {% /info %} +# Build timeouts {% #build-timeouts %} + +On **Appwrite Cloud**, each function and site **deployment build** (install, compile, bundle, and package) must finish within a **maximum build duration** that depends on your organization plan: + +| Plan | Maximum build duration | +| --- | --- | +| Free | 15 minutes | +| Pro / Scale | 45 minutes | +| Enterprise | Custom | + +These limits apply to the **build** phase only. [Function execution timeout](/docs/products/functions/functions#timeout) and [site request timeout](/docs/products/sites/develop#timeouts) are separate settings. Compare plans on the [pricing page](/pricing). + +On **self-hosted** instances, the global ceiling for configurable build timeouts is [`_APP_COMPUTE_BUILD_TIMEOUT`](/docs/advanced/self-hosting/configuration/environment-variables) (default 900 seconds). Individual function and site settings cannot exceed that server-wide maximum. + Configure specifications in the Appwrite Console under each function or site **Settings** - **Resource limits**. See also the [Functions](/docs/products/functions/functions#resource-limits) and [Sites](/docs/products/sites/develop#resource-limits) configuration guides. # GB-Hours {% #gb-hours %} diff --git a/src/routes/docs/products/functions/deployments/+page.markdoc b/src/routes/docs/products/functions/deployments/+page.markdoc index 6eabfbffbd..48f400c594 100644 --- a/src/routes/docs/products/functions/deployments/+page.markdoc +++ b/src/routes/docs/products/functions/deployments/+page.markdoc @@ -57,5 +57,6 @@ Redeployment behavior varies depending on how the initial deployment was created Users subscribed to the Appwrite Pro plan or above receive certain special benefits: - [Express builds](/changelog/entry/2024-08-10) for quicker deployments, resulting in reduced wait times and smoother workflows +- Longer [build timeouts](/docs/advanced/platform/compute#build-timeouts) (45 minutes vs 15 minutes on Free; Enterprise is custom) - Customizable [build and runtime specifications](/docs/advanced/platform/compute) for CPU and memory on each function {% /info %} \ No newline at end of file diff --git a/src/routes/docs/products/functions/functions/+page.markdoc b/src/routes/docs/products/functions/functions/+page.markdoc index 3d83b9928a..0fd108ab7e 100644 --- a/src/routes/docs/products/functions/functions/+page.markdoc +++ b/src/routes/docs/products/functions/functions/+page.markdoc @@ -109,6 +109,10 @@ Under **Settings** - **Resource limits**, you can set **build** and **runtime** On Appwrite Cloud, customizing specifications requires the **Pro** plan. See [Compute](/docs/advanced/platform/compute) for tiers, GB-hours, and pricing. +## Build timeout {% #build-timeout %} + +On Appwrite Cloud, the **build** phase of each deployment must complete within your plan’s **maximum build duration** (for example, 15 minutes on Free and 45 minutes on Pro and Scale). See [Build timeouts](/docs/advanced/platform/compute#build-timeouts) and the [pricing page](/pricing). + ## Git integration {% #git-integration %} You can update the entrypoint file and build settings of your function by navigating to your function > **Settings** > **Configuration**. diff --git a/src/routes/docs/products/sites/deployments/+page.markdoc b/src/routes/docs/products/sites/deployments/+page.markdoc index edd7050fd1..114971e81d 100644 --- a/src/routes/docs/products/sites/deployments/+page.markdoc +++ b/src/routes/docs/products/sites/deployments/+page.markdoc @@ -81,5 +81,6 @@ Redeployment behavior varies depending on how the initial deployment was created Users subscribed to the Appwrite Pro plan or above receive certain special benefits: - [Express builds](/changelog/entry/2024-08-10) for quicker deployments, resulting in reduced wait times and smoother workflows +- Longer [build timeouts](/docs/advanced/platform/compute#build-timeouts) (45 minutes vs 15 minutes on Free; Enterprise is custom) - Customizable [build and runtime specifications](/docs/advanced/platform/compute) for CPU and memory on each site {% /info %} \ No newline at end of file diff --git a/src/routes/docs/products/sites/develop/+page.markdoc b/src/routes/docs/products/sites/develop/+page.markdoc index 99c54a6a9c..66096f6d89 100644 --- a/src/routes/docs/products/sites/develop/+page.markdoc +++ b/src/routes/docs/products/sites/develop/+page.markdoc @@ -63,7 +63,7 @@ Appwrite passes the following environment variables into every deployed site by {% partial file="sites-env-vars.md" /%} -# Timeouts +# Timeouts {% #timeouts %} Each request made to a path on an Appwrite Site has a set time limit, after which the request will timeout. Here are the steps to configure those timeout period: @@ -86,6 +86,10 @@ Under **Settings** - **Resource limits**, you can set **build** and **runtime** On Appwrite Cloud, customizing specifications requires the **Pro** plan. See [Compute](/docs/advanced/platform/compute) for tiers, GB-hours, and pricing. +## Build timeout {% #build-timeout %} + +On Appwrite Cloud, the **build** phase of each deployment must complete within your plan’s **maximum build duration** (for example, 15 minutes on Free and 45 minutes on Pro and Scale). See [Build timeouts](/docs/advanced/platform/compute#build-timeouts) and the [pricing page](/pricing). + # Project dependencies To install your dependencies before your site is built, you should add the relevant install command to your site’s build settings. Here are the steps to add the install command: