Skip to main content

Service Plans

Service plans define what resources a customer can use. Each plan specifies quotas for services, CPU, memory, storage, and feature access.

Default Plans

The panel ships with three default plans:

PlanServicesCPUMemoryStorageFeatures
Starter32 cores4 GB20 GBTemplate deploy only
Pro108 cores16 GB100 GBAll deploy methods
EnterpriseUnlimitedUnlimitedUnlimitedUnlimitedAll features + priority

Default plans can be modified or deleted. You can create custom plans to match your pricing and resource model.

Creating a Plan

Navigate to Settings > Service Plans > New Plan and configure:

Basic Information

FieldDescription
NamePlan display name (e.g., "Pro")
DescriptionBrief description shown to customers
Sort OrderDisplay order in plan selection dropdowns

Resource Quotas

QuotaDescriptionExample
Max ServicesMaximum number of deployed services10
Max CPUTotal CPU cores across all services8
Max MemoryTotal memory (MB) across all services16384
Max StorageTotal disk storage (MB) across all services102400
Max BandwidthMonthly bandwidth limit (MB), 0 = unlimited0

Feature Gates

FeatureDescription
Template DeployDeploy from the template catalog
Git DeployDeploy from Git repositories
AI DeployAI-powered deployment
Compose DeployRaw Docker Compose deployment
Custom DomainsAssign custom domains to services
BackupAccess to backup and restore features
NotificationsConfigure notification channels
API AccessUse the REST API programmatically

Quota Enforcement

Quotas are enforced at deploy time:

  1. Service count — new deploys are blocked if the customer has reached their service limit
  2. CPU and memory — the panel sums resource usage across all customer services and rejects deploys that would exceed limits
  3. Storage — volume sizes are tracked and checked before provisioning
  4. Feature gates — deployment methods not included in the plan are hidden from the customer's UI

Over-Quota Behavior

When a customer is over quota:

  • Existing services continue running — the panel never stops running services due to quota changes
  • New deployments are blocked with a clear error message
  • The admin dashboard shows quota warnings for customers approaching limits
  • Notifications are sent to admins when customers reach 80% and 100% of any quota

Assigning Plans

Plans are assigned when creating or editing a customer:

  1. Navigate to Customers > [Customer Name] > Edit
  2. Select the new plan from the dropdown
  3. Click Save

Plan changes take effect immediately. If downgrading to a plan with lower limits, existing services are not affected, but no new services can be deployed until usage is within the new limits.

Usage Tracking

The panel tracks resource usage per customer:

MetricHow It's Measured
Service countNumber of non-deleted services
CPU usageSum of cpu limits across containers
Memory usageSum of memory limits across containers
Storage usageSum of volume sizes
BandwidthNetwork I/O tracking per container (monthly)

Usage data is available in the customer detail page and via the API.

Billing Integration

Service plans track usage metrics that can be exported for billing:

  • Per-customer resource consumption over time
  • Service deployment and deletion events
  • Plan change history
  • Usage snapshots at configurable intervals

The panel does not include built-in payment processing. Use the API to export usage data to your billing system (Stripe, invoice tools, etc.).