Data on trait-SNP associations can be leveraged to address questions of human adaptation, selection on trait-associated loci and selection in contemporary populations. We have used datasets from genome-wide association studies (GWAS) to address questions of (i) directional selection on loci associated with complex traits in Europe, on a global scale and in isolated populations, (ii) (apparent) stabilizing selection on multiple complex traits in a contemporary population. If mutations with a large effect on a trait are selected against (negative or purifying selection), irrespective of the direction of the effect, then the variance of effect sizes will be larger for SNPs with lower heterozygosity. We modelled association between heterozygosity and variance of effect size with a single (selection) parameter in a Bayesian analysis, and estimated it for tens of traits in a large dataset of more than 400,000 individuals with trait and GWAS information. Our results suggest that natural selection has acted pervasively on loci associated with human complex traits but that selection coefficients at individual loci are very small. Adaptation to extreme environments, including high altitude and populations separated by natural barriers (e.g. islands), appears driven by polygenic adaptation on standing variation in the ancestral population. In a contemporary population, we find evidence of phenotypic associations between lifetime reproductive success, a proxy for fitness, and multiple traits, including educational attainment and stature, consistent with both directional and stabilizing selection.