Sorry, I was at a friends and couldn’t explain properly before, but here’s a good explanation of a Pokemon’s Level:
A Pokémon’s level determines how much of its potential it is allowed to fulfill. It limits how strong it is now, compared to how strong that same Pokémon potentially could be. It is currently the only thing that you can change about a Pokémon’s fighting ability once you have caught it.
Every time that you Power Up, the only affect that it has is an increase of 0.5 to your Pokémon Level. This means that you must Power Up your Pokémon two times to increase it by one Pokémon Level. The maximum that you can Power Up your Pokémon is to 1.5 Levels above your current Trainer Level.
When you catch a Pokémon in a raid, it will always be Level 20 unless it is weather boosted, in which case it will always be Level 25.
Once you are Level 20 and over, all Pokemon from eggs you hatch are Level 20.
Once you are Level 30, if you are PokeHunting with a friend and you both click on the same Pokémon, it will be exactly the same CP, level and stats for both of you (shinies still remain independent, but the stats will be exactly the same).
The Pokémon rewarded from research quests are all Level 15, which is disappointingly low.
I would always advise anyone to think very carefully before powering up a Pokemon below Level 20, as the stardust and candy cost will be even higher.
It costs 75,000 dust and 66 candies to take a Pokemon from Level 20 to Level 30, and if you were to take a Pokemon from Level 15 to Level 30 it would cost you 96,400 dust and 86 candies.
So you really have to weigh up if it’s worth it as it is more expensive. Most of the time I would say it’s not.
Hope this helps 