For instance if me and my friend had a Pidgeot and we powered them all the way up. Could mine end up with like 525 and his at like 500?
If you and your friend are the same player level, no. Max CP is based solely on player level and type of Pokemon. Each Pokemon has the same max CP at the same player level. If you max out 2 Pidgeys they will have the same CP. As Joe pointed out there can be a difference in HP. I'm fairly sure this is based on size and weight (XL vs XS), but those minuscule amounts of health don't amount to much in a gym battle.
The stats will definitely differ for different instances of the same pokemon. For example, I have 2 Fearows, one is 338CP and has 50HP, the second is at 358CP and has 48HP.
I believe that max CP is related to your trainer level as well, so the higher level you are, the stronger your pokemon can become.
Yes. Though I don't know all the details, player level seems to have effect on this (so I've read), but it also depends on the individual pokémon. To illustrate, these screenshots are from the same moment, yet you can see that the CP bars are filled differently, thus showing different max CP stats. Whereas for the first magikarp 10CP is about 25%, for the second magikarp it's significantly less (although I don't know from what percentage the bar does in fact fill).
Here is the truth.
- Pokemons cant pass your current level. When the gauge, that arc on top of Pokemon, is filled, it means that Pokemon is at the same level as you.
- Same Pokemon can have different max CP, its random. Eggs hatch better "quality" Pokemon. Means when they reach your player level, their CP will be higher than the same but from not out of an egg Pokemon.
- XL XS etc have nothing to do with CP. It's just like...more detailed, to make things look more real. "Oh, I have a fat Pikachu"
- Same level, 2 players, see the same pokemon, it will have same CP. If players have different level, the CP will be randomly different: Higher level player has HIGHER CHANCE of seeing better CP Pokemon, not 100% tho.
- After level 30, you wont get any higher CP wild Pokemon.
- After level 20, you wont get higher CP hatched Pokemon, means if you are lvl 40, you will get half filled gauge Pokemon. If you were to get the exact same Pokemonat lvl20, you would see a max filled. If you were lvl15, a max filled but still lower CP, the gauge would get emptier if u level up. Of couse hatching from eggs doesn't guarantee that the Pokemon will come out with a maxed gauge, just better "quality", meaning will have a higher max than other same Pokemon.
Pokemon in Pokemon Go have innate values that affect their CP at a specific level.
Here https://thesilphroad.com/research#monRater is a calculator that can help you estimate these values.
The maximum level is determined by the trainer's level. If you rise two pokemon to that level, then they will have different CP depending on their innate stats, which can cause something like 10-20% difference.