Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Android emulators
  3. Cuttlefish

Cuttlefish

What it is

Cuttlefish is a configurable virtual Android device that platform and app developers can run locally or remotely to develop and validate code without depending on physical hardware. It aims to reproduce Android framework behavior closely, including custom framework implementations. Users can set the device form factor, RAM, and CPU count, then run multiple devices in parallel with concurrent test execution. Documented uses include CTS, framework compliance, continuous integration, and custom test suites.

Cuttlefish runs locally on Linux x86 and ARM64 machines, and requires host virtualization with KVM available. It registers with adb as a normal device and can be viewed and controlled in a browser through a local WebRTC webview. Google Cloud is natively supported; support for other cloud platforms is planned. Setup involves building and installing Debian host packages and downloading device images and a host package from Android Continuous Integration. Cuttlefish is free and open source. It differs from physical devices mainly at the hardware abstraction layer and in software that interacts with custom hardware.

For and against

For

  • Runs multiple virtual devices in parallel
  • Supports concurrent test execution
  • Registers with adb as a normal device
  • Can be viewed and controlled in a browser
  • Free and open source

Against

  • Requires a Linux x86 or ARM64 host for local use
  • Host virtualization with KVM is required
  • Other cloud platform support is planned, not native
  • Differs from physical devices around custom hardware

The verdict

Cuttlefish provides configurable virtual Android devices for development and concurrent testing, with adb access and a browser view. Its Linux and KVM requirements, plus differences around custom hardware, matter when deciding whether it fits a test setup.

Who it suits

Cuttlefish suits platform and app developers who need virtual Android devices for development or testing without relying on physical hardware. It is also relevant to teams running concurrent tests on Linux hosts with KVM.

On the record

Access
Cuttlefish registers as a normal device with adb and can be viewed and controlled in a browser through a local WebRTC webview.source.android.com · read 8 Oct 2026
ADB and remote desktop
Cuttlefish registers as a normal device with adb and can be interacted with through remote desktop.source.android.com · read 8 Oct 2026
Cloud
Cuttlefish natively supports Google Cloud; support for other cloud platforms is planned.source.android.com · read 8 Oct 2026
Cloud support
Cuttlefish natively supports Google Cloud, while support for other cloud platforms is described as planned.source.android.com · read 8 Oct 2026
Configuration
Users can adjust device form factor, RAM, and CPU count.source.android.com · read 8 Oct 2026
Desktop platforms
Linuxsource.android.com · read 19 Sep 2026
Framework fidelity
Cuttlefish aims to closely reproduce Android framework behavior, including custom framework implementations.source.android.com · read 8 Oct 2026
Host platforms
The documentation says Cuttlefish can run locally on Linux x86 and ARM64 machines.source.android.com · read 8 Oct 2026
Host requirement
Cuttlefish requires virtualization with KVM available on the host machine.source.android.com · read 8 Oct 2026
Intended use
It helps platform and app developers develop and validate code changes without depending on physical hardware.source.android.com · read 8 Oct 2026
Limit
Cuttlefish differs from physical devices mainly at the hardware abstraction layer and in software that interacts with custom hardware.source.android.com · read 8 Oct 2026
Multi-instance
Yessource.android.com · read 19 Sep 2026
Notable limitation
Differences from physical devices include the hardware abstraction layer and software that interacts with custom hardware.source.android.com · read 8 Oct 2026
Parallel devices
Cuttlefish supports running multiple devices in parallel and concurrent test execution.source.android.com · read 8 Oct 2026
Platform support
Cuttlefish runs locally on Linux x86 and ARM64 machines.source.android.com · read 8 Oct 2026
Product
Cuttlefish is a configurable virtual Android-powered device that runs locally or remotely.source.android.com · read 8 Oct 2026
Purpose
It lets platform and app developers develop and validate code changes without depending on physical hardware.source.android.com · read 8 Oct 2026
Scale
Cuttlefish supports running multiple devices in parallel and concurrent test execution.source.android.com · read 8 Oct 2026

Alternatives to Cuttlefish

Every alternative, ranked