I didn't dig too deeply into what this actually does.  Upon my deeper review now, it looks like this type adapter has no impact on encoding, and on decoding changes the behavior of map with Object values from decoding JSON number types as Double to instead decoding them as Integer.  If that's accurate, then I don't think this should be the default in either GsonDecoder nor the GsonModule, as that could be losing meaningful precision in some cases.