My mistake. I was using the rates from the old Pokemon DS games. The rate for PGo is 1/4096 for 100% pokemon.
The stats are rolled randomly, and because there are only 3 stats that are rolled randomly, they all combine together with 4096 total different combinations, hence which proves that we have a 1/4096 chance at finding a 100% IV pokemon.
Hatching is the same, but because hatching only gives pokemon with Iv's starting at 10 or higher, also adding onto the fact that there are only 3 stats instead of 6 on PGo, it is a 1/216 chance of getting a 100% IV pokemon through eggs.
Catching source: https://www.reddit.com/r/TheSilphRoad/comments/4uje6l/ivs_the_odds/
Hatching source: "Normal stats range from 0-15, so your chances of 15 are 1:4096 for a perfect wild Pokémon, since there are three stats. Eggs range from 10-15, so a 1:216 chance of getting a perfect one." - marumari (https://www.reddit.com/r/pokemongo/comments/5exc4w/just_hatched_this_100_iv_grimer_what_are_the/)
Shiny rate is still unknown.