How can you tell if a Pokémon is really a Ditto?
Today I caught a Zubat, which was cool because I needed the candies to evolve my Golbat. However, when I caught it, the game was like ‘Oh?’ and lo and behold, my Zubat was really a Ditto. That was nice, ‘cuz I needed to catch a Ditto for my research tasks, but is there a way to tell if the Pokémon you’re about to catch is really a Ditto in disguise beforehand, or will the game just pleasantly surprise you like that?
Answers
This is not true. The catch circle is the color that it would be if it were actually the pokemon it was disguised as. I caught a Ditto just today, which I needed for a field research task, and it was disguised as a low-level Rattata, with a green circle. When it kept breaking out, even with razzberry & great ball, I was pretty sure it was a Ditto, and indeed it was, when I finally caught it.
Ditto has a 20% base catch rate, the same as starters and Pikachu, so it is considerably harder to catch than the trash pokemon it usually masquerades as. Fortunately, Ditto also has a lower flee rate than those trash pokemon, so although it frequently breaks out of the pokeball, it tends to give you a lot of chances to catch it.
In answer to the original question, there is no way to tell for sure until you actually catch it. Or, if someone else catches the same pokemon first, and it turns out to be a Ditto, it will be a Ditto for everyone else.