NimbleDroid automatically discovers user flows and tests them for issues.

No SDK, just upload your APK and get results in minutes.

Performance tuning is difficult, tedious and time consuming. NimbleDroid makes the task
suck infinitely less. The saving on many dev hours is just a bonus.

Bryan LiSenior Mobile Engineering Manager at
Yahoo!

I would highly recommend nimbledroid for anyone looking to improve startup performance
of their Android application. Over the past few months, nimbledroid have helped us
reduce our app startup time by 40% while pinpointing our own and third party SDKs
bottlenecks.

Ben CelebicicMobile Practice Lead at
Abercrombie & fitch

Network usage tends to be tricky and overlooked. At Azimo, we think about those users
for whom every KB matters. NimbleDroid makes the task easier and more pleasant.

Marcin SzulcSoftware Engineer at
Azimo

Automatic discovery of user flows was so good we thought it was humans doing it via
Mechanical Turk!

Mike OliverVP of Product Engineering at
Runkeeper

At Flipkart we consider Performance an integral part of the product quality. With Nimbledroid
integrated to our CI we have been able to find performance regressions as they happen, enabling
us to react to them quickly and fix them at a much cheaper cost. Nimbledroid has helped us left-shift
quality in our SDLC

Yasir MohammadDirector of Engineering
Flipkart

Effortless
to use, easy to customize

Just upload your production or debug APK and test for crashes, memory leaks, and slowdowns.
When you’re ready to test custom user flows, use standard Espresso code to generate NimbleDroid profiles.

Get results
in minutes
, not days

Since NimbleDroid is automated, your tests are ready within minutes, eliminating the lag time you get with manual QA.

Protect your revenue streams with
Release Checks

Before you release a new version, analyze your app for issues and catch them before they go out the door. Track your app performance over time with our trend graph.

Integrate with your CI
to find regressions during development

By integrating with your CI process via our Gradle plugin, you can analyze individual builds to determine when a commit has introduced a regression.

Identify root causes of issues
and fix them
fast

We’ll not only report issues with your app, we will show you exactly where the problem is, like detailed call stacks for slowdowns and reference chains for memory leaks.

8 Ways Your App Can STOP Leaking Memory

In part one of this blog post “Eight Ways Your Android App Can Leak Memory”, we went over eight different
ways your code can cause your Android application to leak memory. Specifically, all eight leaks were
leaking an Activity instance, which is particularly dangerous because activities have a very large...

App Diets are not a Fad

In our last post we explored an architecture/library selection that would lead to nearly perfect startup
times. Today I wanted to explore another type of performance optimization: APK size. A smaller APK results
in faster resource lookup and faster reflection. Image optimization, an important way to cut down APK size
,...

8 Ways Your App Can Leak Memory

One advantage of a garbage-collecting-language like Java is that it removes the need for developers to
explicitly manage allocated memory. This reduces the likelihood of a segmentation fault crashing the app
or an unfreed memory allocation bloating the heap, thus creating safer code. Unfortunately, there are other
ways that memory...