Woke up the morning in the hotel knocked on the app had a random 324 ghastly floating about so nabbed him, has high stardust upgrade costs (1300) which I tend to associate with better Pokemon so a decent nab!
Stardust indicates the level range of the pokemon.
Each time you power them up, you actually level them up.
The maximum level of a pokemon is your trainer level+1 x 2
The curve indicates rough level relative to to max level, which is why when you level up as a trainer, a maxed pokemon can suddenly be powered up again.
Each level range have 4 levels in it.
When powering up, the next time the stardust cost increases, you are at the start of the next level range.
Caught pokemon are always an odd level, within the range that their stardust dictates.
Hatched pokemon have a max level of 42, wild can go up to 62.
Hatched pokemon are more likely to have better minimum IV values (apparently never below 10 for any stat 80% of the time)
Pokemon Level Ranges:
1-4: 200 stardust, 1 candy
5-8: 400 stardust, 1 candy
9-12: 600 stardust, 1 candy
13-16: 800 stardust, 1 candy
17-20: 1000 stardust, 1 candy
21-24: 1300 stardust, 2 candy
25-28: 1600 stardust, 2 candy
29-32: 1900 stardust, 2 candy
33-36: 2200 stardust, 2 candy
37-40: 2500 stardust, 2 candy
etc
So if you caught a pokemon that has a power up cost of 1300, they are either level 21 or 23, and you won't be certain until you power them up to the start of the next level range.