Plans & pricing¶
AppGantry's pricing model has two ideas:
- You pay for the bytes you move and keep, not per seat. Teammates, reviewers, and CI bots are always free to add.
- Heavy-distribution customers can cap the bill at the platform fee by hosting artifacts in their own cloud account (BYOSA).
The canonical pricing table lives on the AppGantry pricing page. This page explains what each meter actually measures and how billing is posted.
Plans at a glance¶
| Team | Business | Enterprise | |
|---|---|---|---|
| Availability | Available now | Available now (where enabled) | Not generally available |
| Platform fee | $5 / mo | $100 / mo | No price — not on sale |
| Sign-up | Self-serve, trial available | Self-serve where enabled | Register interest |
| Storage model | Hosted (metered) | Hosted or BYOSA (flat) | Not yet decided |
| Per-MB charges | Yes | Yes on hosted; waived under BYOSA | Not yet decided |
| Default build retention | 30 days | 365 days | Not yet decided |
| Default audit retention | 90 days | 365 days | Not yet decided |
| SSO / SAML | - | ✓ | Not yet decided |
| BYOSA | - | ✓ | Not yet decided |
| Projects per organization | 50 | 50 | Not yet decided |
Enterprise is not on sale yet
Enterprise is not generally available. You cannot sign up for it, and it is not contact-led: there is no quote, no price, and no agreed terms to negotiate. Everything in its column above is undecided, and nothing here should be planned around. Register interest and we will get in touch when it is available. Team and Business are the plans that exist today.
Distribution itself is not plan-gated: projects, builds, channels, releases, testers and tester groups, webhooks, store connections, and the in-app updates SDK are available on the self-serve plans. What Business adds is SSO / SAML, BYOSA, and longer default retention.
Two of those come with caveats that are not plan-related: store publishing is not operational on any plan, and webhook delivery is best-effort and unordered. See Feature availability.
Business may not be offered in every environment
Self-serve Business signup is switched on per account. When it is off, the Business option is simply absent from the plan picker and upgrade flow. Contact us if you need it and don't see it. See Feature availability.
Retention is a per-organization setting, not a hard plan ceiling: the numbers above are the defaults each plan starts with. Longer windows cost more MB-months on hosted storage and nothing extra on BYOSA.
Starting on Team: trial or pay now¶
The Team signup flow offers two routes:
- Free trial. No card. Time-limited, with upload, download, and storage caps and a small starter credit. Add a card at any point to become a paid Team organization.
- Pay now. Skips the trial and activates Team immediately, with a credit bonus on activation. The organization is created straight away and asks for a payment method before you can use it.
Which caps and credit amounts apply are shown in the signup flow itself, because they change; the flow is the authoritative source, not this page.
The three meters (hosted storage only)¶
When your org is on hosted storage, three independent meters fill your invoice. All quantities are decimal MB (1 GB = 1000 MB).
Storage¶
- Unit: MB-month.
- Counts: retained artifact bytes held over the billing period.
- Sampled: daily; averaged at month close.
Storage is a rate over time, not a one-time charge. Holding 1 GB for a full month is 1 GB-month. Holding it for 15 days is about 0.5 GB-month. Shorter retention → fewer MB-months.
Upload¶
- Unit: MB.
- Counts: new build artifact bytes successfully ingested.
- Measured at: the upload-completion callback, against the blob's actual size.
Failed and abandoned uploads are not billed. A background reaper sweeps incomplete direct-to-blob uploads so they don't accrue storage either.
Download¶
- Unit: MB.
- Counts: bytes shipped to testers and developers: both count.
- Measured at: the per-request log row × artifact size.
Tester downloads are the line that can surprise you on a viral build. See spend caps for how to bound it.
Billing posture¶
| Plan | Posture | Behaviour |
|---|---|---|
| Team | Pre-paid | Your account holds a balance; usage draws it down. When the balance hits $0, uploads and new downloads are blocked (HTTP 402) but metadata stays readable. Top up to resume. |
| Business | Pre-paid | The same balance and the same 402 as Team, on top of the higher platform fee. An optional hard spend cap can be set as well. |
| Enterprise | Not generally available | No billing posture yet, because there is nothing to bill. |
BYOSA organizations pay the flat platform fee and no per-MB metering, so the storage, upload, and download meters above don't apply to them. Your own cloud provider is the spend ceiling.
Write locks¶
Independently of the meters, an organization can be placed in a state
that blocks changes. The API answers with HTTP 402, and the three
write-lock codes each carry a matching details.lock_reason:
error |
lock_reason |
What happened | What still works |
|---|---|---|---|
payment_required |
awaiting_payment |
The organization committed to a paid plan but has no payment method yet | Reading metadata |
billing_suspended |
suspended |
Payment problems went unresolved | Reading metadata, and downloading existing builds for a configured period |
trial_ended |
grace |
A no-card trial ran out of time and no card was added | Reading metadata |
Those three are the only lock_reason values. A payment that is still
being retried by the payment provider — past due, dunning in progress —
is not a write lock: the organization keeps writing until the
retries are exhausted and it becomes suspended.
Under trial_ended, uploads, downloads, and organization-scoped writes
are all refused until a payment method is added.
Two other 402s are not locks: a drained pre-paid balance
(prepaid_credit_exhausted, which is also what a trial that burns
through its starter credit returns) and a hit spend cap
(spend_cap_exceeded). Those are per-request billing gates, carry no
lock_reason, and leave the rest of the organization writable.
In every case, the organization, its projects, its builds, and its audit history stay intact and readable — you are locked out of writing, not out of your data. Adding a payment method or topping up clears it.
See Errors → 402, which is the canonical taxonomy, and Billing, usage & caps for how to fix each one.
Worked examples¶
These mirror the pricing-page examples.
A. Small internal beta on Team¶
- 20 builds × 100 MB uploaded: 2 GB × $0.05 = $0.10
- ~2 GB held across the month: 2 GB-month × $0.10 = $0.20
- 50 testers × 5 builds × 100 MB downloaded: 25 GB × $0.18 = $4.50
- Platform fee: $5.00
- Total ≈ $9.80 / month
B. Heavy distribution on Business (hosted)¶
- 2 GB uploaded: $0.10
- 30 GB-month held: $3.00
- 2,000 testers × 10 builds × 150 MB downloaded: 3,000 GB × $0.18 = $540.00
- Platform fee: $100.00
- Total ≈ $643.10 / month: egress dominates.
B′. Same customer on Business + BYOSA¶
- Platform fee: $100.00 flat. No metering.
- Their own Azure account absorbs the 3,000 GB egress at the cloud-provider rate (~$0.087/GB ≈ $261).
See also¶
- BYOSA: flat-fee distribution for Business orgs.
- Audit & spend caps: how to keep the bill predictable.
- Billing, usage & caps: the screens and the day-to-day workflow.
- Build lifecycle & retention: what retention actually controls.