Plans & Limits
Economy and First Class plan limits enforced by the AppFlight CLI and backend.
AppFlight has two subscription tiers. Limits are enforced server-side โ the CLI surfaces them as friendly errors with actionable guidance.
Plan comparison
| Feature | Economy (free) | First Class |
|---|---|---|
| Apps | 3 | 5 (individual) ยท 10 (org) |
| APKs per app | 5 (individual) ยท 10 (org) | 15 (individual) ยท 20 (org) |
| Build TTL | 7 days | 14 days |
| Rollover uploads at cap | โ | โ (oldest build auto-rotates) |
| CLI upload | โ | โ |
| Tester push notifications | โ | โ |
How limits are enforced
Limits are checked by the AppFlight backend on every upload attempt. The CLI never hard-codes limits โ it reads the error response from the server, so any future limit changes apply automatically without a CLI update.
Economy โ when the APK cap is exceeded the server returns HTTP 403 with code: "PLAN_LIMIT" and the CLI exits with code 8.
First Class โ at-cap uploads succeed and trigger a rollover: the new build is registered, the oldest existing build is dropped, and the CLI prints a one-line rollover notice. See upload โ First Class rollover.
Checking your plan
appflight whoami
uid: abc123xyz
email: you@example.com
type: individual
plan: Economy (free)
auth source: apiKey
Upgrading
Upgrades are managed inside the AppFlight mobile app:
- Open AppFlight
- Go to Settings โ Subscription
- Tap Upgrade to First Class
After upgrading, the new limits apply immediately on the next upload โ no CLI update or re-login required.
Exit code reference
| Code | Trigger |
|---|---|
8 | APK limit reached (PLAN_LIMIT from backend) |
See the full exit code table on the upload command page.