Not satisfied with your Magikarp? Go fishing for more in Magikarp Jump!
Magikarps are fished up with Old Rods of varying quality. Better quality rods can be unlocked by completing leagues and also allow Trainers to catch more varying patterns of Magikarp.
If a Trainer is not satisfied with a Magikarp, it is possible to pay Diamonds to catch another Magikarp.
The first refishing attempt costs 10 Diamonds. Every subsequent refishing attempt will cost 50 Diamonds.
Magikarps are not the only Pokemon that can be fished up with rods. After refishing 5 times (210 Diamonds), a Trainer can fish up a Dratini, triggering the event You're No Magikarp!.
Dratini are also not the only Pokemon that can be fished up with rods. If you use a rod that is flipped from left to right, a Trainer can fish up a Ditto, triggering the event Transforming Magikarp. Refishing will be free. After that, it will cost diamonds.