Cloud Android emulator or cloud Android phone? Run Android in the cloud by the second.
Why not just run an emulator?
The Android emulator is excellent on a powerful workstation. Everywhere else it is a tax: gigabytes of SDK and system images, hardware acceleration that CI runners and cloud sandboxes often do not offer, and an emulator that competes with your IDE for memory.
| Local emulator | Phonebox cloud phone | |
|---|---|---|
| Install | Android Studio, SDK, a system image | Nothing; an API key or the CLI |
| Runs in CI and sandboxes | Needs nested virtualization | Anywhere with network access |
| State | Lives on one machine | Persistent phone, shared by your team and agents |
| Control | ADB and test frameworks | REST, CLI, TypeScript SDK, MCP, live view |
| Cost | Your hardware and time | $0.06 per minute while running; parked is free |
Run an APK online
Install the CLI with the setup prompt, create a phone, and install your build:
./gradlew assembleDebug
phonebox apps "$PHONEBOX_PHONE" install app/build/outputs/apk/debug/app-debug.apkAny signed APK up to 500 MiB installs, debug builds included. Apps from Phonebox's app library install by package name, and Play Store apps install through the Play Store app on the phone.
To use the app yourself, open a live view link in your browser. To drive it from code, use the SDK:
import { Phonebox } from "phonebox";
const pb = new Phonebox(); // reads PHONEBOX_API_KEY
const phone = await pb.phones.create({ name: "signup-test", idempotencyKey: `signup-${Date.now()}` });
try {
if (phone.status !== "ready") await phone.waitUntil("ready");
console.log(await phone.look());
await phone.tap({ text: "Sign in" });
await phone.waitFor({ text: "Welcome" }, { timeoutMs: 20_000 });
} finally {
await phone.park(); // parked phones cost nothing and keep their apps
}A phone that remembers
A Phonebox phone is persistent. Park it and it stops billing, while keeping its installed apps, files and signed-in accounts. Start it again tomorrow and it is exactly where you left it. Set the location, locale and timezone per phone, and choose the country it appears in when you create it.
What it costs
| Session | Cost |
|---|---|
| 20 seconds | $0.06, the one-minute minimum |
| 10 minutes | $0.60 |
| 1 hour | $3.60 |
| Parked for a week | $0.00 |
No subscription, no seats. Credits from $10 never expire, and every project has a monthly spending limit. See pricing.
Start a phone now
Read https://phonebox.dev/setup.md and set me up with Phonebox from here: get me signed in and ready, then find out what I want to use phones for and help me with that.Building with agents? Read cloud phones for AI agents and the Android MCP server guide.
Questions
What is a cloud Android emulator?
A cloud Android emulator is an Android device that runs on a remote server instead of your computer. You reach it through a browser, an API or a test framework. Phonebox provides cloud Android phones you control through an API, CLI, SDK or MCP server, billed per second.
Can I run an APK online without installing an emulator?
Yes. Upload a signed APK up to 500 MiB to a Phonebox phone with one CLI command or a few API calls, then open it, read the screen and interact with it from code, from an AI agent, or in your browser through a live view link.
How much does a cloud Android phone cost?
Phonebox charges $0.06 per phone-minute, billed per second with a one-minute minimum per session, which is $3.60 for a full hour. Parked phones are free and keep their apps and data. New accounts get $2 of free credit with no card.
Is a cloud Android phone faster than a local emulator?
It removes the local cost: no Android Studio, no system image, no hardware acceleration and no RAM pressure on your laptop or CI runner. Interaction happens over the network, so it suits automation and agents better than playing games.