App Hosting That Grows With Your Traffic
Launch app servers, databases, and load balancers from one template. Set a baseline, set a ceiling, and pay hourly for measured resource use. Cluster the stack and traffic reroutes to healthy nodes.
Every container grows and shrinks with real demand, up to the ceiling you set. Add a load balancer and extra nodes when you want to scale horizontally too.
Pick a supported runtime or Docker image and deploy. The platform handles OS patching, load balancers, databases, and caches under your app.
Talk to the engineers who run the platform and handle support. Open a chat or ticket any hour and reach someone who can actually fix the issue.
Hourly billing includes your baseline, then follows measured CPU and RAM use up to the ceiling you set. No monthly commit, no surprises.
Bring the Stack You Already Use
Use a managed runtime when you want the simplest deploy path. Use Docker when your app needs its own image. Use Kubernetes when your team needs kubectl and worker pools.
Shared across all managed runtimes
- Deploy
- Git/SVN, archive, API, CI artifact, or Docker image.
- Scale
- Cloudlet model: vertical or horizontal nodes behind managed load balancers.
- State
- Stateless scales cleanly. Session apps need sticky sessions or Redis/Memcached.
- Controls
- Env vars, ports, volumes, logs, SSH, config files.
Everything Your Stack Needs
Autoscaling, clustered SQL and NoSQL options, 14 daily backups, automatic SSL, Git deploys, and 24/7 engineers. Standard on every plan.
Every environment ships with these six.
No add-ons, no upsells.
- Autoscaling with a ceilingSet a baseline you always pay for and a ceiling the bill cannot exceed. Hourly billing tracks usage between them.
- 14 daily backupsTwo weeks of restore points on every environment. Restore in place or into a clone before promoting.
- Automatic SSLLet’s Encrypt certificates issued, renewed, and attached at the load balancer, with no manual rotation.
- Git deploy, atomic releasesPush the repo; the platform installs dependencies, runs the build, and promotes the release once health checks pass.
- Clustered SQL + NoSQLMySQL, PostgreSQL, MariaDB, Percona, Redis, Couchbase, and OpenSearch. Choose a clustered topology when you need replication and failover.
- 24/7 engineersReal engineers on the line, every hour. No L1 gatekeeping.
Pick a stack, push the repo, ship the release.
Native runtimes for seven languages, Docker for everything else, and managed Kubernetes when you need orchestration. Deployment sources and release tracking fit your DevOps pipeline.
- Native managed runtimesPHP, Node.js, Python, Ruby, Java, Go, and .NET on Linux. No Dockerfile required.
- Docker fallbackBring any Docker image when a managed runtime isn’t the right fit.
- Managed KubernetesProduction K8s with worker pools when your team needs kubectl and orchestration.
- Release inventoryDeployment Manager tracks each release package by name, comment, size, and date.
- Pre/post-deploy hooksAuto-update on Git push, with pre and post hooks for migrations, cache warming, or Slack notifications.
A data layer that can grow past one node.
SQL and NoSQL engines, clustered topologies, DB TLS, and recovery paths that don’t require touching production first.
- SQL and NoSQL enginesMySQL, PostgreSQL, MariaDB, Percona, Redis, Couchbase, and OpenSearch. All platform-managed.
- Clustered topology and failoverChoose a clustered topology and the platform handles replication and automatic failover across database nodes.
- DB TLSEnforce TLS on database connections from the dashboard, with no certificate juggling.
- Restore to cloneRestore any of the 14 daily backups into a fresh clone and verify it before promoting.
- External exportPush database backups off-platform for archival or compliance retention.
Usage is metered. Traffic finds healthy nodes.
Vertical and horizontal scaling sit behind managed edge load balancers, with real routing controls. Not just round-robin.
- Vertical scaling, 128 MiB stepsContainers expand in 128 MiB cloudlet increments up to the ceiling you set.
- Horizontal scalingAdd app nodes behind the balancer when concurrency, not CPU, is the bottleneck.
- Edge load balancersPick NGINX, HAProxy, or Varnish at the edge tier. Managed, not DIY.
- TCP and HTTP routingRoute by protocol, host, or path without leaving the dashboard.
- Scaling event logAudit every up/down event with the trigger and the resulting topology.
Run every environment from one dashboard.
Per-node metrics and alerts from first boot, browser SSH, log search, and config editing in the dashboard. Clone, transfer, and label any environment as the fleet grows.
- Per-node 1-minute metricsCPU, RAM, disk, and network at 1-minute resolution on every node.
- Default alertsDefault thresholds for load, memory, and disk fire from first boot.
- Clone and region transferClone a running environment or transfer it between regions in one action.
- Aliases and groupsLabel nodes and environments so you can find them at a glance.
- Web SSHOpen a browser SSH session to any node from the dashboard, with no local key setup.
- Log viewerBrowse and search application and server logs in the dashboard, not just a live tail.
- Config file managementEdit runtime and server config files in the platform UI and apply without an image rebuild.
Default-deny boundaries on every tier.
Per-tier firewall rules, isolated containers, and account controls scoped to each environment.
- Per-tier firewall rulesAllow or deny by IP, port, or protocol on the load balancer, app, and database tiers. Default-deny.
- Container isolation per environmentEach environment runs in its own isolated container network. No neighbor leakage.
- OS and runtime patched on redeployEvery redeploy refreshes the container runtime, OS, and base image.
- RBAC and 2FAScoped tokens with expiry and revocation, two-factor on every account.
- WAF and IPSAdd web application firewall and intrusion-prevention layers when the app needs them.
Ready to test it with your own stack?
Start Free TrialServices Your Runtime Depends On
Runtimes execute the app. These managed services handle state, files, traffic, and packaged stacks so production does not stop at code deploy.
Data and routing
Where state lives and how requests reach it: replicated, balanced, and terminated.
Databases
Managed SQL and NoSQL for cache, search, and document workloads.
- MySQL
- MariaDB
- PostgreSQL
- Percona
- Redis
- Couchbase
- OpenSearch
Shared storage
Uploads and shared files reachable from every node, without the DB.
- NFS
- GlusterFS
- Replicated
Load balancers
Route HTTP or TCP to healthy nodes, terminate SSL, pick the right edge.
- NGINX
- HAProxy
- Varnish
- LiteSpeed ADC
Packaged and portable
Pre-tuned stacks for fast starts, with containers and orchestration when you need them.
WordPress
Managed WordPress, from single-container to clustered multi-region.
- LiteSpeed
- Redis
- WAF
- Multisite
- WooCommerce
Docker
Run any Linux container without OS-level host access.
- Docker Hub
- GHCR
- ECR
- Dockerfile builds
Kubernetes
Managed control plane with worker pools when you need kubectl.
- kubectl
- Helm defaults
- HPA / VPA
- Node pools
Capacity That Follows Demand
Fixed hosting forces a bad trade: size for peak and pay for idle capacity most of the time, or size for average and crash under load. App Hosting adjusts capacity in small steps, one cloudlet (128 MiB RAM + 400 MHz CPU) at a time, between a baseline you always get and a ceiling you set. You pay hourly for what actually runs.
Autoscaling
- Demand: incoming traffic
- Capacity: cloudlets, scaling with demand
Fixed hosting
- Demand: incoming traffic
- Capacity: a fixed ceiling
- Overloaded: demand exceeds capacity
The autoscaling curve moves inside a band you configure. You set its floor and ceiling; Togglebox meters real usage in between and bills it hourly.
Floor
Baseline cloudlets you always get. You pay the hourly rate for them whenever the environment runs.
Ceiling
The cap you set per node group. Capacity climbs toward it under sustained traffic, never past it.
Billing
Togglebox measures real CPU and RAM use inside that band and bills for the cloudlets used each hour.
Shipping on App Hosting
Real product flows. Watch a Node.js release deploy from Git, then expand to see how you create, manage, and scale a stack.
Deploy a Node.js release from Git.
Push the repo, let the platform install dependencies, run the build, and promote the release without opening an SSH session.
See deployment optionsCreate an app and database stack together.
Choose Node.js, add PostgreSQL, set cloudlet limits, and launch both tiers as one environment from the topology editor.
Estimate costManage every node from one dashboard.
Edit config files, tail live logs, check real-time stats, open an SSH session, or redeploy without leaving the browser.
Tour the dashboardSet scaling limits from the environment dashboard.
Raise the scaling ceiling for vertical headroom, or increase the node count for horizontal capacity. Both controls are on the same environment page.
How scaling worksModel Baseline and Spike Cost
Estimate first, then start a 14-day free trial. No credit card required.
Trusted by businesses that rely on real support
App Hosting Questions
How does pricing work?
App Hosting is billed hourly from a prepaid balance. You set your reserved baseline and burst limit, and autoscaling stays within those limits.
How is this different from VPS hosting?
App Hosting gives you prebuilt stack templates and scaling controls, so you do not have to assemble and operate each layer yourself. If you need full OS control, Cloud VPS is the better fit.
What is a cloudlet?
A cloudlet is one unit of compute: 128 MiB RAM + 400 MHz CPU. You set baseline and burst scaling in cloudlets.
Can I scale without downtime?
Scaling adds capacity within the limits you set. Whether that happens without downtime depends on your architecture and application. Start with a calculator preset, or chat with an engineer about the right setup.
Do you support HA databases?
Database Clusters covers MySQL, MariaDB, and PostgreSQL with HA options.
Is there Kubernetes support?
Kubernetes Hosting is available, with architecture presets to get started.
Can I run production on this?
Many customers run production on App Hosting. Use the trial for hands-on evaluation, and talk to an engineer to design your production setup.
Can you help me migrate?
We can map a target setup and migration plan. Portability & Migration has the details.
Is this a managed service?
Togglebox manages the platform and infrastructure, including the runtime, networking, and base OS layers. Your team manages the application code, dependencies, and runtime upgrades.
What happens when traffic spikes past my baseline?
Your environment can use resources up to the maximum you set. Togglebox meters actual CPU and RAM usage in cloudlet steps, so billing follows measured use within that range.
What happens when a node goes down?
In a clustered setup, the load balancer routes traffic to the remaining healthy app nodes. For databases, replication modes such as primary/replica and Galera help keep data available during a node failure.
What happens to charges when I stop an environment?
RAM, CPU, and traffic charges stop immediately. Charges for retained storage and reserved resources, such as public IPs and SSL certificates, continue. That lets you stop idle dev or staging environments while keeping data and network resources in place.
What deployment methods are supported?
Deploy with application archives (WAR, JAR, ZIP, or EAR), Git or SVN repositories, URL-based archive pulls, or build-node workflows. You can also add pre- and post-deploy hooks for smoke tests, migrations, or cache warming.
Do you support two-factor authentication?
Protect platform access with 2FA using time-based codes from an authenticator app. Recovery codes provide backup access.
Is Memcached available for caching?
Add Memcached for distributed in-memory caching to reduce database load and improve response times. It also supports session storage for PHP and Java apps in clustered setups to maintain session continuity during failover.
Is this a DevOps platform?
If your team runs DevOps, the building blocks are here: Git and CI/CD deploys, pre- and post-deploy hooks, environment cloning for staging and release rehearsal, one-dashboard metrics and logs, and web SSH to any node. Togglebox runs the platform layer so your pipeline is the thing you maintain, not the servers under it.
How do I switch runtime versions on an existing environment?
Open the topology, select the runtime node, and pick the new version. The platform redeploys the runtime layer; your app code redeploys with it. No rebuild of the environment is required.
Does autoscaling work the same way across every runtime?
Yes. Vertical and horizontal scaling triggers on CPU, RAM, network, disk I/O, or disk IOPS thresholds you set. The same cloudlet model (128 MiB RAM + 400 MHz CPU bundle) applies to PHP, Node.js, Python, Ruby, Java, Go, .NET, Docker, and Kubernetes node groups.
How are custom domains and SSL handled?
Bind a custom domain via CNAME (shared load balancer) or DNS A record (public IP). Automatic SSL covers public endpoints. For zero-downtime cutovers, use domain swapping between staging and production environments.
Are deploy hooks supported on every runtime?
Pre-deploy, post-deploy, and rollback hooks work for every native runtime and Docker. Use them for database migrations, cache warm-up, smoke checks, asset precompile, or readiness probes before traffic switches.
How do sessions and sticky-session behavior work?
Stateless apps balance evenly behind the load balancer. Session-bound apps use either sticky sessions or a shared session store (Memcached, Redis, or a database). Tomcat, TomEE, GlassFish, WildFly, and Payara also support session replication on multi-node Java setups.
When should I pick Cloud VPS instead of App Hosting?
Choose Cloud VPS for OS-level control, custom kernel modules, root-owned long-running daemons, GPU/CUDA workloads, or Windows / IIS / Active Directory / RDP / COM interop / .NET Framework workloads. App Hosting runs .NET on Linux + Kestrel only.
How do I migrate an existing app from another host?
Bring code, lockfile, environment variables, and a data export. Most stacks land in a native runtime; the rest run as Docker. Portability and migration covers the process; an engineer can review your topology before cutover.
Can I customize the build step for any runtime?
Each runtime exposes the standard build entrypoint (composer install, npm ci, pip install, bundle install, mvn package, go build, dotnet publish). Add pre-deploy hooks for additional steps. For full custom build control, use Docker.
How are managed databases connected to App Hosting environments?
Add MySQL, MariaDB, PostgreSQL, Redis, OpenSearch, or other managed services as nodes inside the same environment. Apps reach them over the internal network using standard TCP. Database hosting and Database clusters cover engine and topology choice.
Can I run a runtime that is not on the native list?
Yes. Any runtime not in the native list runs as Docker, with the same scaling, deploy, and load balancer integration. If a runtime is on the native list, prefer the native path because you get OS-level patching and version updates without maintaining a Dockerfile.
When should I choose Kubernetes instead of a native runtime?
Pick Kubernetes when orchestration control is the buying requirement: multi-service deployments, custom pod scheduling, Helm-driven release pipelines, HPA/VPA tuning, or platform integrations that depend on raw kubectl access.
How do background workers and queues fit?
Run workers as a separate node group, isolated from the web tier. Sidekiq, Resque, Celery, BullMQ, and similar workers scale independently of web traffic. Job state typically lives in a managed Redis or database node.
Can I run staging and production in parallel?
Yes. Clone an environment, validate the change, then swap domains for an instant cutover. That gives you a blue-green-style deploy. Portability and migration covers the promotion workflow.
How is observability handled across runtimes?
Per-node CPU, RAM, disk, and network metrics ship by default. Attach APM agents (New Relic, Datadog, AppDynamics) at the runtime layer; the JVM also runs a built-in GC optimization agent. The App Hosting feature detail covers the available signals.
Where do I start if I am still picking a topology?
Start with the App Hosting calculator. Presets cover starter, production, data-backed, and custom topologies. Or chat with an engineer to map your stack to runtime, scaling profile, and database choice before launch.
How do I deploy a Docker image on App Hosting?
Pull an image from Docker Hub, GitHub Container Registry, GitLab Container Registry, AWS ECR, Google Artifact Registry, or any OCI-compliant private registry, or build from a Dockerfile in a connected Git repo. Configure registry credentials per environment. The platform handles image layers, networking, SSL termination, and container startup automatically.
How is image-based custom Docker different from Docker Engine CE?
Image-based custom Docker runs third-party images with platform-managed networking, scaling, and lifecycle (deploy via dashboard or API). Docker Engine CE gives you the native Docker CLI on managed infrastructure. You control the daemon directly. For privileged containers, GPU passthrough, Windows images, or full kernel control, use Cloud VPS.
Can I run Docker Compose stacks on App Hosting?
Native Compose-file orchestration is not supported on a single host, but the topology wizard handles multi-container setups with the same result. Translate each Compose service to a separate platform node connected over the private environment network; scale, deploy, and observe each service independently. Multi-host Compose orchestration belongs on Cloud VPS.
How is networking and SSL handled for Docker containers?
The platform manages internal DNS, port routing, and SSL termination. Containers in the same environment communicate over a private network. External traffic routes through the managed load balancer with automatic SSL via Let’s Encrypt or your own certificates, so the image itself stays lean and does not need to terminate TLS.
Can I deploy from any CI/CD tool, or only from Git?
Any CI/CD tool. Git auto-deploy, CI artifact upload, the Deployment API, and the CLI all run the same five-stage flow with the same atomic-swap guarantees. GitHub Actions, GitLab CI, Bitbucket Pipelines, Jenkins, and CircleCI authenticate with scoped, expiring personal access tokens.
Does App Hosting deploy with zero downtime?
Yes. The new build is prepared on platform build nodes, then traffic switches with an atomic swap. In-flight requests complete on the previous release while new requests route to the new one. Pre-deploy hooks (migrations, smoke tests) run before the swap; non-zero exit halts the release and the previous build keeps serving.
Can I roll back to a previous deployment?
Yes. The Deployment Manager keeps a versioned inventory of every release with its artifact, hooks, environment-variable snapshot, and probe result. Pick any prior release from the dashboard or call the rollback API endpoint. The load balancer drains the current node only after the rollback target passes its health probe.
How is database schema rollback handled?
Code rollback is platform-managed via the Deployment Manager. Database schema rollback is application-managed: pair every forward migration with a reversible down-migration (Liquibase, Flyway, Active Record) before merging. The platform does not roll back schema for you.
How do webhooks trigger automatic deployments?
Add a platform-generated webhook URL to your GitHub, GitLab, or Bitbucket repository. Every push to the mapped branch fires the webhook and queues a deploy. You can also configure scheduled repo checks that pull and deploy whenever the source changes, with no webhook required.
How are API tokens scoped?
Personal access tokens can be restricted to specific API methods (for example, deploy-only) and given a configurable expiry. Issue a separate token per workflow or team member. No need to share account credentials or grant permissions beyond what the task requires.
Can I run pre- and post-deploy hooks?
Yes. Hooks run inside the container before traffic switches. Use them for database migrations, smoke tests, or cache warming. Default timeout is 60 seconds; adjust in environment settings if the migration or warm-up step is longer. Non-zero exit halts the release.
How do I cap autoscaling spend?
Each environment has a maximum cloudlet limit per node group. The platform never adds capacity beyond that ceiling, even under sustained traffic. Pair the maximum with a prepaid balance or low-balance alert to set a hard upper bound on spend.
What happens to in-flight requests when capacity scales down?
Scale-in waits for active requests to finish on the cloudlet being released. The load balancer stops routing new traffic to it, the cloudlet drains, and only then is it removed. Long-running connections are not severed mid-flight.
How are partial cloudlets billed?
Billing is per cloudlet-hour, prorated to the hour. A cloudlet that is active for any portion of an hour bills for that hour. Reserved cloudlets bill while the environment is running, regardless of utilization. Burst cloudlets only bill for the hours they are actually allocated.
Can stateful tiers like databases autoscale horizontally?
Vertical scaling (more cloudlets per node) is automatic on every tier. Horizontal scaling (more nodes) is automatic for stateless app tiers and load balancers. Database tiers scale horizontally through topology changes (primary/replica, Galera) that you choose explicitly, not as an automatic reaction to load.
What does the platform do when my scaling limit is reached?
The application keeps running on the maximum cloudlets you set. Scaling stops there; the platform does not silently exceed the limit. You receive a scaling-limit-reached notification and can raise the maximum from the dashboard or API.
How fast does horizontal scale-out happen?
Stateless tiers typically begin serving traffic within approximately 30 seconds of a scale-out trigger: the new node clones from the stack template and registers with the load balancer. Database tiers take longer because data must sync before queries are accepted, and adding a node is an operator-approved topology change.
Do I need to install a monitoring agent?
No. CPU, RAM, disk, network, and request-rate metrics come from the platform itself, with no in-container agent to install or maintain. Application-level metrics (custom counters, traces, error rates) still need their own instrumentation via OpenTelemetry, Datadog, New Relic, or similar.
What alerts are configured by default?
Every environment ships with low-balance, scaling-limit-reached, node-restart, and SSL-certificate-expiry alerts active from first deploy. Add custom resource alerts on CPU, RAM, disk, inodes, and network thresholds per node role from the dashboard.
How long are metrics and logs retained?
Metrics and access logs are kept long enough to investigate recent incidents and trend recent traffic. For longer retention, export logs and metrics to your own collector through the platform API or via syslog/HTTP shipping. Application logs are retained on the environment alongside the runtime; you control rotation.
How does observability connect to billing?
The metrics view and the hourly invoice read from the same usage stream. Each hour, the platform takes whichever is higher (peak RAM or average CPU) and bills against that line. Dashboard usage equals invoice usage; there is no separate billing telemetry to reconcile.
Can I tail logs without SSH?
Yes. Tail app-server, database, load-balancer, and build-node logs from a single browser tab. Each node role exposes its own log set; download any log through SFTP or the dashboard. SSH into any node directly from the dashboard for deeper diagnostics.
Are collaborators notified of incidents?
Yes. Collaborators with the right role receive the same scaling, balance, and incident notifications as the primary account holder. Configure notification preferences (email, webhook) per user.
Can I send platform metrics to my own observability stack?
Yes. Export logs and metrics to your own collector through the platform API or via syslog/HTTP shipping. The platform provides the infrastructure signal at 1-minute resolution; the application signal (traces, custom counters, error rates) is yours to instrument with OpenTelemetry, Datadog, or New Relic.
Is there a WAF in front of my application?
Add Imunify360 or a managed WAF as a security add-on to filter common attack patterns (SQLi, XSS, file-inclusion, bad bots) before traffic reaches your application. Without an add-on, traffic still flows through platform-level network filtering, but request-content inspection requires the WAF.
What does the default firewall allow?
By default, only the public ports your environment exposes (HTTP/HTTPS on app nodes, configured database ports between tiers) accept traffic. Internal node-to-node traffic stays on the private network. Open additional ports explicitly per environment from the topology view.
How does role-based access work?
Invite collaborators with explicit roles (admin, developer, billing, read-only). Roles control which environments and which actions (deploy, restart, billing changes) the user can perform. All actions are logged in the account audit trail.
Can I get SSH access to my application nodes?
Yes. Generate an SSH key in the dashboard and connect to any node in your environment over the platform SSH gateway. Access is keyed to your account; collaborators get their own keys, scoped by role.
What security responsibilities stay with me?
Application code, dependency updates, secret management inside the app, and database-level access controls remain with your team. Togglebox manages the host OS, runtime base images, network perimeter, and platform updates. Statement of Support has the full split.
No matching questions found.
Test your stack on metered hosting
- Meters real usage: baseline plus actual use, not a fixed tier
- Turnkey clustering: traffic reroutes once clustering is enabled
- From Git push to live: in minutes, not hours
- Engineers on call: real support around the clock
Start a real trial environment
Deploy your app, test the ceiling, and estimate cost before you commit.
