How can I tell whether Pokémon were hacked/cheated?

I have been playing Pokemon Diamond a few years ago and I remember that I have some pokemon which were cheated. A while ago I purchased Pokemon Black 2 and Pokemon Y and wanted to get all my old pokemon to the newest edition, in this case Y.

Before doing so I would like to find out which pokemon were legitimately catched or acquired via events and which ones were cheated. Is there any service or way to do so?


There is in fact an online tool called Pokécheck which emulates the GTS to capture information about your Pokémon. It works by changing the wireless settings of your DS to make the game connect to the other server, after which you upload the Pokémon you want to check (it won't be removed from your game, so there's no risk of losing anything).

It also features a legality analysis which attempts to determine if the Pokémon is likely to have been hacked (and why it thinks so).

This is necessarily not 100% accurate - one possible flag is the EV distribution, which can just be a matter of careful planning - but it should give you a point in the right direction for the Pokémon you're concerned about.


I have found another solution, which more or less only covers the german members of this community, but with a bit of guidance I think everyone is able to take their benefits from it.

The german Pokémon fanpage Bisafans is running a Database of proven cheated Pokémon. These Pokémon have been checked by hack-checkers of the community, using various (advanced) techniques to determine if a pokémon was created by a third party tool etc.

The linked Page contains 3 input fields, I will explain what they mean and what you will have to insert:

  • Name: The (german) name of the Pokémon you want to check. If you want to search by Pokémon and do not know the german name of it, your best bet should be a google search like charmander german name.
  • Finder (OT): The name of the trainer that caught the Pokémon originally. You should find this information ingame when looking up your Pokémon either in your team or in a Box.
  • ID: The (numeric) ID of the trainer that caught the Pokémon originally. You will find this number just like you can find the name of the trainer

When you have entered at least one of these informations and hit the return-key on your keyboard, you should get a list of Pokémon and their stats which have been proven to be cheats.

All you have to do now is to compare your Pokémon with the ones in the list. If you can find your Pokémon in the list, it has not been caught legitimately. Caution! That does not mean that your Pokémon is not a cheat, this Database is just an awesome tool to save time when checking if your Pokémon is a cheat or not.