IV determination using CP for Pokemon in the wild

In Raids, and hatching eggs, a Pokémon's CP is tied to its IVs.

For example, I have caught 2 Darkrai in recent raids. Both had a CP of 2124, and both had IVs of 14/14/15 (Atk/Def/HP).

Additionally, I have hatched 2 Magikarp from eggs. Again both had a CP of 155, and both had IVs of 15/15/13 (Atk/Def/HP).

I know that there is a link between CPs and predetermined IVs in these situations (as there are raid IV calaculators, though I haven't found any to determine Egg IVs), but is there any link between CP and IVs for Pokémon caught in the wild?


A Pokemon you encounter in the wild has the same CP after you catch it. The CP is calculated from a per-species formula that depends on the IVs and the level. Since you can't see the level in the wild, you can't calculate the IVs precisely, but you can approximate.

The app Calcy IV, for example, can calculate the stats of Pokemon you encounter in the wild using information including the CP and the color of the circle.


In all cases, a Pokemon's CP is tied to its IVs. CP is determined by the combination of IVs and level; your hatched Pokemon and your raid Pokemon matched on the two data points you observed (IVs and CP) because they also matched on the third (level).

A hatched or raid Pokemon will always be level 20, with minimum 10/10/10 IVs; the only exception is a weather-boosted raid boss, which will be level 25. Therefore, if two of the same Pokemon from the same source have the same IVs, they will also have the same level, and therefore the same CP.

For wild spawns, the CP formula is exactly the same; it is a calculation based on IVs (with no minimum for standard spawns, and 4/4/4 for weather boosted) and level (with no minimum). If you know two of the three and the formula for that Pokemon, you can determine the third in all cases. IV calculators such as Calcy IV use the statistics exposed by the game (IV, CP, and the level arc) to calculate the hidden statistic (level).


I know that there is a link between CPs and predetermined IVs in these situations

These IVs are not "predetermined"; they have a more limited range (each IV must be at least 10), but they otherwise are random draws upon hatch/raid completion. They're not related to the CP of the Pokémon you fight in the raid; those CP (and the IV underlying them) are fixed.

The fact that you got two identical Darkrai and two identical Magikarp is just happenstance, nothing more. The odds are 1/(6^3), or 1/216, of that happening (of the next Darkrai having the identical IVs of the last one you caught).

The CP formula is as such:

floor(max(10,(attack*(defense^0.5)*(stamina^0.5)*(CPM^2))/10))

See this Pokemon Go Hub article for more details on how CP is calculated. These values (attack, defense, stamina) are specific to the Pokémon, and each one has a "base" set of A/D/S values that are what a 0/0/0 Pokémon would have, plus the IV value. They go up with level, as does the CPM value (which is an arbitrary value used to make the CPs scale the way Niantic wants them to). The IVs don't actually matter very much - as an example, a level 30 Machamp would have an Attack of 234, so the attack IV would take it from 234 to 249. Not a huge difference, after all. The level and the base stats make far more difference.