How it works

From sign-up to a shellin under a minute.

DeviceRent is a fleet of real, physical Android devices you can reach over an authenticated tunnel and drive with your local toolchain. No emulators, no managed UIs, no proprietary clients — just adb and the device.

The flow

Five steps from cold start to a working shell.

Each step typically takes seconds. The whole flow is designed so you can be debugging on real hardware before your coffee finishes brewing.

  1. 01

    Sign up & verify

    ≈ 30 seconds

    Create an account with email and a password, then verify the email link. Optionally enable TOTP multi-factor authentication from the security page — it takes one QR scan and we'll generate backup codes.

    Free tier accounts can browse the fleet immediately. Paid tiers unlock at the moment Stripe confirms the first payment.

  2. 02

    Pick a device

    ≈ 5 seconds

    Browse the live fleet on your dashboard. Each card shows model, Android version, root status, and a heartbeat indicator updated every 5 seconds, so you only see devices that are actually online.

    Filter by manufacturer, screen size, or root capability. Reserved-slot tiers see their dedicated unit pinned to the top.

  3. 03

    Reserve a session

    ≈ 1 second

    Click connect. The platform issues a short-lived ADB key bound to your account, joins the device to your private network, and returns the host and port to point your local toolchain at.

    Sessions hold the device exclusively for you while active. The billing meter starts the moment the connection is established.

  4. 04

    Use your tools

    for as long as you need

    Run adb shell, install APKs, attach Android Studio, drive scrcpy, or connect Frida — anything that speaks ADB works, because the device is reached the same way it would be on your desk.

    Sub-second latency over Tailscale from our Netherlands (EU) region. Heartbeats keep the session warm; idle protection extends the connection if you step away briefly.

  5. 05

    Stop the session

    ≈ 1 second

    End the session from the dashboard or your CLI. The device is released back to the pool and sanitized for the next renter, and the meter stops to the second. Your minutes are deducted from your wallet at your tier's rate.

    On dedicated-slot tiers, your unit stays paired to your account between sessions and state persists.

The wiring

How your machine reaches the device.

We don't proxy ADB through a custom protocol or wrap it in a web UI. Your local adb client connects to a real device over a private network — the same way it would on your desk, just routed.

Tailscale tunnel

Each device sits behind a bridge on a private Tailscale network. Your browser reaches it through an authenticated tunnel with a short-lived, session-scoped token — no Tailscale client on your side, and no public ADB port anywhere.

Real ADB, your tools

Use the adb client you already have. Android Studio, Espresso, Frida, scrcpy, and CI runners all connect with no DeviceRent-specific code paths.

5-second heartbeats

Devices report status every 5 seconds. Stale units are removed from the fleet immediately so you never reserve hardware that isn't actually online.

Automation & CI

Or hand the device to your test suite.

You don't have to sit in an interactive session. On any paid tier you can mint durable API keys that let headless tools drive a rented phone — point Appium, Espresso, Maestro, or a CI runner at it the same way you'd target any ADB device.

Durable API keys

Mint keys scoped to your account from your automation settings. Each key is shown once, stored only as a hash, and revocable any time.

Appium, Espresso, Maestro

Drive the device with the framework you already use. A key exchanges for a short-lived bridge token per run — the same authenticated pipe as an interactive session.

Built for pipelines

Plug a key into CI and run real-device jobs on every push. Pair it with a dedicated slot for a stable, persistent target that survives between runs.

Billing

Pay for the minutes you use.

No long-term contracts on the first four tiers. Cancel from your billing page in one click — your remaining minutes stay usable until the end of the billing period.

Wallet credits

Every paid tier refills a monthly credit balance. Sessions deduct credits per minute at your tier's rate; unused credits roll forward within the period.

Tiered pricing

Higher tiers come with bigger credit bundles and a per-minute discount. Switch tiers any time — proration is handled at checkout.

Dedicated slots

On the top tier you reserve a single device exclusively. State persists between sessions — useful for long-running test installations and CI fixtures.

Security

Built so the wrong people can't reach your devices.

Multi-factor auth

Enable TOTP from your security page. Sensitive actions like payment-method changes require a fresh authentication factor.

Account-scoped keys

ADB keys are short-lived and bound to your account and session. Ending a session revokes the key — even if the network is later compromised.

Row-level isolation

Every database read and write is gated by Postgres row-level security tied to your user ID. You cannot see another tenant's sessions or billing records.

FAQ

Common questions.

Are these emulators or real devices?
Real, physical Android phones — Pixel, Samsung, OnePlus, Xiaomi, with sensors that actually report real values. We never run emulators or device farms-as-emulators on your behalf.
Do I need a special client?
No — there's no VPN or app to install on your side. A rented session runs in your browser, dropping you straight into a live ADB shell and screen mirror on the device. To drive it from your own tooling or CI, paid tiers add automation keys (Appium, Espresso, Maestro). Either way you never join a Tailscale network yourself; the device sits on a private one we manage and reach over an authenticated tunnel.
What happens to my data after a session?
On standard tiers, devices are sanitized and returned to the pool between renters, so the next person starts from a clean state rather than yours. On dedicated slots your install state persists between sessions; you're responsible for what you leave on it.
Where are the devices located?
Our entire phone fleet is physically hosted in the Netherlands, inside the EU. Sessions and the data you put on a device during them stay within the European Union — GDPR data residency by default, with no transfers to non-EU regions for the rented hardware.
How is billing measured?
By the minute, deducted from a monthly credit wallet that refills with your subscription. The free tier has hard usage caps; paid tiers have soft caps with overage rates published on the pricing page.
Can I cancel any time?
Yes. Cancel from your billing page and you keep access through the end of the current period. No prorated refunds — your remaining minutes stay usable until the period ends.
Is this suitable for CI?
Yes. Any paid tier can mint automation API keys to drive devices headlessly with Appium, Espresso, Maestro, or your CI runner. The dedicated-slot tier is purpose-built for it — a stable host and a persistent device that stays paired between jobs — while metered tiers reserve a fresh device per run.

Ready to try it?

Open a free account, connect a device, and run your first ADB command. No card required to start.