This paper presents GreenDroid, a tool for monitoring and analyzing power consumption for the Android ecosystem. This tool instruments the source code of a giving Android application and is able to estimate the power consumed when running it. Moreover, it uses advanced classification algorithms to detect abnormal power consumption and to relate them to fragments in the source code. A set of graphical results are produced that help software developers to identify abnormal power consumption in their source code. This growing awareness on energy efficiency is also changing the way programmers develop their software. As shown by recent empirical studies [1], software developers are more and more concerned on developing energy efficient software. Unfortunately, developing energy-aware software is still a difficult task. While the programming language community has developed advanced and widely-used software tools, such us debuggers and fault localization tools [2], memory profiler tools [3], [4], testing tools [5], [6], [7], benchmark and runtime monitoring frameworks [8], compiler optimizations [9], etc there are no equivalent tools/frameworks to profile/optimize power consumption. This paper presents a software tool, named GreenDroid 1 , for monitoring and analyzing power consumption for the Android ecosystem, one of the largest software ecosystems for mobile devices. This tool uses a power consumption model This work is financed by the FCT-Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) within project UID/EEA/50014/2013.