← Changelog
v1.0launchproduct

DroidMDM — Simple and affordable Android MDM

A
Arnold, founder of DroidMDM — April 5, 2026

A few years ago I needed to manage eight Android tablets for a side project. I looked at Jamf, SOTI, Intune. The cheapest option was $6 per device per month, billed annually, minimum 25 seats. I closed the tab.

So I built my own. Today, DroidMDM v1.0 is live. It's the Android MDM I wanted when I was managing tablets with ADB scripts and prayer. Here's everything that ships with it.

QR code enrollment — under 5 minutes per device

Enrollment is the thing that breaks most MDM setups before they even start. Certificates, Google accounts, managed EMM configs — it's a lot of ceremony for what should be a simple operation.

In DroidMDM, you create a device in the dashboard and get a QR code. Factory reset the Android device, tap the welcome screen six times to open the built-in QR scanner, scan the code. The device installs the launcher, checks in, and shows as active. That's it. No sideloading, no developer mode, no ADB.

Groups and per-group configuration

Every device belongs to a group, and groups are the unit of configuration. Different groups can have different kiosk apps, different policies, different apps installed. You set the config once at the group level and it propagates to every device in that group.

This makes it practical to manage mixed fleets — a restaurant might have a front-of-house kiosk group and a back-office tablet group with completely different settings, all from one dashboard.

The DroidMDM launcher and kiosk mode

DroidMDM ships its own Android launcher — a custom home screen app that becomes the default launcher on every enrolled device. It's the foundation that makes everything else work. The launcher is what talks to the server, applies configs, shows your branding, and locks the device down.

Kiosk mode is built into the launcher. Enable it and the device becomes a dedicated-purpose terminal: the status bar is hidden, the home button is disabled, and users can only interact with what you've allowed. Admins exit via a long-press on the launcher background, entering the admin exit password.

Beyond basic kiosk, there are two deeper locking modes. Single App Lock uses Android's Lock Task Mode — an OS-level pin, not just UI hiding. Home, Recents, and the status bar are fully disabled by the OS itself. Lock to URL opens a built-in browser locked to a specific domain; users can't navigate away or exit the browser. Both modes are set per group and pushed immediately via FCM.

Config — what's actually in there

The config page is where most of the power lives. It's split into six sections, all auto-saving per group:

  • Securityadmin exit password, device screen lock PIN (silently enforced on every sync), and wipe after N failed unlock attempts
  • Featureskiosk mode toggle, single app lock, lock to URL, screen orientation (auto/portrait/landscape), device theme (light/dark), and per-radio toggles for GPS, Bluetooth, WiFi, and mobile data
  • SystemOS update policy: let the user decide, install automatically, schedule to a nightly maintenance window, or postpone updates for up to 30 days
  • Restrictionsblock factory reset, block USB debugging, block safe boot, block sideloading, block USB file transfer, block camera, lock the status bar, lock volume keys, keep screen on, disable the settings app, plus a custom restriction field for any Android UserManager key
  • Displayoptionally show the device label on the launcher screen
  • WiFiprovisioning WiFi (embedded in the QR code for zero-touch enrollment) and additional WiFi networks pushed to devices on every config sync

Remote device actions

Every device in your dashboard has a full set of remote actions, delivered via Firebase Cloud Messaging so they arrive in seconds:

  • Push configsend updated configuration immediately without waiting for the 15-minute auto-sync
  • Remote rebootrestart any device from your browser
  • Lock with messagelock the screen and display a custom message (e.g. 'Call IT: 555-0100')
  • Unlockclear a lock remotely without touching the device
  • Factory wiperemote reset for lost or compromised devices

App management without the Play Store

For dedicated-purpose devices you usually need to deploy a private APK, not a public Play Store app. Upload your APK to the dashboard, assign it to a group, and devices silently download and install it on next sync.

Real-time device info

Each enrolled device reports everything you'd want to know about what's running in the field: model, Android version, CPU, serial number, IMEI and IMEI2 (dual-SIM supported), ICCID, phone number, battery level and charging state, total and free storage.

Online status reflects actual FCM reachability — if the device has an active connection it shows online, not just 'checked in recently'. You always know what you're working with.

Event logging

This is the feature I'm most pleased with. The logs page captures 11 event types per device group, all configurable:

  • Device boot and restart events
  • Config synced and config failure
  • App install success and failure
  • App uninstalls
  • Unauthorized app launch attempts
  • Kiosk exit attempts
  • Network type changes
  • App crashes and errors
  • Policy violations

Logs are filterable by group, severity level, and keyword search. Entries are retained for 30 days. For the first time you can actually see what's happening on your fleet — not just whether a device is online, but what it's been doing.

Pricing

Free tier: 5 devices, forever, no credit card. Paid plans are flat-rate — $15/month for up to 30 devices, $35/month for up to 100, $75/month for up to 500. No per-device billing, ever.

I think per-device pricing is one of the worst things that happened to the MDM industry. It punishes you for scaling. With flat-rate you can add a device without opening a calculator first.

What's next

v1.0 is the foundation. I have ideas for what comes next — location tracking, scheduled reboots, more granular app permissions, a public API — but I'm not going to pretend I know exactly what you need better than you do.

The roadmap is going to be shaped by the people actually using this. If you're managing a fleet and there's something missing, something broken, or something that would make your life significantly easier — the feedback button in the dashboard goes directly to me. Not a ticketing system. Not a support queue. Me.

Tell me what you need. That's how this gets built.

Try DroidMDM free

5 devices free forever. No credit card. Enroll your first device in under 5 minutes.