Menu Close Back


ProGuardProGuard: Open Source Optimizer for Java and Kotlin

Open Source Optimizer for Java and Kotlin

ProGuard is the most popular optimizer for Java bytecode. Use ProGuard to make your Java and Kotlin applications up to: 

  • 90% smaller
  • 20% faster

ProGuard also provides minimal protection against reverse engineering by obfuscating the names of classes, fields and methods.


Android mobile apps

Android mobile applications

ProGuard reduces the download and startup time of Android applications and improves their performance on mobile devices.  

Desktop apps

Desktop applications

ProGuard obfuscates Java applications and pre-verifies the processed code for Java Micro Edition and for Java 6 and higher.  

Embedded apps

Embedded applications

ProGuard optimizes and obfuscates Java applications for cell phones, Blu-ray players, set-top boxes and other constrained devices.  


  • ProGuard fully supports Java and Kotlin applications, enabling developers to take full advantage of these languages’ features without sacrificing performance or security.
  • ProGuard is a command-line tool with an optional graphical user interface.
  • ProGuard is easy to configure. A few intuitive command line options or a simple configuration file is all it takes. All available options are detailed in the user manual.
  • ProGuard is fast: It processes small Android applications and entire runtime libraries in seconds.

Connect with a network of ProGuard experts

Join the Guardsquare community for free to:

  • Share knowledge with a network of other ProGuard users, app developers, and the Guardsquare engineers behind ProGuard
  • Get support from ProGuard experts
  • Simplify implementations without library of user-generated rules for ProGuard
  • Leverage ProGuard Playground to learn how ProGuard works and test configurations without rebuilding

Visit here

Guardsquare Community


"ProGuard is the ultimate Java obfuscator!"


"ProGuard is pure quality - powerful and trouble-free."

M.B., Statestep

"ProGuard rules. Much easier to use than the commercial alternatives."

B.G., Quiotix Corp

"ProGuard is a seriously sweet tool."

D.E., Google

"It is the simplest and most robust obfuscator we have ever used."

I.I., Hewlett-Packard

Spotlight on ProGuard Playground

ProGuard Playground is a first-in-class visual configuration helper tool/assistant tool.

Playground allows developers to share and collaborate on ProGuard and R8 configuration, by visualizing the impact of keep rules. It enables faster and fewer iterations to finalize the rules for a dedicated APK or JAR. Its main aim is to allow developers to assess the impact of a filter rule without the need to rebuild the app first.

Features and benefits include: 

  • Onboarding: For newcomers to ProGuard or R8, this is an excellent tool to get acquainted with the functionality and impact of -keep rules.

  • Tuning: Fine-tune filter rules with a visual tool that does not require rebuilding to test new -keep rules.

  • Support: Stuck on a rule? Just ask the experts in the Guardsquare Community, your resource for all things ProGuard.

  • Debugging: Quickly upload a mobile app and perform a visual check of the effectiveness of a certain rule for faster debugging without rebuilding.

Get started

ProGuard Playground

Spotlight on ProGuardCORE

ProGuardCORE allows developers to integrate ProGuard’s powerful code parsing capabilities into their own Java bytecode projects. It provides the functionality needed to read, write, modify and analyze Java class files.

  Get started with ProGuardCORE

Or have a look at two of our open source projects built on ProGuardCORE
ProGuard Assembler/Disassembler and Kotlin Metadata Printer

Get started with ProGuard


Download ProGuard

Download and contribute to ProGuard. You can submit bug reports and open pull requests on GitHub.

Download on Github >

ProGuard manual

ProGuard manual

All the information you need to set up ProGuard is detailed in the ProGuard manual.

ProGuard manual >