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.
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.
Each step typically takes seconds. The whole flow is designed so you can be debugging on real hardware before your coffee finishes brewing.
≈ 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.
≈ 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.
≈ 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.
for as long as you need
Run adb shell, install APKs, attach Android Studio, or drive scrcpy — 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.
≈ 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.
Once the session is up you can describe a task in plain English and an agent works through it on the device — reading the screen, tapping, typing, installing your APK — while you watch every step in the mirror. It runs through the same connection you just set up, so it can do exactly what you can do by hand and nothing more.
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.
adb talks to a normal HTTPS endpoint. The token it carries is scoped to the one device you rented and expires with the rental — which is why there is no ADB port anywhere on the public internet, and nothing to port-forward on your side.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.
Use the adb client you already have. Android Studio, Appium, Espresso, scrcpy, and CI runners all connect with no DeviceRent-specific code paths.
Devices report status every 5 seconds. Stale units are removed from the fleet immediately so you never reserve hardware that isn't actually online.
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, or a CI runner at it the same way you'd target any ADB device.
Mint keys scoped to your account from your automation settings. Each key is shown once, stored only as a hash, and revocable any time.
Drive the device with the framework you already use, over the same authenticated pipe as an interactive session. A key exchanges for a short-lived, device-scoped token, and access ends with the rental — sessions are revoked within seconds of it finishing.
Plug a key into CI and run real-device jobs from your pipeline. A job drives a rental you hold, so pair it with a dedicated slot for a stable, persistent target that is always there between runs.
adb reverse. The connector forwards ports to the phone, not back from it, so frameworks that need the device to reach your host — Detox, for example — won't run.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.
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.
Higher tiers come with bigger credit bundles and a per-minute discount. Switch tiers any time — proration is handled at checkout.
On the top tier you reserve a single device exclusively. State persists between sessions — useful for long-running test installations and CI fixtures.
Enable TOTP from your security page. Sensitive actions like payment-method changes require a fresh authentication factor.
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.
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.
Open a free account, connect a device, and run your first ADB command. No card required to start.