Suggest a tool

Maestro vs Detox: open-source mobile automation tools compared

Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.

Summary

Maestro: Framework for UI and end-to-end testing of Android, iOS and web apps using YAML flows.

Detox: Gray box end-to-end testing framework for React Native apps on Android and iOS, with tests in JavaScript.

Both are listed under Mobile automation. The table gives repository metrics from the GitHub API with their fetch date, then the documented facts used for every comparison in this category, each linked to the README or docs page it comes from. A cell reads "not documented" when the fact was not found in the project's documentation; that does not mean the feature is absent.

Side by side

Maestro and Detox: metrics and documented facts, in the fixed row order used for mobile automation comparisons.
FactMaestroDetox
Stars15,752112,0271
Forks96611,9111
Contributors12112811
Last release2026-08-3112026-05-301
Last commit2026-09-1812026-06-161
Commits in 90 days97101
LicenseApache-2.01MIT1
Primary languageKotlin1JavaScript1
Statusactive1slow1
Languages for writing testsYAML flow files source: READMEJavaScript source: README
Mobile platformsAndroid, iOS and web on emulators, simulators, browsers and physical Android devices source: READMEReact Native apps on Android and iOS source: README
Test authoring formatYAML commands such as launchApp, tapOn, assertVisible; visual flow building in Maestro Studio source: READMECode (JavaScript APIs usable with any test runner; Jest integration included) source: README
Parallel or distributed executionCLI sharding across connected devices (--shards, --shard-split, --shard-all) source: Docs: Maestro CLI commands and optionsMultiple Jest workers (--maxWorkers <N> forwarded by detox test) source: Docs: Parallel Test Execution
CI integrationReport formats for Jenkins, GitHub Actions and Azure DevOps source: Docs: Test reports and artifactsTravis CI, CircleCI, Jenkins named in the README source: README
Report formatsJUnit XML, HTML, HTML detailed (--format flag) source: Docs: Test reports and artifactsArtifacts: device logs (.log), screenshots (.png), screen recordings (.mp4) source: Docs: Artifacts
Install methodInstall script (curl -fsSL "https://get.maestro.mobile.dev" | bash); requires Java 17 or higher source: READMEnpm (npm install detox --save-dev), with Jest source: Docs: Project setup (React Native)

1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.

When each fits

Written from each project's documented scope, not from preference. Neither tool is ranked.

Maestro

Fits projects that run UI and end-to-end tests for Android, iOS and web apps; its README describes tests kept as a flat list of YAML commands. source: README

Detox

Fits projects that run gray box end-to-end tests of React Native apps on Android and iOS; its README describes synchronization that monitors asynchronous operations in the app. source: README

More on these tools

Sources

  1. GitHub REST API: repository, read
  2. GitHub REST API: repository, read
  3. GitHub REST API: contributors, read
  4. GitHub REST API: contributors, read
  5. GitHub REST API: latest release, read
  6. GitHub REST API: latest release, read
  7. GitHub REST API: commits, read
  8. GitHub REST API: commits, read
  9. README, read
  10. README, read
  11. Docs: Maestro CLI commands and options, read
  12. Docs: Parallel Test Execution, read
  13. Docs: Test reports and artifacts, read
  14. Docs: Artifacts, read
  15. Docs: Project setup (React Native), read

Documented facts collected 2026-09-22. See the methodology for how metrics and facts are gathered.