The mathematics achievement of a cohort of 955 students in 42 classes in six schools in London was followed over a four-year period, until they took their GCSEs in the summer of 2000. All six schools were regarded by Ofsted as providing a good standard of education, and all were involved in teacher-training partnerships with universities. Matched data on key stage 3 test scores and GCSE grades were available for 709 students, and these data were analysed in terms of the progress from key stage 3 test scores to GCSE grades. Although there were wide differences between schools in terms of overall GCSE grades, the average progress made by students was similar in all six schools. However, within each school, the progress made during key stage 4 varied greatly from set to set. Comparing students with the same key stage 3 scores, students placed in top sets averaged nearly half a GCSE grade higher than those in the other upper sets, who in turn averaged a third of a grade higher than those in lower sets, who in turn averaged around a third of a grade higher than those students placed in bottom sets. In the four schools that used formal whole-class teaching, the difference in GCSE grades between top and bottom sets, taking key stage 3 scores into account, ranged from just over 1 grade at GCSE to nearly 3 grades. At the schools using small-group and individualised teaching, the differences in value-added between sets were not significant. In two of the schools, a significant proportion of working class students were placed into lower sets than would be indicated by their key stage 3 test scores