From a062d24fe772d99da819331e21752e56f13225a9 Mon Sep 17 00:00:00 2001 From: Batuhan Icoz Date: Wed, 21 Oct 2026 05:13:54 +0000 Subject: [PATCH 1/2] Present plan prices directly and remove rollout copy --- content/(account)/billing.mdx | 24 +++++++++--------------- content/(account)/usage.mdx | 28 +++++----------------------- content/(concepts)/versions.mdx | 2 -- content/(reference)/limits.mdx | 14 +++++++------- content/(serve)/site-pages.mdx | 2 +- 5 files changed, 22 insertions(+), 48 deletions(-) diff --git a/content/(account)/billing.mdx b/content/(account)/billing.mdx index acf8d429..4c10cc82 100644 --- a/content/(account)/billing.mdx +++ b/content/(account)/billing.mdx @@ -5,11 +5,7 @@ sidebar: order: 3 --- -Spacefast's upcoming plans are Free for personal projects, Go for one person, and Plus for a team. Prices are USD before tax. Paid plans are monthly, with no annual option. - -:::note[Upcoming pricing] -These are the new plan terms. Checkout, metering and feature availability are still changing. **Settings → Billing** shows the plans currently available to your team and the price before you pay. The new retention windows are planned. -::: +Prices are USD before tax, per team. Paid plans are billed monthly. ## Plans @@ -20,7 +16,7 @@ These are the new plan terms. Checkout, metering and feature availability are st | Plus | $15 | $15 shared credit | 10, then $5 per extra editor | Yes | | Enterprise | Custom | Custom | Custom | Yes | -Free needs no card. Go and Plus include their monthly price as usage credit. Enterprise plans are arranged through WordPress VIP. +Free needs no card and is for personal, non-commercial projects. Enterprise plans are arranged through WordPress VIP. | Allowance or feature | Free | Go | Plus | | --- | --- | --- | --- | @@ -51,8 +47,6 @@ The monthly bill is: For example, a Go team with $8 of metered usage pays $8 total: the $5 plan and $3 of usage above its credit. A Plus team with 12 editors and $20 of usage pays $30: $15 for the plan, $10 for seats and $5 for extra usage. -Overage is on by default under the new terms. An optional hard spending cap pauses metered work when reached. Alerts are planned at 50%, 80% and 100% of credit or a Free allowance. Confirm which spending controls are available in your team's billing settings. - ## Seats Free and Go allow one editor, the owner. Additional seats cannot be bought on those plans; a second team member needs Plus. @@ -63,15 +57,15 @@ Reviewers, commenters, agents acting for an owner, and app users do not add seat ## Upgrade, downgrade or cancel -In the dashboard, open your team's **Settings → Billing**. Only owners and admins can change billing. Choose an available plan and review the price at checkout. Use Billing to change or cancel a plan. **Open billing portal** holds invoices and payment methods. +Open your team's **Settings → Billing** to change or cancel a plan. Only owners and admins can change billing. Choose **Open billing portal** for invoices and payment methods. -Under the new terms, upgrades apply immediately and prorate to the day. Downgrades apply at renewal. Cancellation stops renewal, with access continuing until the paid period ends. There are no refunds. Review the effective date in Billing before confirming a change. +Upgrades apply immediately and prorate to the day. Downgrades apply at renewal. Cancellation stops renewal, with access continuing until the paid period ends. There are no refunds. Review the price and effective date before confirming. -## Reading the current plan through the API +## Read the plan through the API -`GET /v1/teams/{teamId}/entitlements` and `GET /v1/teams/{teamId}/plan-policy` return the resolved `planCode` and limits. During the plan change, Go can appear as `personal` or `go`, and Plus as `work` or `plus`. The other codes are `free`, `enterprise` and `internal`. +`GET /v1/teams/{teamId}/entitlements` and `GET /v1/teams/{teamId}/plan-policy` return the resolved `planCode` and limits. Go can appear as `personal` or `go`, and Plus as `work` or `plus`. The other codes are `free`, `enterprise` and `internal`. -Use the returned entitlements for feature checks and **Settings → Billing** for the subscription currently offered to the team. +Use the returned entitlements for feature checks. ## When a payment fails @@ -82,10 +76,10 @@ Your sites keep serving through a grace period, but you cannot change anything. | Past due | 7 days from the failed payment | Sites serve normally | Reads work. Every write returns `402` with code `tenant_past_due` | | Suspended | After the grace period ends | Every space serves `402` and the text `This space is paused.` | Reads work. Every write returns `403` with code `tenant_suspended` | -Reading is never blocked in either state. Settle the payment from the billing portal to lift the block and light the spaces back up. +Settle the payment in the billing portal to restore access. API reads remain available in either state. ## Billing is dashboard-only Plans, checkout, and cancellation live in the dashboard. There is no `sf` command and no API endpoint for changing a plan. API keys and agent credentials cannot make those changes. -Reading is a different story. An agent can pull the resolved plan and limits from `GET /v1/teams/{teamId}/entitlements`, current counters from `GET /v1/teams/{teamId}/usage`, and the limits as they are enforced at publish time from `GET /v1/teams/{teamId}/plan-policy`. See [Usage](/usage) for what those numbers mean. +Agents can read [plan entitlements](#read-the-plan-through-the-api) and [usage](/usage) through the API. diff --git a/content/(account)/usage.mdx b/content/(account)/usage.mdx index 2b17f0c2..b801194c 100644 --- a/content/(account)/usage.mdx +++ b/content/(account)/usage.mdx @@ -7,10 +7,6 @@ sidebar: Free has fixed allowances. Go and Plus use shared monthly credit: $5 on Go and $15 on Plus. Usage above the credit is billed monthly at the same rates on both plans. -:::note[Upcoming usage pricing] -The allowances and rates below describe the new plans. Metering and spending controls are still being rolled out. Check **Settings → Billing** for your team's current terms. The [current usage API](#read-current-usage) reports measurements separately from these new billing terms. -::: - ## Free allowances These are per team each month, except storage, which is a retained-byte allowance, and email, which has a daily limit. Free is for personal and non-commercial use. @@ -57,8 +53,6 @@ An invocation is one PHP or Zero origin execution, including a request that bypa Cached delivery counts cached response bytes. Non-cached transfer counts origin misses, bypasses and PHP or Zero response bytes. Worker responses are excluded from that transfer charge. Bytes are counted once on the path that produced them. -Workers CPU and requests have a planned $5-per-team monthly spending ceiling, which Go and Plus teams can raise. Reaching it pauses Workers, while PHP, Zero and cached delivery continue. Origin CPU used to relay a Worker request is credited back so the same request is not billed twice. - Email counts recipient deliveries, so one message to three people counts as three. Daily safeguards still apply: 20 recipients on Free, 200 on Go and 2,000 on Plus. A credit balance does not override them. ## Storage classes @@ -73,27 +67,15 @@ Each logical byte belongs to one class. Internal replicas and recovery copies do Scheduling has no separate fee. Runs use ordinary CPU, invocation, SQL and Workers meters as applicable. Email and saved output use their existing meters. Scheduled response bodies retained on the server add no delivery charge; a manual HTTPS request has its own delivery path. -Managed recovery copies have no separate customer charge. Customer backup and restore controls are planned; this pricing does not promise a retention period or a restore guarantee. - -## Planned history and log retention - -| History | Free | Go | Plus | -| --- | --- | --- | --- | -| Production versions | 30 days | 30 days | 1 year | -| Preview versions | 30 days | 30 days | 180 days | -| Failed deployment records | 30 days | 30 days | 90 days | -| Canceled deployment records | 30 days | 30 days | 30 days | -| Runtime and HTTP access logs | Up to 3 days | Up to 7 days | Up to 30 days | -| Build logs | Up to 7 days | Up to 30 days | Up to 30 days | -| Team activity | 7 days | 30 days | 30 days | +Managed recovery copies have no separate customer charge. -Live, pinned and qualifying aliased versions remain protected. The planned recovery window for deleted successful versions is 30 days. Retained and recoverable non-live bytes count as files and media. Log retention is subject to event and byte budgets; longer retention is an Enterprise discussion. +## History and log retention -These windows are planned. The currently enforced [version retention](/versions#how-many-versions-are-kept) and returned plan limits remain authoritative until the new policy is available. +See [Versions](/versions#how-many-versions-are-kept) for version cleanup and [Limits](/limits#retention-windows) for log and activity retention. Retained non-live versions count as files and media. ## Read current usage -In the dashboard, open your team's **Settings**, then **Usage**. The page lists every limit your plan carries, with the current value against it. Axes your plan does not include show as **Not included in this plan**. +Open your team's **Settings → Usage** to see usage against each plan limit. Features outside your plan show **Not included in this plan**. **Settings → Billing** carries a shorter set of meters next to the plan card: Storage, Team members, Custom domains, and Publishes today. Each one highlights when you reach 80% of the limit. @@ -126,7 +108,7 @@ The response also carries `storageQuotaBytes`, `storageOverageBytes`, `deploysDa | `functionInvocations` | Function calls, counted where the space is known | | `functionErrors` | Those calls that ended in an error | -These fields report the currently measured usage. They are not the new itemized invoice and do not prove that a new pricing meter or spending cap is active. +These measurements are usage counters, not invoice line items. ## Measurement timing diff --git a/content/(concepts)/versions.mdx b/content/(concepts)/versions.mdx index ea0bdd3a..fb68426c 100644 --- a/content/(concepts)/versions.mdx +++ b/content/(concepts)/versions.mdx @@ -114,8 +114,6 @@ This only affects versions still in `created`, `uploading`, or `uploaded`. A rea ## How many versions are kept -The upcoming plans introduce [time-based history windows](/usage#planned-history-and-log-retention). Those windows are planned; the following describes current cleanup. - Ready versions stay until you delete them, with one exception. Free Spaces keep 200 versions, counting everything that is not failed, canceled, or expired. The publish that takes a Free Space past 200 still goes through. The oldest ready versions that nothing serves expire in the background — their bytes are purged, but their history stays. A version the live pointer or a branch alias serves is never expired. Paid plans have no cap. See [Limits](/limits). To delete one: diff --git a/content/(reference)/limits.mdx b/content/(reference)/limits.mdx index 19d8d893..27eed388 100644 --- a/content/(reference)/limits.mdx +++ b/content/(reference)/limits.mdx @@ -5,11 +5,11 @@ sidebar: order: 1 --- -Find any limit, see which plan changes it, and know exactly which error code comes back. Where a plan says "unlimited" but a platform ceiling still applies, this page gives you the ceiling. +Plan allowances, platform limits, and the errors returned when you exceed them. -## Upcoming plan allowances +## Plan allowances -The new pricing uses Free, Go and Plus. These allowances describe the upcoming plans; **Settings → Billing** and the entitlements API show what is currently active for your team. See [Plans and billing](/billing) for prices and [Usage](/usage) for all metered allowances. +See [Plans and billing](/billing) for prices and [Usage](/usage) for metered allowances. | Allowance | Free | Go | Plus | Enterprise | | --- | --- | --- | --- | --- | @@ -24,15 +24,15 @@ The new pricing uses Free, Go and Plus. These allowances describe the upcoming p Free and Go cannot buy extra editing seats. Pending invitations reserve capacity but are not billed. Domains registered through Spacefast or WordPress.com, or using Spacefast DNS, do not count toward the Free plan's domain allowance. -Free allowance exhaustion triggers review and may lead to suspension. Above 500 MB, new publishes and uploads stop while existing Spaces continue to serve unless suspended. Paid plans bill usage above their shared credit. An optional hard spending cap is planned. +Free allowance exhaustion triggers review and may lead to suspension. Above 500 MB, new publishes and uploads stop while existing Spaces continue to serve unless suspended. Paid plans bill usage above their shared credit. -## Current enforcement +## Enforcement Read `GET /v1/teams/{teamId}/entitlements` and `GET /v1/teams/{teamId}/plan-policy` for the limits active on a team. A blocked Space creation or claim returns `409` with `space_quota_exceeded`; domain and team-member admission use `domain_quota_exceeded` and `team_member_quota_exceeded`. -The current daily publish counter warns rather than refusing a publish. It pools direct publishes and CI builds and resets at 00:00 UTC. The current storage meter reports overage without enforcing the upcoming Free storage rule. Neither counter is the new itemized usage bill. +The daily publish counter warns rather than refusing a publish. It pools direct publishes and CI builds and resets at 00:00 UTC. The storage usage counter reports overage without blocking writes. These counters are not invoice line items. -Current version cleanup is described on [Versions](/versions#how-many-versions-are-kept). The new history and log windows are [planned](/usage#planned-history-and-log-retention). +See [Versions](/versions#how-many-versions-are-kept) for version cleanup. ## Same on every plan diff --git a/content/(serve)/site-pages.mdx b/content/(serve)/site-pages.mdx index 0f637205..e7b409a9 100644 --- a/content/(serve)/site-pages.mdx +++ b/content/(serve)/site-pages.mdx @@ -128,7 +128,7 @@ An `index` page that never renders `` publishes with a warning rather ### The plan gate -Under the new plans, `_pages/*.html` full-page takeovers require Plus or Enterprise. Check the team's `pagesTemplates` entitlement for current access. Publishing without it fails: +`_pages/*.html` full-page takeovers require Plus or Enterprise. Check the team's `pagesTemplates` entitlement. Publishing without it fails: ```text pages_templates_not_entitled From e1dd4ad74e8bb614fd114aa6901cc3b86cc2ffb2 Mon Sep 17 00:00:00 2001 From: Batuhan Icoz Date: Wed, 21 Oct 2026 05:16:36 +0000 Subject: [PATCH 2/2] Remove unshipped storage enforcement and redundant retention copy --- content/(account)/usage.mdx | 6 +----- content/(reference)/limits.mdx | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/content/(account)/usage.mdx b/content/(account)/usage.mdx index b801194c..d9bd4db6 100644 --- a/content/(account)/usage.mdx +++ b/content/(account)/usage.mdx @@ -26,7 +26,7 @@ These are per team each month, except storage, which is a retained-byte allowanc The CPU allowance combines PHP, Zero and SQL. Each other allowance stands on its own; unused build minutes cannot buy more transfer. Free has no dollar credit and no automatic overage bill. -Exceeding an allowance alerts Spacefast for review. A Space may be suspended until the applicable allowance resets, retained storage falls below its limit, or the team upgrades. Data stays and exports remain available. Above 500 MB of storage, new publishes and uploads are refused until the team is under the allowance again. Existing Spaces keep serving unless suspended after review. +Exceeding an allowance alerts Spacefast for review. A Space may be suspended until the applicable allowance resets, retained storage falls below its limit, or the team upgrades. Data stays and exports remain available. ## Go and Plus rates @@ -69,10 +69,6 @@ Scheduling has no separate fee. Runs use ordinary CPU, invocation, SQL and Worke Managed recovery copies have no separate customer charge. -## History and log retention - -See [Versions](/versions#how-many-versions-are-kept) for version cleanup and [Limits](/limits#retention-windows) for log and activity retention. Retained non-live versions count as files and media. - ## Read current usage Open your team's **Settings → Usage** to see usage against each plan limit. Features outside your plan show **Not included in this plan**. diff --git a/content/(reference)/limits.mdx b/content/(reference)/limits.mdx index 27eed388..3e967503 100644 --- a/content/(reference)/limits.mdx +++ b/content/(reference)/limits.mdx @@ -24,7 +24,7 @@ See [Plans and billing](/billing) for prices and [Usage](/usage) for metered all Free and Go cannot buy extra editing seats. Pending invitations reserve capacity but are not billed. Domains registered through Spacefast or WordPress.com, or using Spacefast DNS, do not count toward the Free plan's domain allowance. -Free allowance exhaustion triggers review and may lead to suspension. Above 500 MB, new publishes and uploads stop while existing Spaces continue to serve unless suspended. Paid plans bill usage above their shared credit. +Free allowance exhaustion triggers review and may lead to suspension. Paid plans bill usage above their shared credit. ## Enforcement