After accidentally transferring my brand new, beautiful Venomoth, and then seeing that I was not alone, I knew this would be a perfect FTFY example.
Overall Pokémon Go is a beautifully designed game. And like most beautifully-designed things, this only makes the flaws stand out more.
Enough talk, let’s fix this thing.
The most frustrating aspect of the accidental-transfer-button is that it wasn’t a problem in the beginning. The transfer button was at the bottom of the Pokémon’s card. It wasn’t in a FAB (floating action button) with its opposing action – favorite.
In my story, it’s the “favorite” that threw me. On the Pokémon overview screen, the FAB also has “favorite” – only here it serves as a sort rather than an action. I had sorted by favorite and I wanted to sort by something else. I was in autopilot as I sorted by the only other thing in the list.
This brings me to another point. This game has so many confirmation overlays, and whether you’re confirming positive or negative, they’re the same!
So here’s the fix.
We all know hamburgers are terrible. We all know FABs are terrible. Get rid of this frankenstein fabburger and bring back the button. Make the user scroll to transfer. Create a nice big touch target. This solves the lesser problem of accidentally evolving the thing you mean to transfer because your left thumb can’t reach all the way to the fabburger.
And then, embrace red. Negative actions like transfering a pokemon should not appear the same as positive actions like leveling up and evolving. Interrupt the user’s autopilot.
You might have noticed a few other changes with the profile. I separated the Pokémon's species from it's nickname and added the IVs – attack, defence, and stamina. Currently these are hidden despite the data existing.
I also prioritized actions like level up and evolve (though not visible here since Venomoth is already evolved). These actions would disappear when entering a gym, with the stats pushing up to the top.
Another detail, I updated the date to be unmistakable in its format and specified whether the Pokémon was caught, hatched, or evolved.