Just in case you are interested, if you minimize your Android app (that is, minifyEnabled is set to true), you need to keep the (model) classes you parse from JSON using Gson in the app's ProGuard rules (that is, -keep class foo.bar.classpath.** {*;}). Apparently nobody minimizes their apps because this isn't mentioned anywhere in Gson's documentation.