20g seems way out of bounds of a normal BP range. Kind of an odd question, but are you sure it's a ball python?
If it is, it sounds very unhealthy to me. I would take it to a vet.
Maybe one of the breeders who's had a lot more experience with hatchlings and babies can talk to this, though. They may have seen BP's this small before. To me, though, if it is a BP, it sounds like it's time to go to the vet.